[toc]
vscode 因为免费且相对好用, 又有丰富的插件, 所以不可避免的要用到它. 但是对于习惯了 idea 的用户来说, 习惯 vscode 还是挺难的, 两套快捷键都各有优势, 因此就需要自己设置一套”兼容”的配置, 让写代码的体验升级.
使用安装命令行
- 在 vs code 中使用 cmd + shift + p 打开命令面板
- 搜索shell 可以看到: 在 PATH 中安装 “Code” 命令并执行,然后重启终端iterm
- 使用which code 可以看到code的安装地址
- 使用code –help可以看到帮助
- 使用code -r 打开已经打开过的窗口
mac环境下的快捷设置
都需要先打开命令面板搜索: keyboard shortcuts
修改代码跟进
搜索: go to definition
改成: command+n
注意: go to implementations 也改为 command+b, 但是此时会出现冲突的情况.
因此需要在这里设置 go to implementations 的 when 条件, 以实现兼容.
注意2: 用了一段时间发现这种冲突的快捷键好像很难兼容, 时灵时不灵, 最后将跳转到定义改为了command+n, 键位很接近.
editorHasImplementationProvider && editorTextFocus && !editorHasDefinitionProvider && !isInEmbeddedEditor"
修改跟进返回
这里其实只是返回到上一步, 但是曲线实现了跟进的返回 搜索: go back / go forward
改为: command+[
拷贝路径
搜: copy path, 找到copyRelativeFilePath
改为: shift+command+c
mac环境vim normal模式自动切换到英文/输入法问题(vscode)
参考: https://github.com/VSCodeVim/Vim#input-method
1.clone im-select 工具
git clone [git@github.com](mailto:git@github.com):daipeihust/im-select.git
2.按照里面的install-mac.sh脚本, 将对应的bin文件复制到系统的/usr/local/bin下,并修改权限为777.
注意: 这里需要sudo权限
cd im-select-mac/out/
sudo mv im-select /usr/local/bin
chmod 777 /usr/local/bin/im-select
3.运行命令检查是否成功
im-select
4.设置vscode的settings.json
"vim.autoSwitchInputMethod.enable": true,
"vim.autoSwitchInputMethod.defaultIM": "com.apple.keylayout.ABC",
"vim.autoSwitchInputMethod.obtainIMCmd": "/usr/local/bin/im-select",
"vim.autoSwitchInputMethod.switchIMCmd": "/usr/local/bin/im-select {im}"
完成!
mac环境打开 内置terminal
command+shift+p 输入: create integrated terminal
以后只要输入命令单词首字母缩写(如 cit 或者 it )或者从历史命令里选择即可.
内置terminal的小配置
settings.json中添加如下配置
"terminal.external.osxExec": "iTerm.app",
"terminal.integrated.copyOnSelection": true,
"terminal.integrated.scrollback": 150000,
按名字打开文件
command+p
收起/隐藏侧边栏
搜索: toggle side bar visibility
改为: shift+command+b
进入zen模式
英文模式输入下, 先按下 command+k 然后松开组合键, 再按 z 即可进入或者退出 zen 模式
收起/隐藏terminal
搜索: toggle panel
默认: command+j
切换项目(window)
搜索: ctrl+w ( switch window)
操作: 删除vim对这个快捷键的映射
vim风格半页滚动
ctrl+d/u
展开/隐藏代码块
搜索: fold / unfold
默认: command+option+[ 或者 ]
注: 搜索 fold可以看到不同粒度的fold
其中可以看到比如 command k command j 这种命令, 其实很好理解, 就是通过 command+k 进入到第二层快捷键, 然后在第二层里输入 command+j 即可.
vim模式yarn到系统剪贴板
控制面板: settings
json中添加:
"vim.useSystemClipboard": true,
打开/隐藏侧边文件目录
这里是默认的
搜索: show explorer
打开: command+shift+e
隐藏: 采用的是全局隐藏快捷键, 见上面的 #收起/隐藏侧边栏
打开/隐藏侧边搜索
这里是默认的
搜索: search
打开: command+shift+f
隐藏: 见#收起/隐藏侧边栏
重新加载vscode/页面
当新安装插件或者有些奇特问题发生时, 可能需要关闭重启vscode, 如何直接reload?
打开: command+shift+p
搜索: reload
vim 翻半页
默认的vim插件安装后的翻页功能默认是ctrl+d/u, ctrl需要用手掌触发或者用小拇指, 其实效率不高的
搜索: vim ctrl u / vim ctrl d
改为: command+u / command+d
注: 按需要将其他 command+u/d 的命令都删掉.
Go插件自动填充struct字段
安装了go插件后可以实现自动填充结构体,在创建response或者model的时候很常用, 采用默认即可 默认: command+. 会自动弹出quick fix, 回车即可.
隐藏/显示文件当前位置
不知道怎么描述可以方便日后快速理解这个操作是什么意思, 简单来说就是很长的文件右侧会有一个概览, 可以知道当前页面在整个文件中的哪一块, 这个东西长期显示, 对于长代码会有遮挡. 搜索: minimap 改为: command+shift+L
当前行上移/下移
其实本身的option+up/down也是很好用的, 但是还是和idea保持一致比较好 搜索: move line up/down 改为: shift+command+up/down
rename symbol 变量重命名
由于我的键盘是64键,没有f区, 因此f2的重命名快捷键不再可用 搜索: rename symbol 改为: shift+command+r
多行tab展示
默认的tab页只展示一行, 当标签过多时无法看清楚其他行内容, 可以在settings.json
中加入如下配置:
"workbench.editor.wrapTabs": true,
搜索过滤特定文件名或后缀
search 下点开箭头可以看到包含和不包含两个文本框.
其中通过逗号间隔可以配置多条规则, 比如: 不包含pb
和test
的文件
# files to exclude
*pb*, *test*
文件查找
command+F
可以进行文件查找, 回车键可以向下跳转, shift+回车键可以向上跳转
tab页切换/termianl切换
搜索: View: Open Previous/Next Editor 改为: command+shift+[/]
搜索: focus Previous/Next Terminal 也一样改为上面的快捷键
[推荐插件]
- Better commennt
- GitLens
- Learn Vim
- Tabnine
- vim
- Zhihu On vscode
- Better date_to_xmlschema
不定期更新, 尽情期待..