我正在使用emacs(24.3.1)以及cc-mode
和hideshow
进行编程c++
。我正在开发一个项目,其中编码样式要求头文件中存在的任何关键字必须在源文件中重复。如果标准不允许这样做,则必须将关键字放在注释中。让我举个例子:
/* virtual */ void MyAwesomeFunction( int arg, int optarg /* = 0 */ ){
// stuff
}
显然有一条评论开始了。 hideshow
似乎无法应对这种格式化。当我调用hs-hide-all
所有代码块都正确折叠时,如果我从函数内的任何位置调用hs-hide-block
,情况也是如此。但是,如果我在函数的开头行(我的代码片段的第一行)某处调用hs-hide-block
whith point
,现在可以进行折叠并显示错误消息:
(not enough comment lines to hide)
已打印。到目前为止我唯一明确的hideshow
配置是:
(setq hs-hide-comments nil)
但是,删除此行会使情况变得更糟:之后甚至不能正常调用hs-hide-all
:所有内部块都会折叠,但是对于具有前导注释的函数,不会在函数级别进行折叠。
任何人都知道如何解决这个问题?