VSCode启动配置的键盘快捷方式

30
在vscode中,我有一个包含多个配置的launch.json文件。是否有办法为特定的配置分配键盘快捷键?我没有找到相关信息,谢谢!
2个回答

33

几乎可以,但不完全一样。

据我所知,没有VSCode命令可以启动给定的启动配置文件。

您可以将键盘快捷方式指向workbench.action.debug.selectandstart命令,这将弹出一个对话框,供您选择配置文件并按Enter键。实际上,这可以非常快地完成,因为您只需要输入启动配置文件的前两个字母或使用方向箭头即可。

screengrab

要启用此功能,请按Ctrl+kCtrl+s(至少在Windows上默认快捷键,如果此快捷键不起作用,您可以在命令面板中搜索“键绑定”)。

搜索workbench.action.debug.selectandstart命令,然后右键单击或单击编辑图标以更改按键绑定:

screengrab2


@Mark 不在最新的(1.42.1)Windows版本中。 - Tazaf

15
更新:我刚刚创建了一个扩展程序Launch Configs,它允许您为launch.json中的任何启动配置设置按键绑定。如果需要,可以为不同的启动配置设置多个按键绑定。示例设置(在您的settings.json中):
 "launches": {

  "RunNodeCurrentFile": "Launch File",
  "RunCompound1": "Launch file and start chrome"
},

使用这个扩展程序,你可以将你想要运行/调试的launch.json配置文件中的值设置为name。然后在你的keybindings.json中设置按键绑定来触发这些配置。

{
  "key": "alt+f",
  "command": "launches.RunNodeCurrentFile"
},
{
  "key": "alt+g",
  "command": "launches.RunCompound1"
}

请查看我的回答:https://github.com/microsoft/vscode/issues/97921 这个快捷键有效:
{
  "key": "alt+j",                            // whatever keybinding you like
  "command": "debug.startFromConfig",
  "args": {
      "type": "node",
      "request": "launch",
      "name": "First Debugger",
      "program": "${workspaceFolder}/test.js",
      "console": "integratedTerminal",
      //"preLaunchTask": "echo Builtin Variables"  // can't get it to find a pre-launch task
  }
}

但很遗憾,不能简单地通过引用现有的配置文件launch.json来实现-例如,通过name。所引用的配置文件-这里是First Debugger,可以存在于您的launch.json中,但不一定要存在。无论如何,所有的args都必须出现在您的键绑定中。


当在settings.json中全局创建配置项(例如"launch": {})时,扩展无法正常工作。 - MohitGhodasara
我指的是用于添加全局配置的“launch”键。在那之后,你就不需要将 launch.json 添加到你的项目中了。 - MohitGhodasara
@Mark 谢谢您的扩展。我已经使用launch.json中的两个不同配置使其工作,但两次都是开始调试。如何使用该配置而不进行调试来运行它? - azureai
@azureai 似乎您想要添加运行此命令的选项:workbench.action.debug.run,而不是 启动/停止/重新启动调试 选项? - Mark
@Mark 抱歉,我不知道你的意思。我只是想运行Python文件而不是调试它。调试很慢,会在断点处停止;而运行则很快。我已经在settings.json中添加了"launches": {"RunExperiment": "Run my_file.py"},并且"Run my_file.py"也是我的launch.json配置中的名称。我还添加了相应的热键。现在我点击热键,VSCode开始调试并在断点处停止。我需要做什么更改才能运行而不是调试?我对VSCode还不熟悉,在PyCharm中更容易操作。 - azureai
显示剩余4条评论

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接