Emacs Mode for GDB

使用Doxymacs为程序写文档注释

Tiger Soldier posted @ 2008年4月13日 18:47 in emacs with tags emacs doxymacs , 8632 阅读

文档的重要性不用我说了吧,任何一个上了规模的程序没有文档的话很难做后续开发的(记不住那么多成员和方法-_-)。

Java有生成文档的javadoc,C++的话,就要用Doxygen了。它可以使用多种注释语法,甚至可以混用(自然,Java的注释文档语法也支持的)

不过写Java程序可以在Eclipse里输入/**,回车,然后Eclipse就哗哗地根据其后的方法/属性帮你生成好。C#的话,一个///就能生成它的文档化注释。写C++,可以使用Doxymacs来生成,它还可以顺便为注释进行语法高亮(别问我注释有什么好高亮的,用了就明白了)。

下载&安装

Doxymacs和很多Emacs插件一样,安家在sourceforge上,主页在这里:

http://doxymacs.sourceforge.net/

它需要依赖三个包:W3、tempo和libxml2,可惜的是上面给出的W3和libxml2的地址已经失效,好在Ubuntu自带了这两个东西,其他系统的请自行查找

http://www.lysator.liu.se/~davidk/elisp/下载tempo,再从http://sourceforge.net/projects/doxymacs/下载doxymacs,确认装了libxml2(在Ubuntu下包名就叫libxml2)和W3(Ubuntu下不知道叫什么,会不会是W3m那个包?还望达人指教)

下载完成后直接把tempo复制到Emacs的插件目录下(要有root权限,我的是/usr/share/emacs22/site-lisp)

然后编译Doxymacs,把下载下来的包解压后用如下命令编译:

./configure
make
make install

编译好的文件会放在~/share/emacs/site-lisp下,也可以把它放到别的地方

然后编辑~/.emacs文件装载并配置之

;;doxymacs
;;添加doxymacs所在的路径
(add-to-list 'load-path
             "~/share/emacs/site-lisp/")
;;装载doxymacs
(require 'doxymacs)
;;注释高亮,针对C和C++程序
(defun my-doxymacs-font-lock-hook ()
  (if (or (eq major-mode 'c-mode) (eq major-mode 'c++-mode))
      (doxymacs-font-lock)))
(add-hook 'font-lock-mode-hook 'my-doxymacs-font-lock-hook)

使用Doxymacs

目前还没有研究能不能像Eclipse那样自动补完注释,不过用自带的快捷键也是很方便的

默认的快捷键如下(我只用了生成注释的一部分,剩下的只是直接翻译另加一点点试用,可能不准确):

  • C-c d ? 从符号表中查找当前光标所在内容的文档(需要指定doxymacs-doxygen-dirs)
  • C-c d r 重新扫描 Doxygen 的 tags 文件
  • C-c d f 为所在位置之后的那个函数插入注释(注意是在当前光标处插入,最好在函数上方的空行处使用,插入前先对好齐)
  • C-c d i 为当前文件插入注释(内容包括文件名、作者、日期和简介)
  • C-c d ; 为当前行的成员变量插入注释(类似M-;,但是格式不同)
  • C-c d m 插入空白的多行注释,这个就在单纯是想要注释的时候用了
  • C-c d s 插入空白的单行注释,和上面那个差不多
  • C-c d @ 插入分组注释。所谓分组注释就是将某个范围内的代码看作一组,生成文档时会单独归在一个组下。使用时要先选中想分组的那部分代码

生成文档

要生成文档当然要安装doxygen了,推荐把goxygen-gui一起装上,配置起来方便很多。在命令行输入doxywizard就可以启动gui,之后就是图形界面,相信不用介绍了。

MBOSE Model Paper 说:
Sep 03, 2022 10:24:32 PM

MBOSE SSLC Model Paper 2022 Purpose of Providing help to the Board Students. Through This Paper they are able to get aware the type of Questions asked in the Board Exam. While Preparing this Meghalaya Board SSLC Question Paper 2022 some help have been taken from Previous Paper to Practice More, you can take help from MBOSE SSLC Annual Exam 2022. MBOSE Model Paper Here we are Providing the Meghalaya Board 10th Question Paper 2022 Along with its Solution. All these Solutions are Explained by the Subject Experts. Read the Solutions given here to Learn the Right Technique to write Perfect Exam.


登录 *


loading captcha image...
(输入验证码)
or Ctrl+Enter