【问题标题】:VS Code linking launch configuration to commands from command palleteVSCode 将启动配置链接到命令面板中的命令
【发布时间】:2025-12-17 10:20:08
【问题描述】:

我正在尝试制作一个 VS Code 扩展,其中 launch.json 将具有链接到命令面板的启动配置。

具体来说,我已经使用vscode.commands.registerCommand("CommandA") 注册了命令。有没有办法让launch.json指向“CommandA”?

编辑:我基本上希望 从 package.json 运行命令

【问题讨论】:

  • 让任何命令显示在命令面板中的唯一方法是将其作为贡献命令放在扩展程序的package.json 中。因此,您必须阅读配置并使用每个命令更新package.json。这需要重新加载。您可以查看我为一种方法编写的 Command Alias 扩展。
  • lauch.json 适用于终端(调试器)中发生的所有事情。您认为 CLI 命令如何执行某些 VSC 命令。也许你可以在一个扩展中监控终端内容,并通过扩展执行命令
  • 你可以为使用${input}变量的启动添加参数,这可以调用任何VSC命令并且命令的结果将是变量结果
  • @rioV8 有一个命令vscode.debug.startDebugging() 可以用来启动任何配置。我在Launch Configs 扩展中广泛使用它。所以这部分很容易。我只是懒得把它们变成package.json 命令,这也很容易——见Command Alias 扩展。我从键绑定触发启动配置,但如果我选择将它们放入 package.json 贡献的命令,也可以来自命令面板。所以这绝对是可行的。
  • @Mark 是的,从launch.jsonpackage.json 是可行的,但我现在的主要问题是将package.json 贡献的命令转换为launch.json。例如,我是否可以在launch.json 配置中调用package.json 贡献的命令“CommandA”?

标签: json typescript visual-studio-code vscode-extensions


【解决方案1】:

您可以使用命令变量让启动配置从命令面板运行已注册的命令。

【讨论】: