使用Launch Compound调试时,如何自定义终端名称?
给VS Code Launch Compound的终端设置自定义名称
我太懂这种被一堆同名终端搞崩溃的感觉了——4个一模一样的终端窗口摆在那儿,根本分不清哪个对应哪个调试会话,查问题的时候简直头大。别担心,VS Code早就考虑到这个需求了,咱们只需要在launch.json里给每个启动配置加个小属性就能解决:
核心解决方案:添加terminalName配置项
在你的每个调试会话配置中,除了"console": "integratedTerminal",再加上"terminalName"字段,给每个终端指定独一无二的名称。这样启动复合任务时,每个调试会话都会对应一个带自定义名称的终端,再也不会混淆了。
举个实际的配置例子:
{ "version": "0.2.0", "configurations": [ { "name": "Debug Session 1", "type": "node", "request": "launch", "program": "${workspaceFolder}/src/app1.js", "console": "integratedTerminal", "terminalName": "App 1 调试终端" }, { "name": "Debug Session 2", "type": "node", "request": "launch", "program": "${workspaceFolder}/src/app2.js", "console": "integratedTerminal", "terminalName": "App 2 调试终端" }, { "name": "Debug Session 3", "type": "node", "request": "launch", "program": "${workspaceFolder}/src/app3.js", "console": "integratedTerminal", "terminalName": "App 3 调试终端" }, { "name": "Debug Session 4", "type": "node", "request": "launch", "program": "${workspaceFolder}/src/app4.js", "console": "integratedTerminal", "terminalName": "App 4 调试终端" } ], "compounds": [ { "name": "Launch All Sessions", "configurations": ["Debug Session 1", "Debug Session 2", "Debug Session 3", "Debug Session 4"] } ] }
更灵活的变量替换技巧
如果你不想手动给每个终端起名,还可以用VS Code的变量替换功能,直接复用启动配置的名称:
"terminalName": "${config:name} 终端"
这样每个终端的名称会自动变成Debug Session 1 终端、Debug Session 2 终端,既统一又省心,还不会出错。
关于终端复用的补充
如果后续你想让多个调试会话共享同一个终端(比如输出可以混在一起的场景),只需要把它们的terminalName设为同一个值就行——VS Code会自动复用这个终端,而不是新建窗口。不过对于你现在的场景,显然每个会话用独立命名的终端更合适。
内容的提问来源于stack exchange,提问作者Oliver Salzburg
相关产品推荐
相关产品推荐

