本文的最新内容,更新于2019-11-08。你们彻底不用担忧这篇文章会过期,由于随着 VS Code 的版本更新和插件更新,本文也会随之更新。javascript
本文的最新内容,也会在GitHub上同步更新,欢迎 star。css
VS Code 原本是前端人员专用,但因为它实在是太好用了,因而,各类开发方向的码农也正在用 VS Code 做为他们的主力编程工具。甚至是一些写做的同窗,也把 VS Code 做为 markdown 写做工具。html
写下这篇文章,是顺势而为。前端
VS Code 的全称是 Visual Studio Code,是一款开源的、免费的、跨平台的、高性能的、轻量级的代码编辑器。它在性能、语言支持、开源社区方面,都作的很不错。java
IDE
和编辑器
是有区别的:node
IDE :对代码会有较好的智能提示,同时侧重于工程项目,对项目的开发、调试工做有较好的图像化界面的支持,所以比较笨重。好比 Eclipse 的定位就是 IDE。git
编辑器:要相对轻量许多,侧重于文本的编辑。好比 Sublime Text 的定位就是编辑器。再好比 Windows 系统自带的「记事本」就是最简单的编辑器。github
须要注意的是,VS Code 的定位是编辑器
,而非IDE
。但 VS Code 又比通常的编辑器的功能要丰富许多。编程
VS Code 的使命,是让开发者在编辑器里拥有 IDE 那样的开发体验,好比代码的智能提示、语法检查、图形化的调试工具、插件扩展、版本管理等。json
VS Code 的源代码以MIT协议开源。
VS Code 自带了 TypeScript 和 Node.js 的支持。也就是说,你在书写 JS 和 TS 时,是自带智能提示的。
有一点你可能不知道,VS Code 这个客户端软件是用 js 语言开发出来的(具体请自行查阅关键字Electron
)。有句话说得好:能用 js 实现的功能,最终必定会用 js 实现。
前端小白最喜欢问的一个问题是:哪一个编辑器/IDE 好用?是VS Code仍是 WebStorm (WebStorm 实际上是 IntelliJ IDEA的定制版)?我来作个对比:
哪一个更酷:显然 VS Code 更酷。
内存占用状况:根据个人观察,VS Code是很占内存的(尤为是当你打开多个窗口的时候),但若是你的内存条够用的话,使用起来是不会有任何卡顿的感受的。相比之下,IDEA 不只很是占内存,并且还很是卡顿。
使用比例:固然是 VS Code 更胜一筹。先不说别的,我就拿数听说话,我目前所在的前端团队有100人左右,绝大部分前端同窗都在用 VS Code,妥妥的。
因此,若是你之后还问这个问题,那就真有些掉底了。
VS Code 的安装很简单,直接去官网下载安装包,而后双击安装便可。
上图中,直接点击 download 下载安装便可。
VS Code用得熟不熟,首先就看你是否会用快捷键。如下列出的内容,都是经常使用快捷键,而加粗部分的快捷键,使用频率则很是高。
掌握10%的内容,足矣应对90%的工做。熟练使用它们,你就已经很牛了。
Mac快捷键 | Win快捷键 | 做用 | 备注 |
---|---|---|---|
Cmd + ← | Fn + ← | 将光标定位到当前行的最左侧 | 很经常使用 |
Cmd + → | Fn + → | 将光标定位到当前行的最右侧 | 很经常使用 |
Cmd + ↑ | Ctrl + Home | 将光标定位到文章的第一行 | |
Cmd + ↓ | Ctrl + End | 将光标定位到文章的最后一行 |
根据上面的快捷键,咱们能够触类旁通。补充以下:
「方向键」:在单个字符之间移动光标
「option + 左右方向键」:在单词之间移动光标(很经常使用)。注:Win 快捷键是「Ctrl + 左右方向键」。
「Cmd + 左右方向键」:在整行之间移动光标(很经常使用)。注:Win 的快捷键是「Fn + 左右方向键」
「Cmd + Shift + \
」:在代码块之间移动光标。
Mac快捷键 | Win快捷键 | 做用 | 备注 |
---|---|---|---|
option + Backspace | Ctrl + Backspace | 删除光标以前的一个单词 | 英文有效,很经常使用 |
option + delete | Ctrl + delete | 删除光标以后的一个单词 | |
Cmd + delete | 删除光标以前的整行内容 | 很经常使用 | |
Cmd + delete | 删除光标以后的整行内容 | ||
Cmd + shift + K | Ctrl + Shift + K | 删除整行 | 「Cmd + X」的做用是剪切,但也能够删除整行 |
备注:上面所讲到的移动光标、删除操做的快捷键,在其余编辑器里,也是一样的操做。
Mac快捷键 | Win快捷键 | 做用 | 备注 |
---|---|---|---|
Cmd + Enter | Ctrl + Enter | 在当前行下面新增一行,而后跳至该行 | 即便光标不在行尾,也能快速向下插入一行 |
Option + ↑ | Alt + ↑ | 将代码向上移动 | 很经常使用 |
Option + ↓ | Alt + ↓ | 将代码向下移动 | 很经常使用 |
Option + Shift + ↑ | Alt + Shift + ↑ | 将代码向上复制 | 很经常使用 |
Option + Shift + ↓ | Alt + Shift + ↓ | 将代码向下复制 | 很经常使用 |
Mac快捷键 | Win快捷键 | 做用 | 备注 |
---|---|---|---|
Cmd + / | Ctrl + / | 添加单行注释 | 很经常使用 |
Option + Shift + F | Alt + shift + F | 代码格式化 | 很经常使用 |
Ctrl + J | 将多行代码合并为一行 | Win 用户可在命令面板搜索”合并行“ | |
Cmd + | |||
Cmd + U | Ctrl + U | 将光标的移动回退到上一个位置 | 撤销光标的移动和选择 |
Mac快捷键 | Win快捷键 | 做用 | 备注 |
---|---|---|---|
Ctrl + Tab | Ctrl + Tab | 在已经打开的文件之间进行跳转 | |
Cmd + P | Ctrl + P | 在当前的项目工程里,全局搜索文件 | 很经常使用 |
Ctrl + G | Ctrl + G | 跳转到指定行 | |
Cmd + Shift + O | Ctrl + shift + O | 在当前文件的各类方法之间进行跳转 |
Mac快捷键 | Win快捷键 | 做用 | 备注 |
---|---|---|---|
Cmd + F | Ctrl + F | 在当前文件中搜索,光标在搜索框里 | |
Cmd + G | F3 | 在当前文件中搜索,光标仍停留在编辑器里 | 很巧妙 |
Cmd + Shift + F | Ctrl + Shift +F | 全局搜索 | 很经常使用 |
技巧1:按住 「Option」键(windows 用户是按住「Alt」键) ,而后在页面中但愿中现光标的位置点击鼠标。
技巧2:选中某个文本,而后反复按住快捷键「 Cmd + D 」键(windows 用户是按住「Ctrl + D」键), 便可将全文中与光标当前所在位置的词相同的词逐一加入选择。
技巧3:选中一堆文本后,按住「Option + Shift + i」键(windows 用户是按住「Alt + Shift + I」键),既可在每一行的末尾都建立一个光标。
Mac快捷键 | Win快捷键 | 做用 | 备注 |
---|---|---|---|
cmd +/- | ctrl +/- | 将工做区放大/缩小(包括代码字体、左侧导航栏) | 在投影仪场景常常用到 |
Cmd + B | Ctrl + B | 显示/隐藏侧边栏 | 很实用 |
Cmd + \ |
Ctrl + \ |
建立多个编辑器 | 比较实用 |
Cmd + Option + 左右方向键 | Ctrl + Pagedown/Pageup | 在已经打开的文件之间进行切换 | 很是实用 |
Ctrl + Tab | Ctrl + Tab | 在已经打开的文件之间进行跳转 | 不如上面的快捷键实用 |
Cmd + J | Ctrl + J | 显示/隐藏控制台 |
按住快捷键「Cmd + Shift + P」,弹出命令面板,在命令面板中输入“快捷键”,能够进入快捷键的设置。
固然,你也能够选择菜单栏「偏好设置 --> 键盘快捷方式」,进入快捷键的设置:
你能够点击 VS Code 左下角的齿轮按钮,效果以下:
上图中,在展开的菜单中选择「键盘快捷方式」,就能够查看和修改全部的快捷键列表了:
Mac用户按住快捷键 Cmd+Shift+P
(Windows用户按住快捷键Ctrl+Shift+P
),能够打开命令面板。效果以下:
若是们须要修改一些设置项,能够经过「命令面板」来操做,效率会更高。这里列举一些。
在命令面板输入“字体”,能够进行字体的设置,效果以下:
固然,你也能够在菜单栏,选择「首选项-设置-经常使用设置」,在这个设置项里修改字体大小。
在命令面板输入“快捷键”,就能够进入快捷键的设置。
选中文本后,在命令面板中输入transfrom
,就能够修改文本的大小写了。
(1)输入快捷键「Cmd + Shift + P 」,选择install code command
:
(2)使用命令行:
code
命令:启动 VS Code 软件
code pathName/fileName
命令:经过 VS Code 软件打开指定目录/指定文件。
Mac用户按住快捷键 Cmd+Shift+P
(Windows用户按住快捷键Ctrl+Shift+P
),打开命令面板。
在命令面板中,输入Configure Display Language
,选择Install additional languages
,而后安装插件Chinese (Simplified) Language Pack for Visual Studio Code
便可。
或者,咱们能够直接安装插件Chinese (Simplified) Language Pack for Visual Studio Code
,是同样的。
安装完成后,重启VS Code。
打开 VS Code 的设置项,选择「用户设置 -> 工做台 -> 导航路径」,以下图所示:
上图中,将红框部分打钩便可。
设置成功后,咱们就能够查看到当前文件的「层级结构」,很是方便。以下图所示:
VS Code 默认显示代码的行号。你能够在设置项里搜索 editor.lineNumbers
修改设置,配置项以下:
我建议保留这个设置项,无需修改。
VS Code 会在代码的右侧,默认显示缩略图。你能够在设置项里搜索 editor.minimap
进行设置,配置项以下:
当咱们把光标放在某一行时,这一行的背景色并无发生变化。若是想高亮显示当前行的代码,须要设置两步:
(1)在设置项里搜索editor.renderLineHighlight
,将选项值设置为all
或者line
。
(2)在设置项里增长以下内容:
"workbench.colorCustomizations": {
"editor.lineHighlightBackground": "#00000090",
"editor.lineHighlightBorder": "#00000000"
}
复制代码
上面两行代码的意思是,修改光标所在行的背景色(背景色设置为全黑,透明度90%),修改光标所在行的边框色。
方式一:
改完代码后,默认不会自动保存。你能够在设置项里搜索files.autoSave
,修改配置项以下:
上图中,咱们将配置项修改成onFocusChange
以后,那么,当光标离开该文件后,这个文件就会自动保存了。很是方便。
方式二:
固然,你也能够直接在菜单栏选择「文件-自动保存」。勾选年后,当你写完代码后,文件会当即实时保存。
保存代码后,默认不会当即进行代码的格式化。你能够在设置项里搜索editor.formatOnSave
查看该配置项:
我以为这个配置项保持默认就好,不用打钩。
VS Code 会根据你所打开的文件来决定该使用空格仍是制表。也就是说,若是你的项目中使用的都是制表符,那么,当你在写新的代码时,按下tab 键后,编辑器就会识别成制表符。
常见的设置项以下:
当咱们按下快捷键「Cmd + N」新建文件时,VS Code 默认没法识别这个文件究竟是什么类型的,所以也就没法识别相应的语法高亮。若是你想修改默认的文件类型,能够在设置项里搜索files.defaultLanguage
,设置项以下:
上图中的红框部分,填入你指望的默认文件类型。我填的是html
类型,你也能够填写成 javascript
或者 markdown
,或者其余的语言类型。
当咱们在 VS Code 中删除文件时,默认会弹出确认框。若是你想修改设置,能够在设置项里搜索xplorer.confirmDelete
。截图以下:
我建议这个设置项保持默认的打钩就好,不用修改。删除文件前的弹窗提示,也是为了安全考虑,万一手贱不当心删了呢?
VS Code 默认支持对比两个文件的内容。选中两个文件,而后右键选择「将已选项进行比较」便可,效果以下:
VS Code自带的对比功能并不够强大,咱们能够安装插件compareit
,进行更丰富的对比。好比说,安装完插件compareit
以后,咱们能够将「当前文件」与「剪切板」里的内容进行对比:
好比我已经在a.js
文件里调用了 foo()
函数。那么,若是我想知道foo()
函数在其余文件中是否也被调用了,该怎么作呢?
作法以下:在 a.js
文件里,选中foo()
函数(或者将光标放置在foo()
函数上),而后按住快捷键「Shift + F12」,就能看到 foo()
函数在哪些地方被调用了,比较实用。
在当前行的位置,鼠标三击,能够选中当前行。
用鼠标单击文件的行号,能够选中当前行。
在某个行号的位置,上下移动鼠标,能够选中多行。
重构分不少种,咱们来举几个例子。
一、命名重构:
当咱们尝试去修改某个函数(或者变量名)时,咱们能够把光标放在上面,而后按下「F2」键,那么,这个函数(或者变量名)出现的地方都会被修改。
二、方法重构:
选中某一段代码,这个时候,代码的左侧会出现一个「灯泡图标」,点击这个图标,就能够把这段代码提取为一个单独的函数。
在上面的快捷键列表中,咱们已经知道以下快捷键:
Cmd + F(Win用户是Ctrl + F):在当前文件中搜索,光标在搜索框里
Cmd + G(Win用户是 F3):在当前文件中搜索,光标仍停留在编辑器里
另外,你可能会注意到,搜索框里有不少按钮,每一个按钮都对应着不一样的功能,以下图所示:
上图中,你能够经过「Tab」键和「Shift + Tab」键在输入框和替换框之间进行切换。
「在选定内容中查找」这个功能仍是比较实用的。你也能够在设置项里搜索 editor.find.autoFindInSelection
,勾选该设置项后,那么,当你选中指定内容后,而后按住「Cmd + F」,就能够自动只在这些内容里进行查找。该设置项以下图所示:
在上面的快捷键列表中,咱们已经知道以下快捷键:
上图中,你能够点击红框部分,展开更多的配置项。
VS Code 自带了 Git 版本管理,以下图所示:
上图中,咱们能够在这里进行常见的git 命令操做。若是你还不熟悉 Git版本管理,先去补补课吧。
与此同时,我建议安装插件GitLens
,它是 VS Code 中我最推荐的一个插件,简直是Git神器,码农必备。
咱们在上面的设置项里修改字体大小后,仅仅只是修改了代码的字体大小。
若是你想要缩放整个工做区(包括代码的字体、左侧导航栏的字体等),能够按下快捷键「cmd +/-」。windows用户是按下「ctrl +/-」
当咱们在给别人演示代码的时候,这一招十分管用。
若是你想恢复默认的工做区大小,能够在命令面板输入重置缩放
(英文是reset zoom
)
咱们能够在新建文件夹的时候,若是直接输入aa/bb/cc
,好比:
那么,就能够建立多层子文件夹,效果以下:
若是你发现项目的根目录下有一个.vscode
文件夹,说明这个文件夹表明的是当前项目的配置。
这个文件夹里可能包含如下集中文件:
settings.json
:工做空间设置。只针对当前项目有效。好比说,我能够在这里面要求当前项目的代码统一使用制表符,而不须要要求每一位码农去修改各自的配置文件。
sftp.json
:ftp文件传输的配置。
咱们能够按下「Ctrl + `」打开 VS Code 自带的终端。我认为内置终端并无那么好用,我更建议你使用第三方的终端 item2。
VS Code自带 markdown 语法高亮,写完 md 文件以后,你能够点击右上角的按钮进行预览,以下图所示:
你也能够在控制面板输入Markdown: 打开预览
,直接全屏预览 markdown文件。
Emmet
能够极大的提升 html 和 css 的编写效率,它提供了一种很是简练的语法规则。
举个例子,咱们在编辑器中输入缩写代码:ul>li*6
,而后按下 Tab 键,便可获得以下代码片断:
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
复制代码
VS Code 默认支持 Emmet。更多 Emmet 语法规则,请自行查阅。
VS Code 有一个很强大的功能就是支持插件扩展。
上图中,点击红框部分,便可在输入框里,查找你想要的插件名,而后进行安装。
我来列举几个常见的插件,这些插件都很实用。
我强烈建议你安装插件GitLens
,它是 VS Code 中我最推荐的一个插件,简直是Git神器,码农必备。若是你不知道,那真是out了。
GitLens 在 Git 管理上有不少强大的功能,好比:
将光标放置在代码的当前行,能够看到这样代码的提交者是谁,以及提交时间。这一点,是 GitLens 最便捷的功能。
查看某个 commit 的代码改动记录
查看不一样的分支
能够将两个 commit 进行代码对比
甚至能够将两个 branch 分支进行总体的代码对比。这一点,简直是 GitLens 最强大的功能。当咱们在不一样分支review代码的时候,就能够用到这一招。
Bracket Pair Colorizer 2
插件:以不一样颜色显示成对的括号,并用连线标注括号范围。
另外,还有个Rainbow Brackets
插件,也能够突出显示成对的括号。
若是你须要将本地文件经过 ftp 的形式上传到局域网的服务器,能够安装sftp
这个插件,很好用。在公司会常常用到。
步骤以下:
(1)安装插件sftp
。
(2)配置 sftp.json
文件。 插件安装完成后,输入快捷键「cmd+shift+P」弹出命令面板,而后输入sftp:config
,回车,当前工程的.vscode
文件夹下就会自动生成一个sftp.json
文件,咱们须要在这个文件里配置的内容能够是:
host
:服务器的IP地址
username
:工做站本身的用户名
privateKeyPath
:存放在本地的已配置好的用于登陆工做站的密钥文件(也能够是ppk文件)
remotePath
:工做站上与本地工程同步的文件夹路径,须要和本地工程文件根目录同名,且在使用sftp上传文件以前,要手动在工做站上mkdir生成这个根目录
ignore
:指定在使用sftp: sync to remote的时候忽略的文件及文件夹,注意每一行后面有逗号,最后一行没有逗号
举例以下:(注意,其中的注释须要去掉)
{
"host": "192.168.xxx.xxx", //服务器ip
"port": 22, //端口,sftp模式是22
"username": "", //用户名
"password": "", //密码
"protocol": "sftp", //模式
"agent": null,
"privateKeyPath": null,
"passphrase": null,
"passive": false,
"interactiveAuth": false,
"remotePath": "/root/node/build/", //服务器上的文件地址
"context": "./server/build", //本地的文件地址
"uploadOnSave": true, //监听保存并上传
"syncMode": "update",
"watcher": { //监听外部文件
"files": false, //外部文件的绝对路径
"autoUpload": false,
"autoDelete": false
},
"ignore": [ //忽略项
"**/.vscode/**",
"**/.git/**",
"**/.DS_Store"
]
}
复制代码
(3)在 VS Code的当前文件里,选择「右键 -> upload」,就能够将本地的代码上传到 指定的 ftp 服务器上(也就是在上方 host
中配置的服务器ip)。
咱们还能够选择「右键 -> Diff with Remote」,就能够将本地的代码和 ftp 服务器上的代码作对比。
工做中,咱们常常会来回切换多个项目,每次都要找到对应项目的目录再打开,比较麻烦。Project Manager插件能够解决这样的烦恼,它提供了专门的视图来展现你的项目,咱们能够把经常使用的项目保存在这里,须要时一键切换,十分方便。
安装open in browser
插件后,在 HTML 文件中「右键选择 --> Open in Default Browser」,便可在浏览器中预览网页。
VSCode自带的高亮显示,实在是不够显眼。用插件支持一下吧。
所用了这个插件以后,VS Code自带的高亮就能够关掉了:
在用户设置里添加"editor.selectionHighlight": false
便可。
参考连接:vscode 选中后相同内容高亮插件推荐
css 颜色管理。
写代码过程当中,忽然发现一个Bug,可是又不想停下来手中的活,以避免打断思路,怎么办?按照代码规范,咱们通常是在代码中加个TODO注释。好比:(注意,必定要写成大写TODO
,而不是小写的todo
)
//TODO:这里有个bug,我一下子再收拾你
复制代码
或者:
//FIXME:我也不知道为啥, but it works only that way.
复制代码
安装了插件 TODO Highlight
以后,按住「Cmd + Shift + P」打开命令面板,输入「Todohighlist」,选择相关的命令,咱们就能够看到一个 todoList 的清单。
Code Time
插件:记录编程时间,统计代码行数。摸鱼必备。
安装该插件后,VS Code 底部的状态栏右下角能够看到时间统计。点击那个位置以后,选择「Code Time Dashboard」,便可查看统计结果。
做用:多台设备之间,同步 VS Code 配置。经过登陆 GitHub 帐号来使用这个同步工具。
做用:多台设备之间,同步 VS Code 配置。
indent-rainbow
插件:突出显示缩进。
安装完成后,效果以下图所示:
不要惊讶,RemoteHub 和 GitLens 是同一个做者开发出来的。
RemoteHub
插件的做用是:能够在本地查看 GitHub 网站上的代码,而不须要将代码下载到本地。
这个插件目前使用的人还很少,赶忙安装起来尝尝鲜吧。
Live Share
这个神奇的插件是由微软官方出品,它的做用是:实时编码分享。也就是说,它能够实现你和你的同伴一块儿写代码。这绝对就是结对编程的神器啊。
安装方式:
打开插件管理,搜索“live share”,安装。安装后重启 VS Code,在左侧会多出一个按钮:
上图中,点击红框部分,登陆后就能够分享你的工做空间了。
css颜色高亮显示。
SynthWave '84
若是你有什么推荐的 VS Code 插件,欢迎留言。
同时,你也能够关注我在 GitHub 上的 前端入门项目,超级详细和真诚。