前文说了一些基本的通用配置,以及简单的一些mode。
现在来对C,C++开发环境做一个定制化配置。
首先要明确,打开.h, .c, .cpp, .cc时,emacs会切换到 C, C++ mode。所以我们对于C,C++的定制,也要基于这2个mode. 包括一些快捷键的设置等等(此处快捷键不能再简单的 global-set-key了。)
代码格式
代码的格式和约定还是比较重要的。google 的 c++代码规范很详细,很全面,也非常有指导性,更棒的是,google提供了 google-c-style.el 代码,可以帮助emacser使用google-c-style,提供的功能很多,包括代码格式化等等。当然,还有很多功能尚在摸索中。
M-x package-install,输入google-c-style 进行下载安装。
然后在init-cpp-mode.el中配置如下:
文档生成
doxygen 会根据注释生成文档,是一个非常好的工具,当然注释要符合特定的语法规范。总体而已,这个工具还是非常不错的。幸运的是,在emacs下面,有个doxymacs的工具,配合emacs使用doxygen。
doxymacs的具体介绍请移步官网。doxymacs支持插入符合doxygen标准的注释,以及高亮doxygen注释语法。甚至可以显示某个symbol的文档,在你选择的浏览器中。(恩,关于emacs内置浏览器将在以后介绍,非常强大,搭配helm-google之后)
目前doxymacs还不能从package-install中下载安装,那么我们就要多费点手脚了,从doxymacs的官网中获取地址,然后下载。执行 ./configure, make。不用安装,在lisp目录中可以找到 doxymacs.el,这个就是我们需要的。
- 快捷键
命令 | 英文解释 | 中文解释 |
---|---|---|
C-c d ? | will look up documentation for the symbol under the point. | 查找当前鼠标点下的符号的文档 |
C-c d r | will rescan your Doxygen tags file. | 重新扫描tags文件 |
C-c d f | will insert a Doxygen comment for the next function. | 为函数插入Doxygen注释 |
C-c d i | will insert a Doxygen comment for the current file. | 为文件插入Doxygen注释 |
C-c d ; | will insert a Doxygen comment for the current member. | 为当前成员插入Doxygen注释 |
C-c d m | will insert a blank multiline Doxygen comment. | 插入多行注释 |
C-c d s | will insert a blank singleline Doxygen comment. | 插入单行注释 |
C-c d @ | will insert grouping comments around the current region. | 插入环绕当前区域的注释 |
- 其余配置
默认的doxymacs的配置模式是 javaDoc, 我们需要改成C++的。
修改变量doxymacs-doxygen-style
注释模板是可以自定义的,目前我所需要的自定义模板,只有文件版本信息,其余的按照默认的即可。
具体的配置代码如下:
小结
ok, 今天暂且配置如下,稍后奉上代码跳转,符号引用,自动补全等功能配置。