能否实现VS Code终端模拟器与编辑器工作目录同步?
在VS Code中实现切换编辑器时终端自动切换到当前文件目录
当然可以实现!我之前从Emacs转过来的时候也特意找过这个功能,折腾出两种好用的方案,分享给你:
方案一:用VS Code内置功能(无需插件)
这种方法不用额外装插件,靠快捷键绑定就能实现:
- 打开键盘快捷方式设置:按下
Ctrl+K Ctrl+S(Windows/Linux)或者Cmd+K Cmd+S(Mac) - 在搜索框输入
workbench.action.terminal.sendSequence,找到这个命令 - 点击旁边的铅笔图标添加自定义快捷键,比如我绑定的是
Ctrl+Shift+C(你可以选自己顺手的组合) - 在弹出的编辑框里,把
args改成下面的内容:{ "text": "cd \"${fileDirname}\"\n" } - 保存设置后,只要你在编辑器里打开某个文件,按下绑定的快捷键,终端就会自动切换到当前文件所在的目录了。
方案二:用插件实现自动切换(无需手动触发)
如果你希望切换编辑器时自动切换终端目录,不用手动按快捷键,推荐用插件:
- 在VS Code扩展商店搜索
Terminal Here并安装 - 安装完成后,默认就会在你切换活动编辑器(打开不同文件)时,自动把终端的工作目录切换到当前文件所在的路径
- 如果没自动生效,你可以右键点击编辑器空白处或者左侧文件树里的文件,选择「Open Terminal Here」手动触发;也可以去插件的设置面板,开启「Auto Switch Terminal Directory When Active Editor Changes」这类选项(不同版本的插件选项名可能略有差异,找类似的就行)
我自己平时用的是方案一,不用装插件更清爽;如果嫌手动按快捷键麻烦,方案二的自动切换就很省心,看你的需求选就行~
内容的提问来源于stack exchange,提问作者johnbendi
相关产品推荐
相关产品推荐

