如何在vscode的扩展中调用其他扩展

时间:2019-06-04 10:15:07

标签: visual-studio-code

这是我的需求,我想使用一些动态参数启动调试会话。 因此,我需要开发一个扩展程序,该扩展程序首先收集参数,然后将调试程序包装器注册到vscode,然后我必须找到一种方法来使用我的参数调用目标扩展程序的调试器。

vscode.extensions.getExtension可以获取扩展的信息,并且只能将其激活。

我在vscode的源代码中找到了一个名为“ debug.startFromConfig”的命令,因此我可以使用vscode.commands.executeCommand以自己的配置执行该命令。 但是不幸的是,我不能在调试适配器上使用vscode的api,因为它不是仅由一个节点编程的扩展主机。

以下是我所期望的,我有一个名为asd的调试器包装器 debugger description

然后我将使用自己的调试器覆盖python调试器的某些配置(以下代码无法使用,我在上面进行了解释) code

之后,我可以运行我的自定义调试器来调用python调试器 result

1 个答案:

答案 0 :(得分:0)

为什么不使用官方的startDebugging扩展API?请参阅https://github.com/microsoft/vscode/blob/31221e62995c7040400051c2353c3c7c8b303c16/src/vs/vscode.d.ts#L8874

或者,您可以为感兴趣的调试类型注册DebugConfigurationProvider并拦截“ resolveDebugConfiguration”方法,以便动态地调整启动配置。请参阅https://github.com/microsoft/vscode/blob/31221e62995c7040400051c2353c3c7c8b303c16/src/vs/vscode.d.ts#L8544

是的,vscode.d.ts是你的朋友...