一些常用的快捷操作以及vsc自带的功能
 
注:
1.某些软件快捷键会有冲突 例如搜狗输入法调起软键盘,显卡旋转屏幕等,遇到问题解决冲突
2.以下针对不同系统和台机或笔记本的按键区别用/代替,顺序是windows系统台机/windows系统笔记本/Mac 或 windows系统/Mac
光标移动
- 针对单词的光标移动: - Ctrl/Cmd + 左右方向键
- 光标移动到行首或行末 - Windows: - 台机: - Home行首 End行末
- 笔记本: - Fn + 左右方向键
 
- Mac: - Cmd + 左右方向键
 
- 光标代码块始末移动(花括号始末之间跳转): - Ctrl/Cmd + Shift + \
- 光标移动到文档首尾 - Windows:- 台机:Ctrl + Home/End
- 笔记本:Alt + 左右方向键
 
- 台机:
- Mac: Cmd + 上下方向键
 
- Windows:
创建多个光标
可用于一些批量处理的操作
- Alt/Cmd + 鼠标左键:按着按键鼠标点击想要创建光标的位置,可生成多个光标
- Ctrl/Cmd + Alt/Option + 上下方向键:以当前光标的位置纵向创建多个光标(可配合光标移动到行首行位进行批量操)- 与系统快捷键翻转屏幕有冲突,需要先自行处理再使用
- Alt/Option + Shift + i: 选中内容的最后创建光标,选中多行则多个
- 鼠标中键按住拖动
文本选择
- 纯键盘操作:以上1.1的操作 + Shift 就可以完成对应的文本选择
- 纯鼠标的操作: - 自由选择
- 点两下会选中当前单词,点三下选中当前行,点四下选中当前文档
- 拖动左边行号选中多行
 
- 同时选中多个相同内容:选中内容 => - Ctrl + D(多次按键则选中多个)
当前行的操作
- 删除当前行: Ctrl/Cmd + Shift + K
- 剪切当前行: Ctrl/Cmd + X
- 从当前行无论光标在什么位置,新开一行 - 向下新开一行:Ctrl/Cmd + Enter
- 向上新开一行:Ctrl/Cmd + Shift + Enter
 
- 向下新开一行:
- 移动当前行: - Alt/Option + 上下方向键
- 复制同时移动当前行:Alt/Option + Shift + 上下方向键
####注释
- 注释一行:Ctrl/Cmd + /
- 选中注释:Alt/Option + A
一个窗口多个编辑窗口
最多三个:Ctrl/Cmd + \
跳转到文档指定行数
Ctrl/Cmd + G 输入将要跳转的行数,执行即可
跳转到指定文件的指定行数
结合以上两个 Ctrl/Cmd + P 输入文件名接着输入:和指定行数
跳转到指定声明、类、函数
Ctrl/Cmd + Shift + O:使用方向键选择或搜索然后回车即可
代码格式化
可搭配格式化插件及个性化设置 推荐Prettier
- 整个文档格式化:Alt/Option + Shift + F
- 选中内容格式化: Ctrl/Cmd + K Ctrl/Cmd + F
鼠标拖动
- 选中一行或多行,鼠标左键按住拖动到松手位置
- 选中内容按住Ctrl/Option拖动,可以将内容复制粘贴到松手位置
搜索与替换
搜索栏后面的三个小图标为匹配规则
- 单文件搜索 - Ctrl/Cmd + F输入搜索内容
- 选中内容再Ctrl/Cmd + F
 
- 多文件搜索:左侧边栏小搜索图标 
查看引用及跳转
Shift + F12:显示引用列表(在一个 js 文件里 export 了一个函数,在另外一个文件里引用了它但是 shift + F12 找不到,那么可以在这个项目下添加一个 jsconfig.json 文件,这个文件会让 VSCode 知道,当前这个文件夹下的文件都是属于同一个项目的,从而进行索引)配置参考
自定义快捷键
Ctrl/Cmd + Shift + P可以打开命令面板并搜索”打开键盘快捷方式”回车,可自定义快捷键
字符大小写转换
Ctrl/Cmd + Shift + P打开命令面板 搜索 "转换为大写" 或 “转换为小写” 运行即可
按照字母进行 行排序
感觉这个用不太到 hhh
Ctrl/Cmd + Shift + P打开命令面板 搜索 "按升序排列行" 或 “按降序排列行” 运行即可
打开文件过多时跳转到指定文件
Ctrl/Cmd + P: 可查看和搜索最近打开过的文件进行跳转 还未跳转前,Ctrl/Cmd + Enter 可以多窗口打开此文件
代码片段
Ctrl/Cmd + Shift + P打开命令面板 搜索 "配置用户代码片段"
选择语言我以vue.json为例,回车后会显示十几行被注释的内容,取消注释就是这样了
| 1 | { | 
$1光标位置
$2占位符 Tab后光标的位置
${1:label} label为自定义内容并会被选中
 
        