【发布时间】:2019-11-14 00:06:25
【问题描述】:
基本上,已经有 cpptools 项目有一个 C/C++ 调试器,我想知道我是否可以在新扩展中使用它作为依赖项,并在新扩展中添加对另一种语言的支持覆盖任何东西需要在新语言的新扩展中被覆盖。还是 cpptools 调试器没有考虑到这一点?
【问题讨论】:
基本上,已经有 cpptools 项目有一个 C/C++ 调试器,我想知道我是否可以在新扩展中使用它作为依赖项,并在新扩展中添加对另一种语言的支持覆盖任何东西需要在新语言的新扩展中被覆盖。还是 cpptools 调试器没有考虑到这一点?
【问题讨论】:
扩展可以通过扩展 exports 工具扩展其他扩展的功能,但是在这种情况下,由于您想为不同于 C/C++ 的语言编写调试器,因此您应该编写将该语言引入 VS Code 的扩展(请参阅contribute a language 的方法),然后为该语言实现调试器。 VS Code 提供了启动调试器并让最终用户前进、设置断点等的工具......您可以实现这些操作对您的语言意味着什么。
请参阅VS Code Extension Guide: Debugger。它指的是一个工作示例:Mock Debugger。
理论上,您可以将此示例修改为您的语言,但是,在我看来,调试器协议和 API 本身是 VS Code(否则非常干净和可用)API 中最难的部分。
【讨论】: