2013-01-10 55 views
3

在emacs中,当您执行文档评论时,它正确地突出显示以/**开头的文档。例如:Emacs格式化文档评论

/** 
* @brief: Test 
*/ 

将正确地与font-lock-string-face和font-lock-doc-face一起生成。

有些人用///来替代文档评论,而Emacs并没有使用font-lock-doc-face和font-lock-string-face对此进行分类。有没有一种方法可以让emacs实现这些类型的doc注释?我正在尝试为C/C++实现这一目标,但灵活的解决方案会很好。

编辑: 看完emacs源代码后,我看到这是在lisp/progmodes文件夹中的cc-fonts.el中处理的。它看起来像c-font-lock-doc-comments可以用不同的前缀参数调用,修改它可能会修复它。当我有更多的时间时,我会尝试看看需要改变什么。

+0

不是C++用户,但切换到C++模式时,'/ *'和'///'都得到缩进吗? – PascalVKooten

+0

@Dualinity我不是在谈论我正在讨论的缩进问题。 –

+0

它也获得红色(在我的情况下)的字体。 – PascalVKooten

回答

2
(defconst custom-font-lock-keywords 
    `((,(lambda (limit) 
     (c-font-lock-doc-comments "///" 
            limit gtkdoc-font-lock-doc-comments))))) 
(setq-default c-doc-comment-style (quote (gtkdoc javadoc autodoc custom))) 

不是太糟糕只是放在一个.emacs文件。您可以自定义关键字,但我只是使用默认的gtkdoc关键字,因为这对我很有用。

感谢wvxvw指向c-doc-comment-style的指针。

经过一段时间的测试后,这对于多行///注释(每个在分开的行上以///开始)不起作用。如果修正将会编辑。