我正在准备制作一个小型 IDE,允许在调用它们的地方将函数/宏调用扩展为其定义(如果需要,可以递归地执行此操作,这样如果函数 A 调用 B,我就会扩展 B,然后 B 调用 C - 我在 B 的代码中扩展 C 等):
问题 1:您知道现有的 IDE 具有此功能吗?
问题2:您将如何实现?我的方法如下:我希望IDE能够理解各种编程语言。为了提取函数定义,我似乎必须使用解析器。是否有各种语言的解析器集合?我研究了 Ctags 和 Pygments 词法分析器,但它们的输出不足以完成此任务。
IDE 的首选语言是 Python(尽管 Java 和 C 建议也可以)、图形库 - gtk+2。谢谢。
最佳答案
Question 1: do you know of existing IDEs with this feature?
也许不完全是你所描述的那样,但 Visual Studio 的代码定义窗口显示当前光标位置处任何符号的定义。当然,它的不同之处在于它在编辑器窗口的单独窗口中显示定义,但说实话,我会发现您的主张有些刺耳且违反直觉,因为调用在语义上不是内联的。
关于python - 寻找解析器集合来提取函数/类定义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14413100/