Windows下VS Code指定终端配置快捷键及按文件类型适配问题
VS Code 配置快捷键打开指定终端(PowerShell/WSL)
一、单独快捷键打开当前目录的WSL终端
你之前尝试的runCommands写法错误,因为无法直接在命令数组中修改配置项。正确做法是使用workbench.action.terminal.newWithProfile命令,直接指定WSL终端配置和当前文件目录:
{ "key": "ctrl+alt+t", "command": "workbench.action.terminal.newWithProfile", "args": { "profileName": "WSL", "cwd": "${fileDirname}" } }
注意:profileName需与你VS Code中WSL终端的配置名称一致,比如你的WSL终端配置名为"Ubuntu",则替换为对应名称。
二、根据文件类型自动切换终端(保留同一快捷键)
要实现.py文件打开PowerShell、.rb文件打开WSL终端的需求,只需给alt+t快捷键添加多组绑定,通过when条件区分文件类型:
// Python文件打开PowerShell终端 { "key": "alt+t", "command": "workbench.action.terminal.newWithProfile", "args": { "profileName": "PowerShell", "cwd": "${fileDirname}" }, "when": "editorLangId == python" }, // Ruby文件打开WSL终端 { "key": "alt+t", "command": "workbench.action.terminal.newWithProfile", "args": { "profileName": "WSL", "cwd": "${fileDirname}" }, "when": "editorLangId == ruby" }, // 其他文件使用默认终端(可选,保留原有逻辑) { "key": "alt+t", "command": "workbench.action.terminal.newWithCwd", "args": { "cwd": "${fileDirname}" }, "when": "editorLangId != python && editorLangId != ruby" }
这里的editorLangId对应文件的语言标识,python对应.py文件,ruby对应.rb文件。同样,profileName要和你终端配置中的名称匹配。
内容的提问来源于stack exchange,提问作者aavneri
相关产品推荐
相关产品推荐

