玩转VS Code

4,835 阅读5分钟
~工欲善其事 必先利其器~

(快捷键操作针对 windows,括号里是针对 macOS)

学习新的编辑器方法:

第一步:了解编辑器的快捷键和语言支持,快捷键值得多花时间;
第二步:开始挑剔编辑器的其他组件,但凡是跟自己的工作习惯或者工作流不匹配的,就会想办法换掉它,这是个做减法的过程;
第三步:最后一步,就是自己学习写插件了,编辑器本身的功能和社区不能够完全满足自己的需求,本着“麻烦别人不如磨炼自己”的精神,我开始自己动手。

这个过程可以作为一个通用的学习新工具的方法。下面是我整理的日常工作中用到的快捷键和一些插件(一些常用的插件就没有整理)。

code 命令行

code --help 打印命令行所支持的所有参数;
code 命令后加上文件或文件夹的地址,vscode 会在一个新窗口打开这个文件或文件夹;
code 命令后添加参数-r 可以进行窗口的复用;
code -r -g 文件名:行数 打开某个文件并自动跳到某一行;
code -r -d 文件 1 文件 2 比较两个文件的内容;
ls | code -r - 在编辑器里显示当前项目目录下所有的文件名;

基本键盘操作

Ctrl(Option) 键搭配方向键,home,end 主要是针对光标的移动;
shift 键搭配方向键,home,end 主要是针对文本的选择;

快捷键进阶

ctrl+shift+k (Cmd+shift+k) 删除当前代码行;
ctrl+x/c/v (Cmd+x/c/v) 剪切/复制/粘贴当前代码行;
ctrl+enter/ctrl+shift+enter(Cmd+enter/Cmd+shift+enter) 在当前行的下面或者上面开始一段新的代码;
Alt+上下方向键(Option+上下方向键) 上下移动当前行。如果同时按住 shift,则是上下复制当前行;
Alt+shift+f(Option+shift+f) 对整个文档进行格式化(插件也可以);
ctrl+shift+p —— 转置游标处的字符(ctrl+t) 调换字符位置;
ctrl+shift+p —— 转换为大写/小写 调整字符大小写;
ctrl+shift+p —— 合并行(ctrl+j) 合并代码行;
ctrl+shift+p —— 按升/降序排列行;
ctrl+u(cmd+u)撤销光标的移动和选择;
小技巧
 (1).批量重命名:选中变量/方法名,按 f2,编辑新名字。所有相关的实例名字都会被修改。

!多光标

按住 alt(option)点击,可以创建多个光标;
选中第一个后,按 ctrl+D(cmd+D) 处理多次出现的相同内容;

文件,符号,代码之间跳转

ctrl+shift+o(cmd+shift+o)当前文件里所有符号。在@后输入:会将所有符号进行分类;
ctrl+t(cmd+t) 在所有打开的文件中搜索符号;
ctrl/F12 跳转到函数定义的位置;
shift+f12 打开函数引用预览;

书写 code snippet(代码片段)

代码片段:将一段常用代码抽象成模板。直接调用即可。
1. ctrl+shift+p 打开命令面板,搜索“配置用户代码片段”回车打开。在列表选择语言;eg:JavaScript
2. 这时打开一个下图的 JSON 文件,我们把 7-14 行取消注释。


必须要有“prefix”前缀和“body”内容这两个属性.“description”不是必须的。
3. Tab Stop -------$1,$2。意思是当我们按下 Tab 键之后,光标移动到的位置。默认移到\$1。shift+tab 移到上一个 tab stop 的位置。


4. 占位符。${1:label},在这个格式下,$1 的位置处会预先填入 label 这个值,并且选中。


5. 多光标。在代码片段的多个位置使用同样的 tab stop。使用代码片段是就会出现多个光标。


6. 预设变量。eg:在某个位置使用剪切板的内容,那个位置写上$CLIPBOARD就可以了。放在tab stop中 语法是 ${1:\$CLIPBOARD}。

代码折叠,小地图,面包屑

1. 代码折叠不用说了,就是通过控制每段代码块前面的+/-,来实现代码的折叠。说一下它的快捷键。<br>折叠:ctrl+shift+左方括号(cmd+option+左方括号),当前光标所处的最内层,可以被折叠的代码就会被折叠起来;ctrl+k,ctrl+0(cmd+k,cmd+0),当前文件里所有可以被折叠的代码一次性全部折叠起来。<br>展开:ctrl+shift+右方括号(cmd+option+右方括号),展开最内层,可以被展开的代码块;ctrl+k,ctrl+j(cmd+k,cmd+j),当前文件里所有可以被展开的代码一次性全部展开。
 基于语言定义代码折叠:(通过下图的方式包裹要折叠的代码块)


2. 小地图和面包屑

工作区常用快捷键


Markdown

1. 如今 Markdown 已经成为主流的文档书写语言。在 VS Code 中书写 Markdown 时,VS Code 提供了语法高亮和侧边预览的效果。
2. 前面介绍过如何在符号中快速跳转,这个功能在 Markdown 中更加方便。可以通过符号,快速的在不同的章节直接进行跳转。


当然如果你打开了面包屑功能的话,你也可以通过面包屑工具栏跳转。

插件整理

1. Auto Close Tag------------自动闭合html标签;
2. Auto Rename Tag --------修改html标签时,自动修改匹配的标签;
3. Code Spell Checker ------单词拼写检查;
4. Copy Relative Path -------获取文件相对路径;
5. Bracket Pair Colorizer ----使用颜色标识匹配的括号。当你拥有深层嵌套的对象或函数是,这个插件非常有用;
6. GitLens --------------------单击代码行就可以看到编辑它的人,时间,提交的内容;
7. Code Runner -------------------代码片段运行调试,支持多种语言;
8. Remove Comments -------一键删除当前文件的注释,支持40多种语言;
9. Image preview -------------实现图片预览功能;

10. Reactjs code snippets -----React代码片段;


11. cssrem -----------------------css值转rem;

12. SCCopy---------------------- 复制粘贴管理器,可通过ctrl +1,ctrl +2,ctrl +3...以此类推,复制多个,粘贴则是Alt+1,Alt+2,Alt+3...一一对应粘贴的内容。

 结语

欢迎各位指正和补充,谢谢。