13

我常用的工具是在 Linux 系统上使用 g++ 的 Emacs 来实现我的研究算法。在过去的几年里,我以相当基本的方式使用 emacs。我打开 C 或 C++ 文件,使用我选择的语法突出显示方案对其进行编辑,然后从 emacs(或者可能从终端)中编译和执行其他操作,包括在 emacs 中使用 gdb 进行调试。我了解 etags 和 ctags,并且玩过 etags 和 emacs,但似乎没有找到使用这些工具的“最佳位置”。

我想知道,其他人如何配置 emacs 以使其与 etags 和其他工具很好地结合?需要对 emacs 进行哪些调整才能使其成为更好的 IDE?

4

2 回答 2

16

对于标记信息,我还推荐GNU Global。CScope 也可以做很多事情。在这两种情况下,它们都提供了一种按名称查找标签位置的方法,以及特定标签的用途。

对于“IDE Stuff”,它不仅仅是一个标记系统。为此,我推荐用于 Emacs 的CEDET工具集。这提供了一个项目管理系统 (EDE),它可以创建 Makefile 来为您编译代码。还有一个解析和代码分析部分(语义)提供智能完成。有一个模板/代码生成系统(SRecode)可以将标签从语义转换回代码。甚至还有一个 UML 图编辑器 (COGRE),它可以从您在 Emacs 中绘制的类图生成代码。

大多数使用 CEDET 的人只使用解析器和智能补全系统,可能与ECB结合使用,并且只使用 CEDET 的一个子集是可以的。

为了更好地衡量,CEDET 还将与 GNU Global 数据库集成,因此您可以参考符号使用以及标记位置以及 Emacs 的常规 GNU Global 接口。

于 2009-10-21T04:11:37.617 回答
3

我们最近开始使用GNU Global作为 etags 的替代品,这给我留下了深刻的印象。我们还使用idutils,它提供了一种在源代码中搜索任何字符串的快速方法。

于 2009-10-21T02:41:42.933 回答