VSCode(Visual Studio Code)是一款开源、跨平台、轻量级的代码编辑器,具有非常丰富的插件生态。他本身就是JavaScript + Electron ( /ɪˈlektrɒn/电子)代码开发的。官方下载地址:https://code.visualstudio.com/,支持绿色无安装。


01、常用快捷键

工具快捷键 描述
Ctrl + Shift + P 显示命令面板
Ctrl + B 显示/隐藏左侧边栏
Ctrl + J 显示/隐藏下方控制台/终端
Ctrl + \\ 拆分为多个编辑器
ctrl + +ctrl + - 将工作区放大/缩小(包括代码字体、左侧导航栏)
Ctrl + Tab Ctrl + Shift + Tab 切换打开的多个文档
编码快捷键 描述
Ctrl + 左右方向键 按照单词移动光标
Alt + Shift + 左右方向键 按照单词增加、减少 选中内容
Ctrl + HomeCtrl + End 移动到第一行、最后一行
Cmd + C/V/X 复制、粘贴、剪切,如无选中则操作整行,鼠标三击也可以选中整行
Alt + ↑Alt + ↓ 移动代码向上、向下
Alt + Shift + ↑、Alt + Shift + 复制 代码向上、向下一行
Alt + 鼠标连续点击任意位置 所选位置出现多个光标,可以同时输入
Ctrl + D(一次或多次) 光标所在单词+和他相同的都会被选中并出现多个光标,可以同时修改
Ctrl + / 注释单行代码,自定义改成了Alt + shift + C,默认的两个键太远了
Alt + shift + F 格式化代码
Ctrl+L+L(自定义添加的,默认无快捷键) 合并选中行为一行,可以搜索指令“合并行”,然后给他添加一个快捷键

多个光标同时编辑还是挺方便的:(Alt + 鼠标连续点击任意位置、Ctrl + D)


02、常用配置

用户区与工作区

  • 用户:设置内容全局生效
  • 工作区:只针对当前工作目录(项目)生效。工作区设置会优先生效,适用于团队协作场景。设置文件保存在当前项目根目录的.vscode/settings.json中,可以被提交到Git仓库,方便共享给项目组的其他成员。

中文语言

在扩展中搜索“Chinese”安装中文语言包: Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code,重启生效。

字体样式

设置中搜索“Font”:

  • 字体大小15px,根据分辨率设置合适大小。
  • 字体:编程字体推荐等宽字体,在加上一个显示中文的,Consolas,"Microsoft YaHei"

"editor.fontFamily": "Fira Code,Consolas,\"Microsoft YaHei\"",

皮肤

  • 文件图标美化插件:vscode-icons
  • 比较不错深色主题皮肤插件(代码着色+VSCode皮肤):One Dark Pro

支持自定义配置:settings.json文件

"workbench.colorTheme": "One Dark Pro",
"workbench.colorCustomizations":{
"tab.activeBackground": "#2f3e5e",
"activityBar.background": "#282c34",
"sideBar.background": "#383c44"
}

03、编程字体

等宽编程字体,个人现在用的字体设置:JetBrains Mono,Consolas,"Microsoft YaHei"

Fira Code:免费的编程连字等宽字体,效果不错!FiraCode-Regular.zip

Fira Code,Consolas,"Microsoft YaHei"

JetBrains Mono :JetBrains 公司专为开发者打造的免费开源编程字体。JetBrainsMono-Regular.zip

JetBrains Mono,Consolas,"Microsoft YaHei"

Consolas :Windows自带字体,VS默认编程字体。Consolas是一套等宽字体的字型,属无衬线字体,由Lucas de Groot设计。


04、Emmet快速输入

Emmet是一个用于快速输入HTML、CSS代码的语法,可以用简单的语法快速生成HTML、CSS代码,语法形式类似CSS。VSCode中已经内置了Emmet的语法了,在html、css中使用,Tab键或回车即可。(Emmet /ˈɛmɪt/ 埃米特,没啥特别含义)

