【问题标题】:code browsing, refactoring, auto completion in EmacsEmacs 中的代码浏览、重构、自动完成
【发布时间】:2010-10-14 20:36:49
【问题描述】:

我最近切换到 Emacs,但仍在寻找解决方法。 我用 C++ 编写代码,想知道有哪些工具可以扩展 Emacs 以支持代码浏览(查找符号等)、重构和代码完成。 我听说过:

  • cedet
  • 电子标签
  • cscope

但我对自己需要什么感到很困惑。有些地方说 cedet 提供了所有功能,但其他地方说我需要调用 etags 才能使 cedet 正常工作。

有人可以帮我解决这个问题吗?我需要所有这些工具吗?

【问题讨论】:

    标签: c++ emacs


    【解决方案1】:

    也许你会发现我关于 Cedet 的 article 很有用。 Cedet 支持 etags、gtags、cscope 和其他工具。

    但是缺少重构。您可能需要查看Xrefactory 工具(但它不是免费的)

    【讨论】:

    • 我已经根据您的指南和配置文件为我的 emacs 重新配置了 cedet。哦,太棒了。非常感谢。
    【解决方案2】:

    Cscope 非常适合作为“查找符号”的使用工具。它非常快。
    Etags 将向您展示您的类层次结构,并帮助您找到方法定义/声明。

    所以这两个工具是必备的,而且是独立的。

    Cedet。它是上面这两个工具的替代品,具有附加功能。因此,您可以选择 cscope/etags 或 cedet。

    【讨论】:

      【解决方案3】:

      对于重构,在阅读 emacs 黑客 Xah Lee 的 this article 后,我开始专门使用 emacs 来完成此任务和相关任务。

      有关自动完成功能,请参阅this SO post。就个人而言,这些年来我发现yasnippet 非常有帮助。

      【讨论】:

        【解决方案4】:

        gtags (http://www.gnu.org/software/global/) 也可用,而且使用起来可能更简单。

        【讨论】:

          【解决方案5】:

          就个人而言,我不喜欢 cedet。它使 Emacs 需要一个小时才能加载。自动完成功能对我来说从来都不是很好。我不需要它的项目管理,也不需要它的 UML 特性。 我唯一想念的是 Emacs 代码浏览器,它非常有用但需要 cedet

          我建议您只使用 cscope 和 etags,看看您喜欢它们。熟悉 emacs 后,您可以稍后安装 cedet。

          【讨论】:

          • 您只能使用 Cedet 所需的部分。名称补全在最新版本的 Cedet 中运行良好(但您可能需要执行一些自定义)
          【解决方案6】:

          我写了一个blog article,关于使用 Global/gtags 和 Speedbar 进行代码浏览,您可能会发现它很有用...(我还认为 CEDET 有点慢...而且设置起来非常复杂 =)

          【讨论】:

            猜你喜欢
            • 2011-05-04
            • 2011-10-01
            • 1970-01-01
            • 2011-10-12
            • 2011-05-04
            • 1970-01-01
            • 2019-06-24
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多