如何自定义
虽然之前已经有提到,但这里还是在啰嗦一遍。你可以通过以下两个方法唤出 VSCode 快捷键自定义界面:
- 快捷键(二级跳):⌘K ⌘S
- 命令面板搜「keyboard」,找到「Preferences: Open Keyboard Shortcuts」
💡 快捷键小贴士(⌃⌥⇧⌘):
- ⌘ Comand:最常用的快捷键组成,可配合任何键以及鼠标点击合并;很多 Windows 下以 ⌃ 作为快捷键主键的,在 Mac 下用 ⌘
- ⇧ Shift:一般不会单独在快捷键组合中出现,它的作用主要由两个:「反向」和「圈选」(记住这点非常重要)
- 反向:改变行为的方向,比如 ⇥ 的行为是「下一个」,而 ⇧⇥ 是「上一个」
- 圈选:产生圈效果,比如普通的点击只是切换了焦点,但配上 ⇧ 再点,则会圈选前后点击包含的所有元素,再比如编辑文本的时候按方向键只是改变了光标,配上 ⇧ 则会选中光标经过的地方的文本
- ⌥ Option:当 ⌘ 组合被用完后,可以用它作为主键
- ⌃ Control:和 ⌘、⌥ 差不多,唯一的区别是 ⌃Click 被系统默认用作打开右键菜单的方式
带 🌈 标记表示需要自定义。
高频快捷键 - 快速编辑
快捷键 | 功能 | Command | 说明 |
⇧⇥ | 取消缩进(反向 Tab) |
| |
🌈 ⌘D | 删除光标所在行(所选行) |
| |
⌥↑ | 所选行/光标所在行上移 |
| 没有 WebStorm 智能 |
⌥↓ | 所选行/光标所在行下移 |
| 没有 WebStorm 智能 |
⌘/ | 单行注释 |
| |
🌈 ⇧⌘/ | 多行注释 |
| 需要改系统快捷键,对应系统快捷键是呼出帮助 |
⌥⇧F | 格式化代码 |
| 💥 和 WebStorm 不一样 |
🌈 ⇧⌘J | 合并所选行 |
| |
🌈 ⇧⌘X | 切换成大写 |
| 没有 WebStorm 好用,可以一个快捷键在大小写间来回切换 |
🌈 ⌥⇧⌘X | 切换成小写 |
| 前面的快捷键上附加一个 ⌥ |
🌈 ⌥⌘↑ | 向上复制一行 |
| |
🌈 ⌥⌘↓ | 向上复制一行 |
| |
🌈 ⌘⌫ | 从光标处删除到整个词首 |
| VSCode ⌘⌫ 默认为到行首,先解除之 |
🌈 ⌘⌦ | 从光标处删除到整个词尾 |
| |
🌈 ⌥⌫ | 从光标处删除到分词的词首 |
| |
🌈 ⌥⌦ | 从光标处删除到分词的词尾 |
|
高频快捷键 - 移动光标
快捷键 | 功能 | Command | 说明 |
⌘↑ | 移动光标至文首 |
| |
⌘↓ | 移动光标至文尾 |
| |
⌘← | 移动光标至行首 |
| 忽略行首空白 |
⌘→ | 移动光标至行尾 |
| 但是不会忽略行尾空白 |
⌥← | 移动光标到上一个词 |
| |
⌥→ | 移动光标到下一个词 |
| |
⌥⇧\ | 移动光标到对应的括号处 |
|
高频快捷键 - 选择文本
快捷键 | 功能 | Command | 说明 |
⇧⌘↑ | 移动光标至文首,选中经过的文本 |
| |
⇧⌘↓ | 移动光标至文末,选中经过的文本 |
| |
⇧⌘← | 移动光标至行首,选中经过的文本 |
| |
⇧⌘→ | 移动光标至行尾,选中经过的文本 |
| |
⌥⇧← | 移动光标到上一个词,选中经过的文本 |
| |
⌥⇧→ | 移动光标到下一个词,选中经过的文本 |
|
高频快捷键 - 查找替换
快捷键 | 功能 | Command | 说明 |
⌘F | 文件内搜索 |
| |
⌥⌘F | 文件内替换 |
| 💥 和 WebStorm 设的不一样 |
⌘G | 查找并将光标移动到下一个搜索命中文本 |
| |
⇧⌘G | 查找并将光标移动到上一个搜索命中文本 |
| |
🌈 ⌃H | 全局内容搜素 |
| |
🌈 ⌃⇧H | 全局内容搜素 |
| |
⌘P | 根据名字搜索文件等资源 |
| 💥 和 WebStorm 设的不一样 |
⌘T | 命令面板查找 Symbol 模式 |
| 和 WebStorm 的查找类型有点类似 |
🌈 ⌥⌘G | 查找引用 |
| 💥 不支持文件 |
高频快捷键 - 多点编辑
在创建多个光标后,结合箭头、移动光标快捷键等,绝对是炫技提效必备。
快捷键 | 功能 | Command | 说明 |
⌥Click | 增加光标 | 无 | 基础 |
🌈 ⌃⌘G | 选中所有选中的文本,或光标所在的词 |
| 💥 和 WebStorm 不一样的是,VSCode 选中后所有的光标在词尾 |
🌈 ⇧⌘L | 所有选中行末添加光标 |
| |
🌈 ⌥⇧↑ | 向上复制光标 |
| |
🌈 ⌥⇧↓ | 向下复制光标 |
| |
⌥⇧鼠标拖拽 | 纵向拖出一条光标 | - | 类似连续多次向上或向下复制光标的效果,但附加带选中效果 |
高频快捷键 - 通用
快捷键 | 功能 | Command | 说明 |
🌈 ⌘1 | 展示快速修复菜单 |
| 有病没病都可以按 |
⌃` | 展示/隐藏 Terminal |
| |
⌘\ | 编辑器向右切屏 |
| |
🌈 ⌥⌘\ | 编辑器向下切屏 |
| |
⏎ | 重命名文件 |
| 💥 和 WebStorm 不一样,保持系统的原汁原味 |
⌥Z | 代码软折行 |
|
高频快捷键 - 特有功能
快捷键 | 功能 | Command | 说明 |
⇧⌘P | 展示命令面板 |
| Sublime 最大的创举 |
⌘K ⌘S | 打开快捷键偏好设置 |
| |
⌘B | 显示 / 隐藏侧边栏 |
|
🕸️ 有用链接
- VSCode 官网
- VSCode 插件
- VSCode Gold Series 很多经验和技巧
- VSCode Themes 你可以在这里搜索和预览主题,解决你的主题荒
🙋 FAQ
❓ 为什么不用默认的 ⌘⌫ 删除整行,而是 ⌘D 呢?
前者虽然删除了行的内容,但没有删除这一行,需要再敲一个 ⌫ 才能彻底让这一行消失,后者一次搞定。
❓ 如何切换偏好/快捷键的 JSON 编辑模式?
对应的界面右上角有个图标,点它就会切换到 JSON 格式,可以直接编辑:
❓ 如何解决 ESLint 无提示的问题?
最新版已经没有问题了。
ESlint 插件装了,项目下的依赖也装了,但编辑器上就是没有波浪线,这种问题通常出现在 TS 项目中。
首先确认一下状态栏下 ESLint 没有任何报错(没有警告 Icon)。
没问题的话,直接编辑偏好 JSON:
json
复制代码
{
...,
"eslint.alwaysShowStatus": true,
"eslint.validate": [ "typescript", "typescriptreact" ]
}