HTML 的Emmet 说明/示例
html:5 快速生成HTML文档的基本结构,包括html、head、meta、body标签
标签名 div p: <p></p>,div:<div></div>
标签.类名p.className div.head:<div class="head"></div>
标签#id div#head:<div id="head"></div>
标签 { 标签内容 } h1{标题}:<h1>标题</h1>
标签 [属性=value] a[href='#']{标签} :<a href="#">标签</a>,可以只有属性
标签>嵌套子元素标签 li>span{item}:<li><span>item</span></li>
标签+兄弟元素标签 h1+p+p:<h1></h1> <p></p> <p></p>
括号分组( emmet ) (p[class='sel'])>h4:<p class="sel"></p> <h4></h4>
标签*数量 重复生成n个,li{item}*3:<li>item</li> <li>item</li> <li>item</li>
$递增计数 li{item$}*2:<li>item1</li> <li>item2</li>,两位数就两个$$

CSS 的Emmet 都是属性简写+值+单位(默认px),记住常用的几个就可以了
m10 m10:margin: 10px; , mt10:margin-top: 10px;
p10、p10%、p10e p10:padding: 10px,p10%:padding: 10%;,p10e:padding: 10em;
w100、h100 w100:width: 100px;,h100:height: 100px;
bd bd:border: 1px solid #000;
c#001 c#001:color: #001;
+连接多个属性 m5+p10+lh32:margin: 5px; padding: 10px; line-height: 32;
其他的各种模糊匹配 bg:background: #000; ,bgi:background-image: url();
bx:box-sizing: border-box;,db:display: block;

上面的Emmet可以组合使用,就能快速输入HTML、CSS代码。


05、VSCode插件

  • IntelliCode:代码智能提示插件,支持多种语言。
  • Live Preview:启动一个本地服务器,页面运行预览。
  • Auto Rename Tag:自动闭合、重命名配对的标签。
  • Vetur : Vue开发的必备插件,核心功能:代码高亮、代码片段、代码格式化检查。Vue3升级为Volar插件。
  • Draw.io Integration:来自很受欢迎的开源画图组件 Draw.io,可以绘制各种流程图、UML图、原型图,功能非常丰富,可以本地画图体验非常酷。
  • 代码格式化:Prettier,便于统一代码风格,tab宽度、换行规则等。
  • 代码检测:ESLint,代码合法性检测。
  • Markdown All in One : 多合一的 Markdown 插件:自动补全,格式化,数学公式支持等功能以及丰富的快捷键。
  • MySQL : MySQL 管理工具。
  • REST Client :REST API 的测试开发利器。
  • LeetCode :Offer 收割利器,在 VS Code 中轻松刷题。

️版权申明:版权所有@安木夕,本文内容仅供学习,欢迎指正、交流,转载请注明出处!原文编辑地址-语雀

