VS Code 原生支持精准定位到当前文件目录打开终端:先保存文件(Ctrl+S),再右键编辑器标签页选择“Open in Integrated Terminal”;未保存或路径无效时终端默认打开在用户主目录。

怎么快速打开当前文件的终端?不是新建终端,是精准定位到该文件所在目录
VS Code 原生支持直接在当前文件路径下唤起终端,但很多人误以为只能靠插件或手动 cd。关键是用对快捷键,而不是点「新建终端」。
- Windows/Linux:按
Ctrl+Shift+P打开命令面板,输入Terminal: Create New Terminal—— 这个命令默认就在当前工作区根目录启动;真正要的是Terminal: Create New Terminal (In Active Workspace),但它和前者行为一致,区别在于「当前活动编辑器」是否已保存且有真实路径 - 更可靠的做法:确保文件已保存(哪怕只是 Ctrl+S),然后右键编辑器标签页 → 选
Open in Integrated Terminal(该菜单项仅在文件有真实磁盘路径时出现) - 容易踩的坑:
Untitled-1类未保存文件、通过vscode://协议打开的远程文件、WSL 窗口里没挂载好 Windows 路径,都会导致终端默认落到用户主目录,而非你期望的位置
为什么 editor.suggest.showMethods 设为 false 后补全还是弹出函数?
这个设置只控制「方法(methods)」是否出现在补全列表里,但 VS Code 的补全来源不止一个:语言服务器(如 TypeScript Server)、词法补全(document symbols)、以及用户 snippets。关掉它,不等于关掉所有函数建议。
- 真正想屏蔽函数级补全,得配合调整
editor.suggest.showFunctions(注意是Functions,不是Methods) - 如果你用的是 TypeScript/JavaScript,
typescript.preferences.includePackageJsonAutoImports开启时,即使关了函数提示,导入语句里仍会推荐包导出的函数——这是语言服务行为,和编辑器补全设置无关 - 性能影响:关太多
show*项会让补全变“瘦”,但可能漏掉有用项;比如关了showConstructors,类名后敲new就不再提示构造函数
workbench.editor.enablePreview 关掉之后,为什么双击文件还是只预览不常驻?
这个配置控制的是“单击打开是否预览”,但 VS Code 从 1.84 开始把“双击”行为也统一进了预览逻辑。关掉它,只影响单击;双击默认仍走预览流,除非你改另一个隐藏开关。
- 真正让双击强制常驻:在
settings.json里加"workbench.editor.enablePreviewFromQuickOpen": false,同时确保"workbench.editor.enablePreview"为false - 常见误解:以为改了
workbench.editor.closeEmptyGroups或workbench.editor.revealIfOpen能影响预览行为——它们管的是标签页分组和聚焦逻辑,和预览本身无关 - 兼容性注意:某些主题或自定义图标包(如 Material Icon Theme)会根据文件是否“预览态”改变图标透明度,关掉预览后这些视觉反馈就消失了,可能让你误判文件是否已被打开
如何不用插件,直接用原生命令给当前行加断点?
VS Code 调试侧边栏的红点是 UI 层,但底层断点操作完全暴露在命令系统里,Debugger: Toggle Breakpoint 是唯一需要记住的命令。
- 快捷键:默认是
F9,无论光标在行内任意位置,按一次就在这行加断点;再按一次取消。不需要选中整行,也不依赖语言模式 - 进阶用法:按
Ctrl+Shift+P输入Toggle Breakpoint,命令面板会显示带括号的说明,比如Debugger: Toggle Breakpoint (line 42),说明它真正在操作哪一行 - 容易踩的坑:如果当前文件没被调试器识别(比如没配
launch.json、或调试器没启动),F9会静默失败,不报错也不提示——这时断点其实是加在“临时断点池”里,等调试器就绪后才同步。可检查左下角状态栏是否有「断点已启用」提示
这些功能都藏在设置项、命令面板或右键菜单里,没有文档专门归类为“隐藏功能”,而是分散在不同上下文里。最麻烦的不是找不到,是改了某个配置后,发现它只在特定语言、特定调试状态下生效,或者被另一个同名但作用域不同的设置覆盖了。


















