Emacs作为C编程IDE配置?

时间:2011-04-27 06:34:29

标签: c emacs ide

我使用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欢迎的任何建议。

3 个答案:

答案 0 :(得分:24)

自从我做完C以来已经有一段时间了,但这里有一些指示。

  1. 使用flymake进行即时错误分析。我已经将它用于Python和C,它真的很棒。
  2. 默认情况下,语法突出显示在C模式下。
  3. M-x编译适用于make如果你的设置中有Makefile,它应该可以正常工作(defauly flymake规则也使用它)。像这样的规则

    check-syntax:

          gcc -Wall -o nul -S ${CHK_SOURCES}
    

    将照顾flymake。在子目录中编辑但想要从顶部进行编译时,This非常有用。

  4. etags有助于跳转代码。 GnuGlobal似乎也很受欢迎。
  5. 无法对欧洲央行发表评论,因为我从来没有真正让它完全发挥作用,而当我做到这一点时,我从未发现它有用。我使用autocomplete.el来完成完成,但它不是上下文敏感的。
  6. 没有任何建议6.
  7. git内置的vc集成并不热,所以我使用magit代替。 mercurial应该有类似的问题。
  8. 此处有一些关于设置indentation的说明。
  9. 您应该使用which function mode。这让我在过去很头疼。
  10. GUD的默认设置非常不错,但您应该花一些时间熟悉它们,以便完全使用它。
  11. 我大量使用org-capture将TBD移动到我的组织模式缓冲区中,以便我可以将它们作为TODO项目进行跟踪。这适用于所有语言。我还使用org-mode为我的所有项目维护开发日记。
  12. 祝你好运。

答案 1 :(得分:3)

阅读此excellent guide有关如何配置CEDET的信息。我还建议你使用cscope和ECB。由于Noufal已经提到自动完成和flymake非常有帮助。我也建议你autopair mode

答案 2 :(得分:1)

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