Web/00-前端工具/01-VS Code的使用.md

1008 lines
46 KiB
JavaScript
Raw Normal View History

2019-03-29 21:48:54 +08:00
## 前言
2020-06-19 20:06:11 +08:00
> 文章标题第一次使用 VS Code 时你应该知道的一切配置本文的最新内容更新于 2020-06-19大家完全不用担心这篇文章会过时因为随着 VS Code 的版本更新和插件更新本文也会随之更新
2019-11-08 18:51:25 +08:00
> 本文的最新内容也会在[GitHub](https://github.com/qianguyihao/Web/blob/master/00-%E5%89%8D%E7%AB%AF%E5%B7%A5%E5%85%B7/01-VS%20Code%E7%9A%84%E4%BD%BF%E7%94%A8.md)上同步更新,欢迎 star。
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
VS Code 软件实在是太酷太好用了越来越多的新生代互联网青年正在使用它
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
前端男神**尤雨溪**大大这样评价 VS Code
![](http://img.smyhvae.com/20200619_0133.png)
2020-06-19 20:06:11 +08:00
有一点你可能会感到惊讶VS Code 这款软件本身是用 JavaScript 语言编写的具体请自行查阅基于 JS PC 客户端开发框架 `Electron`Jeff Atwood 2007 年提出了著名的 Atwood 定律
2020-06-19 11:15:22 +08:00
> **任何能够用 JavaScript 实现的应用系统最终都必将用 JavaScript 实现**
Jeff Atwood 这个人是谁不重要他是 Stack Overflow 网站的联合创始人重要的是这条定律
前端目前是处在春秋战国时代各路英雄豪杰成为后浪各种框架工具层出不穷VS Code 软件无疑是大前端时代最骄傲的工具
如果你是做前端开发JavaScript 编程语言为主则完全可以将 VS Code 作为**主力开发工具**这款软件是为前端同学量身定制的
2020-05-23 21:48:29 +08:00
如果你是做其他语言方向的开发并且不需要太复杂的集成开发环境那么你可以把 VS Code 作为**代码编辑器**来使用纵享丝滑
2020-06-19 11:15:22 +08:00
甚至是一些写文档写作的同学也经常把 VS Code 作为 markdown **写作工具**毫无违和感
2020-05-30 23:24:59 +08:00
2020-06-19 11:15:22 +08:00
退而求其次即便你不属于以上任何范畴你还可以把 VS Code 当作最简单的**文本编辑器**来使用完胜 Windows 系统自带的记事本
2020-05-30 23:24:59 +08:00
写下这篇文章是顺势而为
2020-05-23 21:48:29 +08:00
2020-05-23 17:44:13 +08:00
## VS Code 的介绍
2019-03-29 21:48:54 +08:00
2020-06-18 23:40:12 +08:00
VS Code 的全称是 Visual Studio Code是一款开源的免费的跨平台的高性能的轻量级的代码编辑器它在性能语言支持开源社区方面都做得很不错
2019-03-29 21:48:54 +08:00
2020-06-19 20:06:11 +08:00
微软有两种软件一种是 VS Code一种是其他软件
2020-06-19 11:15:22 +08:00
### IDE 编辑器的对比
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
IDE 和编辑器是有区别的
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
- **IDE**Integrated Development Environment集成开发环境对代码有较好的智能提示和相互跳转同时侧重于工程项目对项目的开发调试工作有较好的图像化界面的支持因此比较笨重比如 Eclipse 的定位就是 IDE
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
- **编辑器**要相对轻量许多侧重于文本的编辑比如 Sublime Text 的定位就是编辑器再比如 Windows 系统自带的记事本就是最简单的编辑器
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
需要注意的是VS Code 的定位是**编辑器**而非 IDE VS Code 又比一般的编辑器的功能要丰富许多可以这样理解VS Code 的体量是介于编辑器和 IDE 之间
2019-03-29 21:48:54 +08:00
2020-06-18 23:40:12 +08:00
### VS Code 的特点
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
- VS Code 的使命是让开发者在编辑器里拥有 IDE 那样的开发体验比如代码的智能提示语法检查图形化的调试工具插件扩展版本管理等
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
- 跨平台支持 MacOSWindows Linux 等多个平台
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
- VS Code 的源代码以 MIT 协议开源
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
- 支持第三方插件功能强大生态系统完善
2019-03-29 21:48:54 +08:00
2020-06-19 20:06:11 +08:00
- VS Code 自带了 JavaScriptTypeScript Node.js 的支持也就是说你在书写 JS TS 是自带智能提示的当然其他的语言你可以安装相应的**扩展包**插件也会有智能提示
2019-04-13 17:28:47 +08:00
2020-05-23 21:48:29 +08:00
### 前端利器之争 VS Code WebStorm
2019-04-18 20:59:31 +08:00
2020-05-23 21:48:29 +08:00
前端小白最喜欢问的一个问题是哪个编辑器/IDE 好用 VS Code 还是 WebStorm WebStorm 其实是 IntelliJ IDEA 的定制版我来做个对比
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
- **哪个更酷**显然 VS Code 更酷
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
- **内存占用情况**根据我的观察VS Code 是很占内存的尤其是当你打开多个窗口的时候但如果你的内存条够用使用起来是不会有任何卡顿的感觉的相比之下IntelliJ IDEA 不仅非常占内存而且还非常卡顿如果你想换个既轻量级又不占内存的编辑器最好还是使用Sublime Text编辑器
2019-03-29 21:48:54 +08:00
2020-06-19 20:06:11 +08:00
- **使用比例**当然是 VS Code 更胜一筹先不说别的我就拿数据说话我目前所在的研发团队有 200 人左右120个后台80个前端他们绝大部分人都在用 VS Code 编码妥妥的
2019-04-18 20:59:31 +08:00
所以如果你以后还问这个问题那就真有些掉底了
2019-03-29 21:48:54 +08:00
2019-11-08 15:54:49 +08:00
### VS Code 的安装
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
- VS Code 官网<https://code.visualstudio.com>
2019-03-29 21:48:54 +08:00
2019-04-05 14:32:05 +08:00
VS Code 的安装很简单直接去官网下载安装包然后双击安装即可
2019-03-29 21:48:54 +08:00
2020-06-18 23:40:12 +08:00
![](http://img.smyhvae.com/20190313_1750_3.png)
2019-03-29 21:48:54 +08:00
2020-06-18 23:40:12 +08:00
上图中直接点击 download一键下载安装即可
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
## 崭露锋芒VS Code 快捷键
2019-03-29 21:48:54 +08:00
2020-05-23 21:48:29 +08:00
VS Code 用得熟不熟首先就看你是否会用快捷键以下列出的内容都是常用快捷键而加粗部分的快捷键使用频率则非常高
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
任何工具掌握 20%的技能足矣应对 80% 的工作既然如此你可能会问那就只保留 20% 的特性不久可以满足 80%的用户了吗
2019-04-18 21:19:15 +08:00
2020-06-19 11:15:22 +08:00
但我想说的是**那从来都不是同样的 20%**每个人都会用到不同的功能
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
掌握下面这些高频核心快捷键你和你的工具足矣露出锋芒
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
### 1工作区快捷键
2019-03-29 21:48:54 +08:00
2020-06-18 23:40:12 +08:00
| Mac 快捷键 | Win 快捷键 | 作用 | 备注 |
| :--------------------- | :----------------------- | :-------------------------------------------- | :------------------- |
| **Cmd + Shift + P** | **Ctrl + Shift + P**F1 | 显示命令面板 | |
| **Cmd + B** | **Ctrl + B** | 显示/隐藏侧边栏 | 很实用 |
| `Cmd + \` | `Ctrl + \` | **创建多个编辑器** | 【重要】抄代码利器 |
| **Cmd + 12** | **Ctrl + 12** | 聚焦到第 1 2 个编辑器 | 同上重要 |
| **cmd +/-** | **ctrl +/-** | 将工作区放大/缩小包括代码字体左侧导航栏 | 在投影仪场景经常用到 |
| Cmd + J | Ctrl + J | 显示/隐藏控制台 | |
| **Cmd + Shift + N** | **Ctrl + Shift + N** | 重新开一个软件的窗口 | 很常用 |
| Cmd + Shift + W | Ctrl + Shift + W | 关闭软件的当前窗口 | |
| Cmd + N | Ctrl + N | 新建文件 | |
| Cmd + W | Ctrl + W | 关闭当前文件 | |
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
### 2跳转操作
2019-03-29 21:48:54 +08:00
2020-06-19 20:06:11 +08:00
| Mac 快捷键 | Win 快捷键 | 作用 | 备注 |
| :----------------------------------------------------------------- | :--------------------- | :----------------------------------- | :----------------- |
2020-06-19 11:15:22 +08:00
| Cmd + ` | 没有 | 在同一个软件的**多个工作区**之间切换 | 使用很频繁 |
2020-06-19 20:06:11 +08:00
| **Cmd + Option + 左右方向键** | Ctrl + Pagedown/Pageup | 在已经打开的**多个文件**之间进行切换 | 非常实用 |
| Ctrl + Tab | Ctrl + Tab | 在已经打开的多个文件之间进行跳转 | 不如上面的快捷键快 |
| Cmd + Shift + O | Ctrl + shift + O | 在当前文件的各种**方法之间**进行跳转 | |
| Ctrl + G | Ctrl + G | 跳转到指定行 | |
| `Cmd+Shift+\` | `Ctrl+Shift+\` | 跳转到匹配的括号 | |
2020-05-23 21:48:29 +08:00
2020-06-19 11:15:22 +08:00
### 3移动光标
2020-05-23 21:48:29 +08:00
| Mac 快捷键 | Win 快捷键 | 作用 | 备注 |
| :---------------------- | :-------------------- | :------------------------- | :--------- |
| 方向键 | 方向键 | **单个字符**之间移动光标 | 大家都知道 |
| **option + 左右方向键** | **Ctrl + 左右方向键** | **单词**之间移动光标 | 很常用 |
| **Cmd + 左右方向键** | **Fn + 左右方向键** | **整行**之间移动光标 | 很常用 |
| Cmd + | Fn + Win + | 将光标定位到当前行的最左侧 | 很常用 |
| Cmd + | Fn + Win + | 将光标定位到当前行的最右侧 | 很常用 |
| Cmd + | Ctrl + Home | 将光标定位到文章的第一行 | |
| Cmd + | Ctrl + End | 将光标定位到文章的最后一行 | |
| Cmd + Shift + \ | | **代码块**之间移动光标 | |
2020-06-19 11:15:22 +08:00
### 4编辑操作
2019-04-14 19:06:41 +08:00
2020-05-23 21:48:29 +08:00
| Mac 快捷键 | Win 快捷键 | 作用 | 备注 |
| :--------------------- | :------------------ | :----------------------------------- | :------------------------------------- |
| **Cmd + Enter** | **Ctrl + Enter** | 在当前行的下方新增一行然后跳至该行 | 即使光标不在行尾也能快速向下插入一行 |
| Cmd+Shift+Enter | Ctrl+Shift+Enter | 在当前行的上方新增一行然后跳至该行 | 即使光标不在行尾也能快速向上插入一行 |
| **Option + ** | **Alt + ** | 将代码向上移动 | 很常用 |
| **Option + ** | **Alt + ** | 将代码向下移动 | 很常用 |
| Option + Shift + | Alt + Shift + | 将代码向上复制 | |
| **Option + Shift + ** | **Alt + Shift + ** | 将代码向下复制 | 写重复代码的利器 |
2019-04-14 19:06:41 +08:00
2020-06-19 11:15:22 +08:00
### 5多光标编辑
2019-04-14 19:06:41 +08:00
2020-05-23 21:48:29 +08:00
| Mac 快捷键 | Win 快捷键 | 作用 | 备注 |
| ----------------------------- | -------------------------- | ------------------------------------ | ---- |
| **Cmd + Option + 上下键** | **Ctrl + Alt + 上下键** | 在连续的多列上同时出现光标 | |
| **Option + 鼠标点击任意位置** | **Alt + 鼠标点击任意位置** | 在任意位置同时出现光标 | |
| Option + Shift + 鼠标拖动 | Alt + Shift + 鼠标拖动 | 在选中区域的每一行末尾出现光标 | |
| Cmd + Shift + L | Ctrl + Shift + L | 在选中文本的所有相同内容处出现光标 | |
2019-04-14 19:06:41 +08:00
2020-05-23 21:48:29 +08:00
其他的多光标编辑操作很重要
2019-04-14 19:06:41 +08:00
2020-06-19 11:15:22 +08:00
- 选中某个文本然后反复按住快捷键 **Cmd + D** windows 用户是按住**Ctrl + D** 即可将全文中相同的词逐一加入选择
2019-04-14 19:06:41 +08:00
2020-06-19 11:15:22 +08:00
- 选中一堆文本后按住**Option + Shift + i**windows 用户是按住**Alt + Shift + I**既可在**每一行的末尾**都创建一个光标
2019-04-14 19:06:41 +08:00
2020-06-19 11:15:22 +08:00
### 6删除操作
2020-05-23 21:48:29 +08:00
| Mac 快捷键 | Win 快捷键 | 作用 | 备注 |
| :--------------------- | :------------------- | :--------------------- | :---------------------------------------- |
| Cmd + shift + K | Ctrl + Shift + K | 删除整行 | Cmd + X的作用是剪切但也可以删除整行 |
| **option + Backspace** | **Ctrl + Backspace** | 删除光标之前的一个单词 | 英文有效很常用 |
| option + delete | Ctrl + delete | 删除光标之后的一个单词 | |
2020-06-18 23:40:12 +08:00
| **Cmd + Backspace** | | 删除光标之前的整行内容 | 很常用 |
2020-05-23 21:48:29 +08:00
| Cmd + delete | | 删除光标之后的整行内容 | |
2020-05-30 23:24:59 +08:00
备注上面所讲到的移动光标编辑操作删除操作的快捷键在其他编辑器里大部分都适用
2020-05-23 21:48:29 +08:00
2020-06-19 11:15:22 +08:00
### 7编程语言相关
2020-05-23 21:48:29 +08:00
| Mac 快捷键 | Win 快捷键 | 作用 | 备注 |
| :--------------------- | :-------------- | :--------------------------- | :------------------------------- |
| Cmd + / | Ctrl + / | 添加单行注释 | 很常用 |
| **Option + Shift + F** | Alt + shift + F | 代码格式化 | 很常用 |
2020-06-19 11:15:22 +08:00
| F2 | F2 | 以重构的方式进行**重命名** | 改代码备 |
2020-05-23 21:48:29 +08:00
| Ctrl + J | | 将多行代码合并为一行 | Win 用户可在命令面板搜索合并行 |
| Cmd + | | | |
| Cmd + U | Ctrl + U | 将光标的移动回退到上一个位置 | 撤销光标的移动和选择 |
2020-06-19 11:15:22 +08:00
### 8搜索相关
2020-05-23 21:48:29 +08:00
2020-06-19 11:15:22 +08:00
| Mac 快捷键 | Win 快捷键 | 作用 | 备注 |
| :------------------ | :------------------ | :----------------------------------------- | :----- |
| **Cmd + Shift + F** | **Ctrl + Shift +F** | 全局搜索代码 | 很常用 |
| **Cmd + P** | **Ctrl + P** | 在当前的项目工程里**全局**搜索文件名 | |
| Cmd + F | Ctrl + F | 在当前文件中搜索代码光标在搜索框里 | |
| **Cmd + G** | **F3** | 在当前文件中搜索代码光标仍停留在编辑器里 | 很巧妙 |
2020-05-23 21:48:29 +08:00
2020-06-19 11:15:22 +08:00
### 9自定义快捷键
2019-03-29 21:48:54 +08:00
按住快捷键Cmd + Shift + P弹出命令面板在命令面板中输入快捷键可以进入快捷键的设置
2019-04-18 20:59:31 +08:00
当然你也可以选择菜单栏偏好设置 --> 键盘快捷方式进入快捷键的设置
2019-03-29 21:48:54 +08:00
2019-04-14 17:14:33 +08:00
![](http://img.smyhvae.com/20190329_2120.png)
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
### 10快捷键列表
2019-04-18 20:59:31 +08:00
你可以点击 VS Code 左下角的齿轮按钮效果如下
![](http://img.smyhvae.com/20190418_1738.png)
上图中在展开的菜单中选择键盘快捷方式就可以查看和修改所有的快捷键列表了
2019-11-08 15:54:49 +08:00
![](http://img.smyhvae.com/20190418_1739_2.png)
2020-05-23 21:48:29 +08:00
### 快捷键参考链接
2020-06-19 11:15:22 +08:00
- 快捷键速查表[官方]<https://code.visualstudio.com/shortcuts/keyboard-shortcuts-windows.pdf>
2020-05-23 21:48:29 +08:00
2020-06-19 11:15:22 +08:00
## 命令面板的使用
2019-11-08 15:54:49 +08:00
2020-05-23 21:48:29 +08:00
Mac 用户按住快捷键 `Cmd+Shift+P` Windows 用户按住快捷键`Ctrl+Shift+P`可以打开命令面板效果如下
2019-11-08 15:54:49 +08:00
![](http://img.smyhvae.com/20190329_1750_2.png)
如果们需要修改一些设置项可以通过命令面板来操作效率会更高这里列举一些
2020-06-19 11:15:22 +08:00
### 1设置字体大小
2019-11-08 15:54:49 +08:00
在命令面板输入字体可以进行字体的设置效果如下
![](http://img.smyhvae.com/20190329_2110.png)
当然你也可以在菜单栏选择首选项-设置-常用设置在这个设置项里修改字体大小
2020-06-19 11:15:22 +08:00
### 2快捷键设置
2019-11-08 15:54:49 +08:00
在命令面板输入快捷键就可以进入快捷键的设置
2020-06-19 11:15:22 +08:00
### 3大小写转换
2019-11-08 15:54:49 +08:00
选中文本后在命令面板中输入`transfrom`就可以修改文本的大小写了
![](http://img.smyhvae.com/20190414_1751.png)
2020-06-19 11:15:22 +08:00
### 4使用命令行启动 VS Code
2019-11-08 15:54:49 +08:00
1输入快捷键Cmd + Shift + P 选择`install code command`
![](http://img.smyhvae.com/20191103_1327.png)
2使用命令行
2020-06-19 11:15:22 +08:00
- `code`命令启动 VS Code 软件
2019-11-08 15:54:49 +08:00
2020-06-19 11:15:22 +08:00
- `code pathName/fileName`命令通过 VS Code 软件打开指定目录/指定文件
2019-11-08 15:54:49 +08:00
2020-06-19 11:15:22 +08:00
## 私人订制VS Code 的常见配置
2019-04-18 20:59:31 +08:00
2019-11-08 18:51:25 +08:00
### 1VS Code 设置为中文语言
2019-11-08 15:54:49 +08:00
2020-05-23 21:48:29 +08:00
Mac 用户按住快捷键 `Cmd+Shift+P` Windows 用户按住快捷键`Ctrl+Shift+P`打开命令面板
2019-11-08 15:54:49 +08:00
在命令面板中输入`Configure Display Language`选择`Install additional languages`然后安装插件`Chinese (Simplified) Language Pack for Visual Studio Code`即可
或者我们可以直接安装插件`Chinese (Simplified) Language Pack for Visual Studio Code`是一样的
2020-05-23 21:48:29 +08:00
安装完成后重启 VS Code
2019-04-18 20:59:31 +08:00
2019-11-08 18:51:25 +08:00
### 2面包屑Breadcrumb
2019-04-17 22:27:14 +08:00
打开 VS Code 的设置项选择用户设置 -> 工作台 -> 导航路径如下图所示
2019-11-08 15:54:49 +08:00
![](http://img.smyhvae.com/20191108_1550.png)
2019-04-17 22:27:14 +08:00
上图中将红框部分打钩即可
2019-04-18 21:19:15 +08:00
设置成功后我们就可以查看到当前文件的层级结构非常方便如下图所示
2019-04-17 22:27:14 +08:00
![](http://img.smyhvae.com/20190415_2009.png)
2020-06-19 11:15:22 +08:00
有了这个面包屑导航我们可以在任意目录任意文件之间随意跳转
### 3左右显示多个编辑器窗口抄代码利器
Mac 用户按住快捷键 `Cmd + \` Windows 用户按住快捷键`Ctrl + \`,即可同时打开多个编辑器窗口,效果如下:
![](http://img.smyhvae.com/20200619_0030.gif)
按快捷键Cmd + 1 切换到左边的窗口按快捷键Cmd + 2 切换到右边的窗口随时随地想切就切
学会了这一招以后抄代码的时候leader 再也不用担心我抄得慢了一天工资到手
### 4是否显示代码的行号
2019-04-17 22:27:14 +08:00
2019-04-18 20:59:31 +08:00
VS Code 默认显示代码的行号你可以在设置项里搜索 `editor.lineNumbers`修改设置配置项如下
2019-04-17 22:27:14 +08:00
2019-04-18 20:59:31 +08:00
![](http://img.smyhvae.com/20190417_2140.png)
2019-04-17 22:27:14 +08:00
2019-04-18 21:19:15 +08:00
我建议保留这个设置项无需修改
2020-06-19 11:15:22 +08:00
### 5右侧是否显示代码的缩略图
2019-04-17 22:27:14 +08:00
2019-04-18 20:59:31 +08:00
VS Code 会在代码的右侧默认显示缩略图你可以在设置项里搜索 `editor.minimap`进行设置配置项如下
2019-04-17 22:27:14 +08:00
2019-04-18 20:59:31 +08:00
![](http://img.smyhvae.com/20190417_2156.png)
2019-04-17 22:27:14 +08:00
2019-11-08 18:51:25 +08:00
### 6将当前行代码高亮显示更改光标所在行的背景色
2019-04-17 22:27:14 +08:00
2019-11-08 18:51:25 +08:00
当我们把光标放在某一行时这一行的背景色并没有发生变化如果想**高亮显示**当前行的代码需要设置两步
2019-04-17 22:27:14 +08:00
2019-11-08 18:51:25 +08:00
1在设置项里搜索`editor.renderLineHighlight`将选项值设置为`all`或者`line`
2019-04-17 22:27:14 +08:00
2019-11-08 18:51:25 +08:00
2在设置项里增加如下内容
2019-04-17 22:27:14 +08:00
2019-11-08 18:51:25 +08:00
```json
2020-06-19 11:15:22 +08:00
"workbench.colorCustomizations": {
"editor.lineHighlightBackground": "#00000090",
"editor.lineHighlightBorder": "#ffffff30"
}
2019-11-08 18:51:25 +08:00
```
2019-04-17 22:27:14 +08:00
2020-05-23 21:48:29 +08:00
上方代码第一行代码的意思是修改光标所在行的背景色背景色设置为全黑不透明度 90%第二行代码的意思是修改光标所在行的边框色
2019-04-17 22:27:14 +08:00
2019-11-08 18:51:25 +08:00
### 7改完代码后立即自动保存
2019-04-17 22:27:14 +08:00
2019-11-08 18:51:25 +08:00
**方式一**
2019-04-17 22:27:14 +08:00
2019-04-18 20:59:31 +08:00
改完代码后默认不会自动保存你可以在设置项里搜索`files.autoSave`修改配置项如下
2019-04-17 22:27:14 +08:00
2019-04-18 20:59:31 +08:00
![](http://img.smyhvae.com/20190417_2216.png)
2019-04-17 22:27:14 +08:00
上图中我们将配置项修改为`onFocusChange`之后那么当光标离开该文件后这个文件就会自动保存了**非常方便**
2019-11-08 18:51:25 +08:00
**方式二**
2020-06-19 11:15:22 +08:00
当然你也可以直接在菜单栏选择文件-自动保存勾选后当你写完代码后文件会立即实时保存
2019-11-08 18:51:25 +08:00
### 8保存代码后是否立即格式化
2019-04-17 22:27:14 +08:00
2019-04-18 20:59:31 +08:00
保存代码后默认**不会立即**进行代码的格式化你可以在设置项里搜索`editor.formatOnSave`查看该配置项
2019-04-17 22:27:14 +08:00
2019-04-18 20:59:31 +08:00
![](http://img.smyhvae.com/20190417_2213.png)
2019-04-17 22:27:14 +08:00
2019-04-18 21:34:57 +08:00
我觉得这个配置项保持默认就好不用打钩
2019-04-17 22:27:14 +08:00
2019-11-08 18:51:25 +08:00
### 9空格 or 制表符
2020-05-23 21:48:29 +08:00
VS Code 会根据你所打开的文件来决定该使用空格还是制表也就是说如果你的项目中使用的都是制表符那么当你在写新的代码时按下 tab 键后编辑器就会识别成制表符
2019-11-08 18:51:25 +08:00
常见的设置项如下
2020-06-19 11:15:22 +08:00
- **editor.detectIndentation**自动检测默认开启截图如下
2019-11-08 18:51:25 +08:00
![](http://img.smyhvae.com/20190417_2205.png)
2020-06-19 11:15:22 +08:00
- **editor.insertSpaces** Tab 键时插入空格默认截图如下
2019-11-08 18:51:25 +08:00
![](http://img.smyhvae.com/20190417_2207.png)
2020-06-19 11:15:22 +08:00
- **editor.tabSize**一个制表符默认等于四个空格截图如下
2019-11-08 18:51:25 +08:00
![](http://img.smyhvae.com/20190417_2209.png)
### 10新建文件后的默认文件类型
2019-04-17 22:27:14 +08:00
2020-05-23 17:44:13 +08:00
当我们按下快捷键Cmd + N新建文件时VS Code 默认无法识别这个文件到底是什么类型的因此也就无法识别相应的语法高亮
如果你想修改默认的文件类型可以在设置项里搜索`files.defaultLanguage`设置项如下
2019-04-17 22:27:14 +08:00
2019-04-18 20:59:31 +08:00
![](http://img.smyhvae.com/20190417_2221.png)
2019-04-17 22:27:14 +08:00
上图中的红框部分填入你期望的默认文件类型我填的是`html`类型你也可以填写成 `javascript` 或者 `markdown`或者其他的语言类型
2019-11-08 18:51:25 +08:00
### 11删除文件时是否弹出确认框
2019-04-18 20:59:31 +08:00
当我们在 VS Code 中删除文件时默认会弹出确认框如果你想修改设置可以在设置项里搜索`xplorer.confirmDelete`截图如下
![](http://img.smyhvae.com/20190418_1758.png)
2019-04-18 21:34:57 +08:00
我建议这个设置项保持默认的打钩就好不用修改删除文件前的弹窗提示也是为了安全考虑万一手贱不小心删了呢
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
> 接下来我们来讲一些更高级的配置
2019-04-14 19:06:41 +08:00
2020-05-23 17:44:13 +08:00
### 12文件对比
2019-04-18 20:59:31 +08:00
VS Code 默认支持**对比两个文件的内容**选中两个文件然后右键选择将已选项进行比较即可效果如下
![](http://img.smyhvae.com/20190329_1756.png)
2020-05-23 21:48:29 +08:00
VS Code 自带的对比功能并不够强大我们可以安装插件`compareit`进行更丰富的对比比如说安装完插件`compareit`之后我们可以将当前文件剪切板里的内容进行对比
2019-04-18 20:59:31 +08:00
![](http://img.smyhvae.com/20190329_1757.png)
2020-05-23 17:44:13 +08:00
### 13查找某个函数在哪些地方被调用了
2019-04-14 19:06:41 +08:00
比如我已经在`a.js`文件里调用了 `foo()`函数那么如果我想知道`foo()`函数在其他文件中是否也被调用了该怎么做呢
2019-04-15 14:27:16 +08:00
做法如下 `a.js` 文件里选中`foo()`函数或者将光标放置在`foo()`函数上然后按住快捷键Shift + F12就能看到 `foo()`函数在哪些地方被调用了比较实用
2019-04-14 19:06:41 +08:00
2020-05-23 17:44:13 +08:00
### 14鼠标操作
2019-04-14 19:06:41 +08:00
2020-06-19 11:15:22 +08:00
- 在当前行的位置鼠标三击可以选中当前行
2019-04-14 19:06:41 +08:00
2020-06-19 11:15:22 +08:00
- 用鼠标单击文件的**行号**可以选中当前行
2019-04-14 19:06:41 +08:00
2020-06-19 11:15:22 +08:00
- 在某个**行号**的位置**上下移动鼠标可以选中多行**
2019-04-14 19:06:41 +08:00
2020-05-23 17:44:13 +08:00
### 15重构
2019-04-15 20:59:49 +08:00
重构分很多种我们来举几个例子
2020-05-23 17:44:13 +08:00
**命名重构**
2019-04-15 20:59:49 +08:00
当我们尝试去修改某个函数或者变量名我们可以把光标放在上面然后按下F2那么这个函数或者变量名出现的地方都会被修改
2020-05-23 17:44:13 +08:00
**方法重构**
2019-04-15 20:59:49 +08:00
选中某一段代码这个时候代码的左侧会出现一个灯泡图标点击这个图标就可以把这段代码提取为一个单独的函数
2020-05-23 17:44:13 +08:00
### 16在当前文件中搜索
2019-04-15 20:59:49 +08:00
在上面的快捷键列表中我们已经知道如下快捷键
2020-06-19 11:15:22 +08:00
- Cmd + FWin 用户是 Ctrl + F在当前文件中搜索光标在搜索框里
2019-04-15 20:59:49 +08:00
2020-06-19 11:15:22 +08:00
- Cmd + GWin 用户是 F3在当前文件中搜索光标仍停留在编辑器里
2019-04-15 20:59:49 +08:00
2019-11-08 18:51:25 +08:00
另外你可能会注意到搜索框里有很多按钮每个按钮都对应着不同的功能如下图所示
2019-04-15 20:59:49 +08:00
2019-04-15 21:10:00 +08:00
![](http://img.smyhvae.com/20190415_2052.png)
2019-04-15 20:59:49 +08:00
2019-04-18 20:59:31 +08:00
上图中你可以通过Tab键和Shift + Tab键在输入框和替换框之间进行切换
2019-04-15 20:59:49 +08:00
在选定内容中查找这个功能还是比较实用的你也可以在设置项里搜索 `editor.find.autoFindInSelection`勾选该设置项后那么当你选中指定内容后然后按住Cmd + F就可以**自动**只在这些内容里进行查找该设置项如下图所示
2019-11-08 18:51:25 +08:00
![](http://img.smyhvae.com/20191108_1655.png)
2019-04-15 20:59:49 +08:00
2020-05-23 17:44:13 +08:00
### 17全局搜索
2019-04-15 20:59:49 +08:00
在上面的快捷键列表中我们已经知道如下快捷键
2020-06-19 11:15:22 +08:00
- Cmd + Shift + FWin 用户是 Ctrl + Shift +F在全局的文件夹中进行搜索效果如下
2019-04-15 20:59:49 +08:00
2019-04-15 21:10:00 +08:00
![](http://img.smyhvae.com/20190415_2107.png)
2019-04-15 20:59:49 +08:00
2019-04-18 20:59:31 +08:00
上图中你可以点击红框部分展开更多的配置项
2020-05-23 21:48:29 +08:00
### 18Git 版本管理
2019-04-18 20:59:31 +08:00
VS Code 自带了 Git 版本管理如下图所示
![](http://img.smyhvae.com/20190418_1850.png)
2019-04-15 20:59:49 +08:00
2020-06-19 20:06:11 +08:00
上图中我们可以在这里进行常见的 git 命令操作如果你还不熟悉 **Git 版本管理**可以先去补补课
2019-04-14 19:06:41 +08:00
2020-05-23 21:48:29 +08:00
与此同时我建议安装插件`GitLens`它是 VS Code 中我最推荐的一个插件简直是 Git 神器码农必备
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
### 19将工作区放大/缩小
2019-04-18 20:59:31 +08:00
我们在上面的设置项里修改字体大小后仅仅只是修改了代码的字体大小
2020-05-23 21:48:29 +08:00
如果你想要缩放整个工作区包括代码的字体左侧导航栏的字体等可以按下快捷键**cmd +/-**」。windows 用户是按下「ctrl +/-
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
**当我们在投影仪上给别人演示代码的时候这一招十分管用**
2019-04-18 20:59:31 +08:00
如果你想恢复默认的工作区大小可以在命令面板输入`重置缩放`英文是`reset zoom`
2020-05-23 17:44:13 +08:00
### 20创建多层子文件夹
2019-04-18 20:59:31 +08:00
我们可以在新建文件夹的时候如果直接输入`aa/bb/cc`比如
![](http://img.smyhvae.com/20190418_2022.png)
那么就可以创建多层子文件夹效果如下
![](http://img.smyhvae.com/20190418_2023.png)
2020-05-23 17:44:13 +08:00
### 21`.vscode` 文件夹的作用
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
为了统一团队的 vscode 配置我们可以在项目的根目录下建立`.vscode`目录在里面放置一些配置内容比如
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
- `settings.json`工作空间设置代码格式化配置插件配置
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
- `sftp.json`ftp 文件传输的配置
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
`.vscode`目录里的配置只针对当前项目范围内生效`.vscode`提交到代码仓库大家统一配置时会非常方便
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
### 22自带终端
2019-04-18 20:59:31 +08:00
2019-04-18 21:19:15 +08:00
我们可以按下Ctrl + `」打开 VS Code 自带的终端。我认为内置终端并没有那么好用,我更建议你使用第三方的终端 **item2**。
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
### 23markdown 语法支持
2020-06-19 11:15:22 +08:00
VS Code 自带 markdown 语法高亮也就是说如果你是用 markdown 格式写文章则完全可以用 VS Code 进行写作
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
写完 md 文件之后你可以点击右上角的按钮进行预览如下图所示
2019-04-18 20:59:31 +08:00
![](http://img.smyhvae.com/20190418_1907.png)
2020-05-23 17:44:13 +08:00
我一般是安装Markdown Preview Github Styling插件 GitHub 风格预览 Markdown 样式样式十分简洁美观
2020-05-23 21:48:29 +08:00
你也可以在控制面板输入`Markdown: 打开预览`直接全屏预览 markdown 文件
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
### 24Emmet in VS Code
2019-04-18 20:59:31 +08:00
`Emmet`可以极大的提高 html css 的编写效率它提供了一种非常简练的语法规则
举个例子我们在编辑器中输入缩写代码`ul>li*6` 然后按下 Tab 即可得到如下代码片段
```html
2020-05-23 21:48:29 +08:00
<ul>
2020-06-19 11:15:22 +08:00
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
2020-05-23 21:48:29 +08:00
</ul>
2019-04-18 20:59:31 +08:00
```
VS Code 默认支持 Emmet更多 Emmet 语法规则请自行查阅
2019-04-17 22:27:14 +08:00
2020-05-23 17:44:13 +08:00
### 25修改字体使用Fira Code字体
2019-04-14 19:06:41 +08:00
2020-05-23 17:44:13 +08:00
这款字体很漂亮很适合用来写代码
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
![](http://img.smyhvae.com/20200516_1633.png)
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
安装步骤如下
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
1进入 <https://github.com/tonsky/FiraCode> 网站下载并安装「Fira Code」字体。
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
2打开 VS Code 设置搜索`font`修改相关配置为如下内容
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
```json
2020-06-19 11:15:22 +08:00
"editor.fontFamily": "'Fira Code',Menlo, Monaco, 'Courier New', monospace", // 设置字体显示
"editor.fontLigatures": false,//控制是否启用字体连字true启用false不启用
2020-05-23 17:44:13 +08:00
```
2019-04-18 20:59:31 +08:00
2020-05-23 21:48:29 +08:00
上方的第二行配置取决于个人习惯我是直接设置为`"editor.fontLigatures": null`因为我不太习惯连字
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
### 26代码格式化Prettier
2019-06-14 11:35:23 +08:00
2020-05-23 17:44:13 +08:00
我们可以使用 `Prettier`进行代码格式化会让代码的展示更加美观步骤如下
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
1安装插件 `Prettier`
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
2在项目的根路径下新建文件`.prettierrc`并在文件中添加如下内容
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
```json
{
2020-06-19 11:15:22 +08:00
"printWidth": 150,
"tabWidth": 4,
"semi": true,
"singleQuote": true,
"trailingComma": "es5",
"tslintIntegration": true,
"insertSpaceBeforeFunctionParenthesis": false
2020-05-23 17:44:13 +08:00
}
```
2019-04-18 20:59:31 +08:00
2020-05-23 17:44:13 +08:00
上面的内容是我自己的配置你可以参考
更多配置可以参考官方文档<https://prettier.io/docs/en/options.html>
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
### 27文件传输sftp
2019-04-18 20:59:31 +08:00
如果你需要将本地文件通过 ftp 的形式上传到局域网的服务器可以安装`sftp`这个插件很好用在公司会经常用到
2019-11-08 18:51:25 +08:00
步骤如下
1安装插件`sftp`
2配置 `sftp.json`文件 插件安装完成后输入快捷键cmd+shift+P弹出命令面板然后输入`sftp:config`回车当前工程的`.vscode`文件夹下就会自动生成一个`sftp.json`文件我们需要在这个文件里配置的内容可以是
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
- `host`服务器的 IP 地址
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
- `username`用户名
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
- `privateKeyPath`存放在本地的已配置好的用于登录工作站的密钥文件也可以是 ppk 文件
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
- `remotePath`工作站上与本地工程同步的文件夹路径需要和本地工程文件根目录同名且在使用 sftp 上传文件之前要手动在工作站上 mkdir 生成这个根目录
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
- `ignore`指定在使用 sftp: sync to remote 的时候忽略的文件及文件夹注意每一行后面有逗号最后一行没有逗号
2019-04-18 20:59:31 +08:00
举例如下(注意其中的注释需要去掉)
```json
{
2020-06-19 11:15:22 +08:00
"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"
]
2019-04-18 20:59:31 +08:00
}
```
2020-05-23 21:48:29 +08:00
3 VS Code 的当前文件里选择右键 -> upload就可以将本地的代码上传到 指定的 ftp 服务器上也就是在上方 `host` 中配置的服务器 ip
2019-11-08 18:51:25 +08:00
我们还可以选择右键 -> Diff with Remote就可以将本地的代码和 ftp 服务器上的代码做对比
2020-05-23 17:44:13 +08:00
## VS Code 配置云同步
我们可以将配置云同步这样的话当我们换个电脑时即可将配置一键同步到本地就不需要重新安装插件了也不需要重新配置软件
我们还可以把配置分享其他用户也可以把其他用户的配置给自己用
2020-05-23 21:48:29 +08:00
**将自己本地的配置云同步到 GitHub**
2020-05-23 17:44:13 +08:00
1安装插件 `settings-sync`
2安装完插件后在插件里使用 GitHub 账号登录
3登录后在 vscode 的界面中可以选择一个别人的 gist也可以忽略掉然后创建一个属于自己的 gist
4使用快捷键 Command + Shift + P在弹出的命令框中输入 sync并选择更新/上传配置这样就可以把最新的配置上传到 GitHub
**换另外一个电脑时从云端同步配置到本地**
1当我们换另外一台电脑时可以先在 VS Code 中安装 `settings-sync` 插件
2安装完插件后在插件里使用 GitHub 账号登录
3登录之后插件的界面上会自动出现之前的同步记录
![](http://img.smyhvae.com/20200521_1530.png)
上图中我们点击最新的那条记录就可将云端的最新配置同步到本地
![](http://img.smyhvae.com/20200521_1550.png)
如果你远程的配置没有成功同步到本地那可能是网络的问题此时可以使用快捷键 Command + Shift + P在弹出的命令框中输入 sync并选择下载配置多试几次
2020-05-23 21:48:29 +08:00
**使用其他人的配置**
如果我们想使用别人的配置首先需要对方提供给你 gist具体步骤如下
1安装插件 `settings-sync`
2使用快捷键 Command + Shift + P在弹出的命令框中输入 sync并选择下载配置
3在弹出的界面中选择Download Public Gist然后输入别人分享给你的 gist注意这一步不需要登录 GitHub 账号
2020-05-23 17:44:13 +08:00
2020-06-19 11:15:22 +08:00
## 三头六臂VS Code 插件推荐
2020-06-18 23:40:12 +08:00
VS Code 有一个很强大的功能就是支持插件扩展让你的编辑器仿佛拥有了三头六臂
2020-05-23 17:44:13 +08:00
![](http://img.smyhvae.com/20191108_1553_2.png)
上图中点击红框部分即可在输入框里查找你想要的插件名然后进行安装
2020-06-18 23:40:12 +08:00
我来列举几个常见的插件这些插件都很实用注意**顺序越靠前越实用**
2020-05-23 17:44:13 +08:00
2020-06-19 11:15:22 +08:00
### 1GitLens
2020-05-23 17:44:13 +08:00
2020-05-23 21:48:29 +08:00
我强烈建议你安装插件`GitLens`它是 VS Code 中我最推荐的一个插件简直是 Git 神器码农必备如果你不知道那真是 out
2020-05-23 17:44:13 +08:00
GitLens Git 管理上有很多强大的功能比如
2020-06-19 11:15:22 +08:00
- 将光标放置在代码的当前行可以看到这样代码的提交者是谁以及提交时间这一点 GitLens 最便捷的功能
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
- 查看某个 commit 的代码改动记录
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
- 查看不同的分支
2020-05-23 17:44:13 +08:00
2020-06-19 11:15:22 +08:00
- 可以将两个 commit 进行代码对比
2020-05-23 17:44:13 +08:00
2020-06-19 11:15:22 +08:00
- 甚至可以将两个 branch 分支进行整体的代码对比这一点简直是 GitLens 最强大的功能当我们在不同分支 review 代码的时候就可以用到这一招
2020-05-23 17:44:13 +08:00
2020-06-19 11:15:22 +08:00
### 2Git History
2020-05-23 17:44:13 +08:00
2020-06-18 23:40:12 +08:00
有些同学习惯使用编辑器中的 Git 管理工具而不太喜欢要打开另外一个 Git UI 工具的同学这一款插件满足你查询所有 Git 记录的需求
2020-05-23 17:44:13 +08:00
2020-06-19 11:15:22 +08:00
### 3Live Server
2020-05-23 17:44:13 +08:00
在本地启动一个服务器代码写完后可以实现热更新实时地在网页中看到运行效果就不需要每次都得手动刷新页面了
使用方式安装插件后开始写代码代码写完后右键选择Open with Live Server
2020-06-19 11:15:22 +08:00
### 4Chinese (Simplified) Language Pack for Visual Studio Code
2020-05-23 17:44:13 +08:00
让软件显示为简体中文语言
2020-06-19 11:15:22 +08:00
### 5Bracket Pair Colorizer 2突出显示成对的括号
2020-05-23 17:44:13 +08:00
2020-06-18 23:40:12 +08:00
`Bracket Pair Colorizer 2`插件以不同颜色显示成对的括号并用连线标注括号范围简称**彩虹括号**
2020-05-23 17:44:13 +08:00
另外还有个`Rainbow Brackets`插件也可以突出显示成对的括号
2020-06-19 11:15:22 +08:00
### 6sftp文件传输
2020-05-23 17:44:13 +08:00
如果你需要将本地文件通过 ftp 的形式上传到局域网的服务器可以安装`sftp`这个插件很好用在公司会经常用到
详细配置已经在上面讲过
2019-11-08 18:51:25 +08:00
2020-06-19 11:15:22 +08:00
### 7open in browser
2019-11-08 18:51:25 +08:00
安装`open in browser`插件后 HTML 文件中右键选择 --> Open in Default Browser即可在浏览器中预览网页
2020-06-19 11:15:22 +08:00
### 8highlight-icemode选中相同的代码时让高亮显示更加明显
2019-09-27 17:05:20 +08:00
2020-05-23 21:48:29 +08:00
VSCode 自带的高亮显示实在是不够显眼用插件支持一下吧
2019-09-27 17:05:20 +08:00
2020-05-23 21:48:29 +08:00
所用了这个插件之后VS Code 自带的高亮就可以关掉了
2019-09-27 17:05:20 +08:00
在用户设置里添加`"editor.selectionHighlight": false`即可
参考链接[vscode 选中后相同内容高亮插件推荐](https://blog.csdn.net/palmer_kai/article/details/79548164)
2020-06-19 11:15:22 +08:00
### 9vscode-icons
2019-11-08 18:51:25 +08:00
2020-06-18 23:40:12 +08:00
vscode-icons 会根据文件的后缀名来显示不同的图标让你更直观地知道每种文件是什么类型的
2019-11-08 18:51:25 +08:00
2020-06-19 11:15:22 +08:00
### 10Project Manager
2020-05-23 17:44:13 +08:00
2020-05-23 21:48:29 +08:00
工作中我们经常会来回切换多个项目每次都要找到对应项目的目录再打开比较麻烦Project Manager 插件可以解决这样的烦恼它提供了专门的视图来展示你的项目我们可以把常用的项目保存在这里需要时一键切换十分方便
2020-05-23 17:44:13 +08:00
2020-06-19 11:15:22 +08:00
### 11TODO Highlight
2019-11-08 18:51:25 +08:00
2020-05-23 21:48:29 +08:00
写代码过程中突然发现一个 Bug但是又不想停下来手中的活以免打断思路怎么办按照代码规范我们一般是在代码中加个 TODO 注释比如注意一定要写成大写`TODO`而不是小写的`todo`
2019-11-08 18:51:25 +08:00
```
//TODO:这里有个bug我一会儿再收拾你
```
或者
```
//FIXME:我也不知道为啥, but it works only that way.
```
安装了插件 `TODO Highlight`之后按住Cmd + Shift + P打开命令面板输入Todohighlist选择相关的命令我们就可以看到一个 todoList 的清单
2020-06-19 11:15:22 +08:00
### 12WakaTime
统计在 VS Code 里写代码的时间统计效果如下
2019-12-09 16:43:15 +08:00
2020-06-19 11:15:22 +08:00
![](http://img.smyhvae.com/20200618_2300.png)
2019-12-09 16:43:15 +08:00
2020-06-19 11:15:22 +08:00
### 13Code Time
2019-11-08 18:51:25 +08:00
2020-03-03 09:41:15 +08:00
`Code Time`插件记录编程时间统计代码行数
2019-11-08 18:51:25 +08:00
安装该插件后VS Code 底部的状态栏右下角可以看到时间统计点击那个位置之后选择Code Time Dashboard即可查看统计结果
2019-05-10 15:40:42 +08:00
2019-12-09 16:43:15 +08:00
备注团长试了一下这个 code time 插件发现统计结果不是很准
2020-06-19 11:15:22 +08:00
### 14Markdown Preview Github Styling
2019-12-09 16:43:15 +08:00
2020-06-18 23:40:12 +08:00
GitHub 风格预览 Markdown 样式十分简洁优雅就像下面这样左侧书写 Markdown 文本右侧预览 Markdown 的渲染效果
![](http://img.smyhvae.com/20200618_2025.png)
2019-12-09 16:43:15 +08:00
2020-06-19 11:15:22 +08:00
### 15Markdown Preview Enhanced
2020-03-03 09:41:15 +08:00
预览 Markdown 样式
2020-06-19 20:06:11 +08:00
### Markdown All in One
这个插件将帮助你更高效地在 Markdown 中编写文档
2020-06-19 11:15:22 +08:00
### 16Settings Sync
2019-11-08 18:51:25 +08:00
2020-06-19 11:15:22 +08:00
- 地址<https://github.com/shanalikhan/code-settings-sync>
2019-11-08 18:51:25 +08:00
2020-06-19 11:15:22 +08:00
- 作用多台设备之间同步 VS Code 配置通过登录 GitHub 账号来使用这个同步工具
2019-11-08 18:51:25 +08:00
2020-06-19 11:15:22 +08:00
同步的详细操作已在上面讲过
2019-11-08 18:51:25 +08:00
2020-06-19 11:15:22 +08:00
### 17vscode-syncing
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
- 地址<https://github.com/nonoroazoro/vscode-syncing>
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
- 作用多台设备之间同步 VS Code 配置
### 18Vetur
2020-06-18 23:40:12 +08:00
Vue 多功能集成插件包括语法高亮智能提示emmet错误提示格式化自动补全debuggerVS Code 官方钦定 Vue 插件Vue 开发者必备
2020-06-19 11:15:22 +08:00
### 19ES7 React/Redux/GraphQL/React-Native snippets
2020-06-18 23:40:12 +08:00
React/Redux/react-router 的语法智能提示
2020-06-19 11:15:22 +08:00
### 20minapp小程序支持
2020-06-18 23:40:12 +08:00
小程序开发必备插件
2020-06-19 11:15:22 +08:00
### 21Prettier代码格式化
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
Prettier 是一个代码格式化工具只关注格式化但不具备校验功能在一个多人协同开发的团队中统一的代码编写规范非常重要一套规范可以让我们编写的代码达到一致的风格提高代码的可读性和统一性自然维护性也会有所提高
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
### 22ESLint代码格式校验
2020-06-18 23:40:12 +08:00
日常开发中建议用可以用 Prettier 做代码格式化然后用 eslint 做校验
2020-06-19 11:15:22 +08:00
### 23Beautify
2020-06-18 23:40:12 +08:00
代码格式化工具
2020-06-19 20:06:11 +08:00
备注相比之下Prettier 是当前最流行的代码格式化工具 Beautify 用得更多
2020-06-19 11:15:22 +08:00
### 24JavaScript(ES6) code snippets
2020-06-18 23:40:12 +08:00
ES6 语法智能提示支持快速输入
2020-06-19 11:15:22 +08:00
### 25Search node_modules
2019-11-08 18:51:25 +08:00
2020-06-18 23:40:12 +08:00
`node_modules`模块里面的文件夹和模块实在是太多了根本不好找好在安装 `Search node_modules` 这个插件后输入快捷键Cmd + Shift + P然后输入 `node_modules`在弹出的选项中选择 `Search node_modules`即可搜索 node_modules 里的模块
![](http://img.smyhvae.com/20200618_2100.png)
2019-11-08 18:51:25 +08:00
2020-06-19 11:15:22 +08:00
### 26indent-rainbow突出显示代码缩进
2019-11-08 18:51:25 +08:00
2020-06-19 11:15:22 +08:00
`indent-rainbow`插件突出显示代码缩进
2019-11-08 18:51:25 +08:00
安装完成后效果如下图所示
![](http://img.smyhvae.com/20190418_1958.png)
2020-06-19 11:15:22 +08:00
### 27javascript console utils快速打印 log 日志
2020-06-18 23:40:12 +08:00
安装这个插件后当我们按住快捷键Cmd + Shift + L即可自动出现日志 `console.log()`简直是日志党福音
当我们选中某个变量 `name`然后按住快捷键Cmd + Shift + L即可自动出现这个变量的日志 `console.log(name)`
其他的同类插件还有Turbo Console Log
不过生产环境的代码还是尽量少打日志比较好避免出现一些异常
编程有三等境界
2020-06-19 11:15:22 +08:00
- 第三等境界是打日志这是最简单便捷的方式略显低级一般新手或资深程序员偷懒时会用
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
- 第二等境界是断点调试在前端JavaPHPiOS 开发时非常常用通过断点调试可以很直观地跟踪代码执行逻辑调用栈变量等是非常实用的技巧
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
- 第一等境界是测试驱动开发在写代码之前先写测试与第二等的断点调试刚好相反大部分人不是很习惯这种方式但在国外开发者或者敏捷爱好者看来这是最高效的开发方式在保证代码质量重构等方面非常有帮助是现代编程开发必不可少的一部分
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
### 28Code Spell Checker单词拼写错误检查
2020-06-18 23:40:12 +08:00
这个拼写检查程序的目标是帮助捕获常见的单词拼写错误可以检测驼峰命名从此告别 Chinglish.
2020-06-19 11:15:22 +08:00
### 29Local History
2020-06-18 23:40:12 +08:00
维护文件的本地历史记录强烈建议安装代码意外丢失时有时可以救命
![](http://img.smyhvae.com/20200618_2246.png)
2020-06-19 20:06:11 +08:00
### 30Polacode-2020生成代码截图
可以把代码片段保存成美观的图片主题不同代码的配色方案也不同也也可以自定义设置图片的边框颜色大小阴影
尤其是在我们做 PPT 分享时需要用到代码片段时或者需要在网络上优雅地分享代码片段时这一招很有用
生成的效果如下
2020-06-18 23:40:12 +08:00
2020-06-19 20:06:11 +08:00
![](http://img.smyhvae.com/20200619_1403.png)
其他同类插件`CodeSnap`我们也可以通过 <https://carbon.now.sh/>这个网站生成代码图片
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
有人可能会说直接用 QQ 截图不行吗可以是可以但不够美观不够干净
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
### 31Image Preview
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
图片预览鼠标移动到图片 url 上的时候会自动显示图片的预览和图片尺寸
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
### 32Auto Close TagAuto Rename Tag
2020-06-18 23:40:12 +08:00
自动闭合标签自动对标签重命名
2020-06-19 11:15:22 +08:00
### 33Better Comments
2020-06-18 23:40:12 +08:00
为注释添加更醒目带分类的色彩
2020-06-19 11:15:22 +08:00
### 34CSS Peek
2020-06-18 23:40:12 +08:00
增强 HTML CSS 之间的关联快速查看该元素上的 CSS 样式
2020-06-19 11:15:22 +08:00
### 35Vue CSS Peek
2020-06-18 23:40:12 +08:00
CSS Peek Vue 没有支持该插件提供了对 Vue 文件的支持
2020-06-19 11:15:22 +08:00
### 36Color Info
2020-06-18 23:40:12 +08:00
这个便捷的插件将为你提供你在 CSS 中使用颜色的相关信息你只需在颜色上悬停光标就可以预览色块中色彩模型的HEX RGBHSL CMYK相关信息了
2020-06-19 11:15:22 +08:00
### 37RemoteHub
2019-11-08 18:51:25 +08:00
不要惊讶RemoteHub GitLens 是同一个作者开发出来的
`RemoteHub`插件的作用是可以在本地查看 GitHub 网站上的代码而不需要将代码下载到本地
![](http://img.smyhvae.com/20190418_1937.png)
这个插件目前使用的人还不多赶紧安装起来尝尝鲜吧
2019-05-10 15:40:42 +08:00
2020-06-19 11:15:22 +08:00
### 38Live Share实时编码分享
2019-04-18 20:59:31 +08:00
`Live Share`这个神奇的插件是由微软官方出品它的作用是**实时编码分享**也就是说它可以实现你和你的同伴一起写代码这绝对就是**结对编程**的神器啊
安装方式
打开插件管理搜索live share安装安装后重启 VS Code在左侧会多出一个按钮
![](http://img.smyhvae.com/20190418_2012.png)
上图中点击红框部分登录后就可以分享你的工作空间了
![](http://img.smyhvae.com/20190418_2005.png)
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
### 39Import Cost
在项目开发过程中我们会引入很多 npm 有时候可能只用到了某个包里的一个方法却引入了整个包导致代码体积增大很多`Import Cost`插件可以在代码中友好的提示我们当前引入的包会增加多少体积这很有助于帮我们优化代码的体积
2019-04-18 20:59:31 +08:00
2020-06-19 20:06:11 +08:00
### Paste JSON as Code
此插件可以将剪贴板中的 JSON 字符串转换成工作代码支持多种语言
2020-06-19 11:15:22 +08:00
## 常见主题插件
2020-06-07 21:58:03 +08:00
2020-06-19 11:15:22 +08:00
给你的 VS Code 换个皮肤吧免费的那种
2020-06-07 21:58:03 +08:00
2020-06-19 11:15:22 +08:00
- Dracula Theme
2019-04-18 20:59:31 +08:00
2020-06-19 11:15:22 +08:00
- Material Theme
2019-04-14 19:06:41 +08:00
2020-06-19 11:15:22 +08:00
- Nebula Theme
2019-12-26 17:52:03 +08:00
2020-06-19 11:15:22 +08:00
- [One Dark Pro](https://marketplace.visualstudio.com/items?itemName=zhuangtongfa.Material-theme)
2020-05-23 17:44:13 +08:00
2020-06-19 11:15:22 +08:00
- One Monokai Theme
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
- Monokai Pro
2019-11-08 18:51:25 +08:00
2020-06-19 11:15:22 +08:00
- Ayu
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
* [Snazzy Plus](https://marketplace.visualstudio.com/items?itemName=akarlsten.vscode-snazzy-akarlsten)
2019-04-25 11:23:17 +08:00
2020-06-19 11:15:22 +08:00
* [Dainty](https://marketplace.visualstudio.com/items?itemName=alexanderte.dainty-vscode)
2020-06-18 23:40:12 +08:00
2020-06-19 11:15:22 +08:00
* `SynthWave '84`
- GitHub Plus Theme白色主题
2020-06-18 23:40:12 +08:00
- Horizon Theme红色主题
2020-06-07 21:58:03 +08:00
2019-04-18 20:59:31 +08:00
## 最后一段
2020-06-19 11:15:22 +08:00
如果你还有什么推荐的 VS Code 插件欢迎留言
大家完全不用担心这篇文章会过时随着 VS Code 的版本更新和插件更新本文也会随之更新关于 VS Code 内容的后续更新你可以关注我在 GitHub 上的前端入门项目项目地址是
2020-06-19 20:06:11 +08:00
> https://github.com/qianguyihao/Web
2019-03-29 21:48:54 +08:00
2020-06-19 11:15:22 +08:00
一个超级详细和真诚的前端入门项目
2019-03-29 21:48:54 +08:00
2020-08-24 23:22:58 +08:00
## todo
- [issues 84](https://github.com/qianguyihao/Web/issues/84)
2019-08-02 20:36:14 +08:00
## 参考链接
2020-06-19 11:15:22 +08:00
- [VSCode 插件大全 VSCode 高级玩家之第二篇](https://juejin.im/post/5ea40c6751882573b219777d)
2020-06-18 23:40:12 +08:00
- <http://www.supuwoerc.xyz/tools/vscode/plugins.html>
2020-06-19 11:15:22 +08:00
- [如何让 VS Code 更好用 10 这里有一份 VS Code 新手指南](https://zhuanlan.zhihu.com/p/99462672)
2019-11-08 18:51:25 +08:00
2020-06-19 20:06:11 +08:00
- [那些你应该考虑卸载的 VSCode 扩展](https://lyreal666.com/%E9%82%A3%E4%BA%9B%E4%BD%A0%E5%BA%94%E8%AF%A5%E8%80%83%E8%99%91%E5%8D%B8%E8%BD%BD%E7%9A%84-VSCode-%E6%89%A9%E5%B1%95/#more)
2020-06-19 11:15:22 +08:00
- [VS Code 折腾记 - (16) 推荐一波实用的插件集](https://juejin.im/post/5d74eb5c51882525017787d9)
2019-11-03 14:20:08 +08:00
2020-06-19 11:15:22 +08:00
- [VSCode 前端必备插件有可能你装了却不知道如何使用](https://juejin.im/post/5db66672f265da4d0e009aad)
2019-11-03 14:20:08 +08:00
2020-06-19 11:15:22 +08:00
- [能让你开发效率翻倍的 VSCode 插件配置](https://juejin.im/post/5a08d1d6f265da430f31950e)
2019-11-03 14:20:08 +08:00
2020-06-19 11:15:22 +08:00
- [https://segmentfault.com/a/1190000012811886](https://segmentfault.com/a/1190000012811886)
2020-06-07 21:58:03 +08:00
2020-06-19 11:15:22 +08:00
- [Vscode打造类 sublime 的高颜值编辑器](https://idoubi.cc/2019/07/08/vscode-sublime-theme/)
2020-06-10 22:01:57 +08:00
2020-06-19 11:15:22 +08:00
- [Mac Vscode 快捷键](https://lsqy.tech/2020/03/14/20200314Mac-Vscode%E5%BF%AB%E6%8D%B7%E9%94%AE/)
2020-06-10 22:01:57 +08:00
2020-06-19 11:15:22 +08:00
* [使用 VSCode 的一些技巧](https://mp.weixin.qq.com/s?src=11&timestamp=1591581536&ver=2387&signature=i4xLZlLe1Gkl7OiBIhPO*VSeNB5lzFgTY-dgNW9E9ZbtIAv4bnJ1RdAAZdhvDw*cg-DmMcUa-V8NSUdV-tthmXZCq3ht4edCweq6v0QxKjnh8IuAxyyh5qymdRui*8iE&new=1)
2020-06-19 20:06:11 +08:00
## 我的公众号
想学习<font color=#0000ff>**代码之外的技能**</font>****
扫一扫你将发现另一个全新的世界而这将是一场美丽的意外
![](http://img.smyhvae.com/20190101.png)