【问题标题】:Emacs as a C Programming IDE Configuration?Emacs 作为 C 编程 IDE 配置?
【发布时间】:2011-08-13 14:33:45
【问题描述】:

我使用 emacs 作为我在 C 语言中编程的主要 IDE。我正在探索配置 emacs 以使其更多地用作 IDE 而不是简单的文本编辑器的方法。当然,我想要语法高亮,最好是一些代码完成。我还想要单独的缓冲区以允许 shell 命令和 M-x 编译。我希望它在访问 C 源文件时自动打开这种多缓冲区形式,而不必单独启动每个缓冲区。我将主要将它用于 Linux/BSD Unix 开发,尽管我也在 Mac OS X(同样是 Unix)和 Windows(Windows 7 64 位)上编写代码。

我探索了 Phil Hagelberg(技术专家)发布的 Emacs 入门工具包,但它似乎非常面向动态语言和 git 的使用。我主要使用 emacs 进行 C 开发,并使用 mercurial 进行 VC。我也是一个相对新手,制作 emacs 的配置对我来说相对令人生畏。

我现在正在使用 CEDET 和 Emacs 代码浏览器 (ECB) 包,它更符合我的要求,但仍然不完美。

欢迎任何关于将 emacs 定制为 C 编程 IDE 的建议。

【问题讨论】:

标签: c emacs ide


【解决方案1】:

我已经有一段时间没有做 C 语言了,但这里有一些建议。

  1. 使用flymake 进行动态错误分析。我已经将它用于 Python 和 C,它真的很棒。
  2. 在 C 模式下默认有语法高亮显示。
  3. M-x compile 是面向 make 的,所以如果你的设置中有一个 Makefile,它应该可以正常工作(默认的 flymake 规则也使用它)。像这样的规则
check-syntax:
          gcc -Wall -o nul -S ${CHK_SOURCES}

会照顾flymake。 This 在您在子目录中编辑但想从顶部编译时很有用。

  1. etags 在代码中跳转很有用。 GnuGlobal 似乎也很受欢迎。
  2. 无法对 ECB 发表评论,因为我从来没有真正让它完全发挥作用,而且当我完成时,我从未发现它有那么有用。我使用 autocomplete.el 来完成,但它不区分上下文。
  3. 没有建议6。
  4. 内置的 vc 集成对于 git 来说不是那么热门,所以我改用 magit。 mercurial 应该有类似的选项。
  5. 这里有一些关于设置indentation 的注意事项。
  6. 您应该使用which function mode。过去它让我省去了很多麻烦。
  7. GUD 的默认值相当不错,但您应该花点时间熟悉它们才能完全使用它的功能。
  8. 我大量使用 org-capture 将 TBD 移动到我的 org 模式缓冲区中,以便我可以将它们作为 TODO 项进行跟踪。这适用于所有语言。我还使用 org-mode 来维护我所有项目的开发日志。

祝你好运。

【讨论】:

    【解决方案2】:

    阅读excellent guide,了解如何配置 CEDET。我还建议您同时使用cscope 和欧洲央行。正如 Noufal 已经提到的那样,自动完成和 flymake 非常有帮助。我也推荐你autopair mode

    【讨论】:

      【解决方案3】:

      我没有尝试过Emacs-IDE,但它似乎很有用,可能会对你有所帮助

      【讨论】:

        猜你喜欢
        • 2013-02-23
        • 2010-09-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-12-12
        相关资源
        最近更新 更多