VSCode编辑器极简使用入门的更多相关文章

  1. MongoDB 极简实践入门

    原作者StevenSLXie; 原链接(https://github.com/StevenSLXie/Tutorials-for-Web-Developers/blob/master/MongoDB% ...

  2. Underscore源码阅读极简版入门

    看了网上的一些资料,发现大家都写得太复杂,让新手难以入门.于是写了这个极简版的Underscore源码阅读. 源码: https://github.com/hanzichi/underscore-an ...

  3. Spring Boot2 系列教程(二十七)Nginx 极简扫盲入门

    上篇文章和大家聊了 Spring Session 实现 Session 共享的问题,有的小伙伴看了后表示对 Nginx 还是很懵,因此有了这篇文章,算是一个 Nginx 扫盲入门吧! 基本介绍 Ngi ...

  4. Mongodb极简实践

    MongoDB 极简实践入门 1. 为什么用MongoDB? 传统的计算机应用大多使用关系型数据库来存储数据,比如大家可能熟悉的MySql, Sqlite等等,它的特点是数据以表格(table)的形式 ...

  5. Git 极简入门教程学习笔记

    Git 极简入门教程  http://rogerdudler.github.io/git-guide/index.zh.html 测试用 https://github.com/xxx/BrnShop. ...

  6. Nginx 极简教程(快速入门)

    作者:dunwu github.com/dunwu/nginx-tutorial 推荐阅读(点击即可跳转阅读) 1. SpringBoot内容聚合 2. 面试题内容聚合 3. 设计模式内容聚合 4.  ...

  7. Vue.js 入门:从零开始做一个极简 To-Do 应用

    Vue.js 入门:从零开始做一个极简 To-Do 应用 写作时间:2019-12-10版本信息:Vue.js 2.6.10官网文档:https://cn.vuejs.org/ 前言  学习 Vue ...

  8. .Net Core in Docker极简入门(下篇)

    Tips:本篇已加入系列文章阅读目录,可点击查看更多相关文章. 目录 前言 开始 Docker-Compose 代码修改 yml file up & down 镜像仓库 最后 前言 上一篇[. ...

  9. 极简 Node.js 入门 - Node.js 是什么、性能有优势?

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

  10. 极简 Node.js 入门 - 1.2 模块系统

    极简 Node.js 入门系列教程:https://www.yuque.com/sunluyong/node 本文更佳阅读体验:https://www.yuque.com/sunluyong/node ...

随机推荐

  1. PAT (Basic Level) Practice 1008 数组元素循环右移问题 分数 20

    一个数组A中存有N(>0)个整数,在不允许使用另外数组的前提下,将每个整数循环向右移M(≥0)个位置,即将A中的数据由(A0​A1​⋯AN−1​)变换为(AN−M​⋯AN−1​A0​A1​⋯AN ...

  2. 微信小程序实现与登录

    一.小程序的实现原理 在小程序中,渲染层和逻辑层是分开的,双线程同时运行,渲染层和逻辑层这两个通信主体之间的通讯以及通讯主体与第三方服务器之间的通信,都是通过微信客户端进行转发.小程序启动运行两种情况 ...

  3. C语言经典编程100题

    程序1] 题目:古典问题:有一对兔子,从出生后第3个月起每个月都生一对兔子,小兔子长到第三个月 后每个月又生一对兔子,假如兔子都不死,问每个月的兔子总数为多少? 1.程序分析: 兔子的规律为数列1,1 ...

  4. 知识图谱顶会论文(IJCAI-2022) TEMP:多跳推理的类型感知嵌入

    IJCAI-TEMP:知识图谱上多跳推理的类型感知嵌入 论文地址: Type-aware Embeddings for Multi-Hop Reasoning over Knowledge Graph ...

  5. eDP接口简介

    1. eDP背景介绍   随着显示分辨率的越来越高,传统的VGA.DVI等接口逐渐不能满足人们的视觉需求. 随后就产生了以HDMI.DisplayPort为代表的新型数字接口,外部接口方面HDMI占据 ...

  6. 19.drf response及源码分析

    源代码位于:response.py   REST framework 提供一个 Response 类来支持 HTTP内容协商,该类允许返回可以呈现为多种类型的内容,具体取决于客户端的请求.   这个 ...

  7. Java 动态代理原理图解 (附:2种实现方式详细对比)

    ​ 动态代理在 Java 中有着广泛的应用,例如:Spring AOP 面向切面编程,Hibernate 数据查询.以及 RPC Dubbo 远程调用等,都有非常多的实际应用@mikechen 目录 ...

  8. 微信支付v3接口的 官方 Java SDK

    啰嗦几句:微信支付v3版接口麻烦吗?在对接微信支付v3接口时,本来是一件很简单的事情,其实微信支付v3接口并不是很复杂,但是微信团队的管理很混乱,给我们开发者带来了巨大的麻烦. 微信支付v3版接口对接 ...

  9. .Net 7里的函数.Ctor和.CCtor是干啥用的呢?你知道吗

    楔子 有小伙伴被面试官问到这个问题,本篇彻底解析下这个问题. 为了彻底点,注意本篇是最底层的.Net 7 RC CLR运行模型(汇编)为基础进行全局剖析,局部业务分析. 如有疏漏,请斧正. 目的非手段 ...

  10. 【lwip】11-UDP协议&源码分析

    目录 前言 11.1 传输层说明 11.2 UDP协议简介 11.3 UDP特点 11.4 UDP端口号 11.5 UDP报文 11.6 UDP伪首部和校验和 11.7 wireshark报文分析 1 ...