Visual Studio Code 专栏学习笔记
专栏地址:https://time.geekbang.org/column/article/40098
常用命令
- 打开命令面板:
Ctrl+Shift+PF1 - Cmd 窗口命令:
Code,Code --help查看命令帮助,Cmd 命令加| Code -可直接将 Cmd 命令的结果输出到 VS Code 的一个页面中,方便后续操作 - 编辑操作:
- 删除当前行:
Ctrl+Shift+K - 剪切当前行:
Ctrl+Shift+X - 复制当前行:
Ctrl+Shift+C - 新起一行到下一行:
Ctrl+Enter - 新起一行到上一行:
Ctrl+Shift+Enter - 当前行向上\下移动:
Alt+↑\↓ - 向上\下复制当前行:
Alt+Shift+↑\↓ - 添加行注释:
Ctrl+/ - 添加块注释:
Alt+Shift+A - 代码格式化(需安装各个语言对应的插件):
Alt+Shift+F - 选中段代码格式化:
Ctrl+K Ctrl+F - 光标回退到之前位置:
Ctrl+U - 在一个函数的括号中跳转:
Ctrl+Shift+\
多光标:
Ctrl+Alt+鼠标Ctrl+Alt+↑\↓Ctrl+D Ctrl+D(选中重复的单词为他们生成多光标)Alt+Shift+I展开文件列表:
Ctrl+Tab 然后按住Ctrl 按下Tab即可在文件列表中切换展开文件列表并搜索:
Ctrl+P 在文件列表中按下Ctrl+Enter可在新窗口打开选中的文件Ctrl+P+文件名+冒号+行号 可跳转到指定文件的指定行号跳转到指定行号:
Ctrl+G在一个文件的类、方法中跳转:
Ctrl+Shift+OCtrl+Shift+O+冒号 可对当前文件中的符号进行分类在多个文件中进行符号跳转:
Ctrl+T跳转到符号定义:
Ctrl+F12F12跳转到符号引用:
Shift+F12鼠标操作:
连续3次按下鼠标左键选中当前行连续4次按下鼠标左键选中当前文档所有文本选择行号可选中当前行选中文本+Alt 移动光标可复制选中段鼠标悬停+按住Ctrl 提示当前悬停位置的额外信息触发建议:
命令面板中输入"Trigger Suggest",默认快捷键为Ctrl+Space,修改为Alt+Enter跳转:跳转回上一次光标位置
Alt+Left,跳转到下一次光标位置Alt+Right,可通过命令跳转到上一次编辑所在位置粘贴:粘贴富文本
Ctrl+V,粘贴纯文本Ctrl+Shift+V选中当前行:
Ctrl+I自动补全:
- 函数签名预览:
Ctrl+Space - 函数参数预览:
Ctrl+Shift+Space - 自动补全:在设置中搜索
Editor.Suggest可修改编辑推荐参数 - 快速修复:绿色波浪线上点击
Ctrl+.
- 重构
- 重命名:
F2 - 鼠标选中可提取成单独的函数
- 代码片段
- 在命令面板中配置代码片段:
Configure User Snippets - 输入代码片段中的
prefix可提示代码片段,按Tab输出代码片段,再按Tab在占位符间切换,按Shift+Tab在占位符中反向切换。 - 代码片段占位符
{1:label},代码片段内置变量说明:https://code.visualstudio.com/docs/editor/userdefinedsnippets#_variables
- 代码折叠
- 折叠选中部分的括号:
Ctrl+Shift+[ - 递归折叠当前选中部分的括号:
Ctrl+K Ctrl+[ - 折叠所有可折叠的部分:
Ctrl+K Ctrl+0 - 展开所有可展开的部分:
Ctrl+K Ctrl+J - 标记折叠,不同语言有不同的折叠方式,请参考:https://code.visualstudio.com/docs/editor/codebasics#_folding
折叠标记和展开标记的快捷键分别是:
Ctrl+K Ctrl+8Ctrl+K Ctrl+9 - 小地图相关设置:
editor.minimap - 面包屑相关设置:
breadcrumbs.enabled
- 搜索
- 单文件搜索:
Ctrl+F(鼠标切换到搜索框)F3(鼠标停留在文本编辑页面)Shift+F3(反向跳转) - 搜索设置:
Alt+C(切换大小写)Alt+W(切换全词匹配)Alt+R(切换正则搜索) - 替换搜索:
Ctrl+HTab Shift+Tab(可在替换框中切换) - 多文件搜索:
Ctrl+Shift+F
- 编辑器设置
- 设置行号:
editor.lineNumbers - 渲染空格或制表符:
editor.renderWhitespace - 缩进竖线:
editor.renderIndentGuides - 行字符数量控制线:
"editor.rulers": [20] - 鼠标样式控制:
editor.cursorBlinkingeditor.cursorStyleeditor.cursorWidth - 选中行高亮显示:
editor.renderLineHighlight - 编辑器制表符和空格设置:
editor.detectIndentationeditor.insertSpaceseditor.tabSize - 代码格式自动校正:
editor.formatOnSaveeditor.formatOnType - 自动保存控制:
files.autoSavefiles.autoSaveDelay - 设置新建文件的默认格式:
files.defaultLanguage=markdown - 调整自动推荐时间间隔:
editor.quickSuggestionsDelay: 0
- 编辑器设置分类
- 光标渲染和多光标相关的设置:
editor cursor - 搜索相关的设置:
editor find - 字体相关的设置:
editor font - 代码格式化相关的设置:
editor fotmat - 自动补全、建议相关的设置:
editor suggest
- 命令面板
- 命令历史记录:
workbench.commandPalette.history - 命令面板打开时保留之前的输入:
workbench.commandPalette.preserveInput
- 多文件夹工作区
- 打开最近访问的文件或文件夹:
Ctrl+R
- 终端
- 切换终端:
Ctrl+` - 创建新终端:
Ctrl+Shift+` - 终端配置:
terminal.integrated - 向终端运行指定命令:
Run Active File In Active TerminalRun Selected Text In Active Terminal
- 工作流(WorkFlow)
- 自动运行任务:
Run Task - 配置任务:
Configure Taskhttps://code.visualstudio.com/docs/editor/tasks#_custom-tasks - 脚本执行结果分析:https://marketplace.visualstudio.com/search?term=problem%20matcher&target=VSCode&category=All%20categories&sortBy=Relevance 多行错误分析器https://code.visualstudio.com/docs/editor/tasks#_defining-a-multiline-problem-matcher
- 调试(Debug)
- 打开调试界面:
Ctrl+Shift+D program一般用于指定将要调试的文件。stopOnEntry,当调试器启动后,是否在第一行代码处暂停代码的执行。这个属性非常方便,如果没有设置断点而代码执行非常快的话,我们就会像文章的最开头那样,代码调试一闪而过,而设置了 stopOnEntry 后,代码会自动在第一行停下来,然后我们就可以继续我们的代码调试了。args参数。相信你应该记得在前面任务系统配置的文章里,我已经说明了可以使用 args 来控制传入任务脚本的参数,同样的,我们也可以通过 args 来把参数传给将要被调试的代码。env环境变量。大部分调试器都使用它来控制调试进程的特殊环境变量。cwd控制调试程序的工作目录。port是调试时使用的端 27。
- 工作区
- 拆分编辑器:
Ctrl+\Split Editor - 在编辑器组中快速跳转:
Ctrl+1Ctrl+2 - 切换垂直 / 水平编辑器布局:
Shift+Alt+0Flip Editor Group Layout - 专注模式:
Ctrl+BCtrl+JToggle Activity Bar VisibilityToggle Status Bar VisibilityToggle Zen ModeToggle Centered Layout - 缩放:
Ctrl+-/+View:Rest Zoom
- 快捷键设置
- 打开快捷键设置:
Open Keyboard Shortcuts - 设置 KeyBindings.json:有三个主要属性,
Key设置快捷键,Command对应的系统命令,When触发时机(详见:https://code.visualstudio.com/docs/getstarted/keybindings#_when-clause-contexts,如果想解除某个快捷键,只需要在 Command 的最前面加上-就可以覆盖默认设置。
- Json 支持
Json 是 VsCode 默认支持的语言,可通过
Json Schemas对 Json 的语法进行校验和智能提示,样例如下:
| |
- Markdown 支持
Markdown 也是 VsCode 的默认支持语言,可通过设置Markdown:Open Preview to the Side来打开预览,也可以指定css来替换预览的 css 样式,配置修改方式如下:
| |
Markdown 依旧可以使用符号、面包屑跳转、折叠等功能。
- html 支持
- Emmet 相关支持:
Emmet: 转制匹配对Emmet:移除标签Emmet:更新标签 - 选中代码后可进行包围输入:
Wrap with Abbreviation - 将 Emmet 不支持的语言映射为 Emmet 支持的语言可参考如下配置:
| |
- 自定义工作区样式
- 工作区样式设置统一在
workbench大类下 - 工作区样式的颜色设置在
workbench.colorCustomizations下,可以修改的颜色可参考https://code.visualstudio.com/docs/getstarted/theme-color-reference
- 插件
- Git 插件:
GitLens - Markdown 插件:
markdownlint,Markdown Preview Github Styling