如何修复C ++初始值设定项的emacs缩进?

时间:2011-05-07 22:09:12

标签: emacs elisp auto-indent

对于具有冒号的初始化程序的分配器,Emacs没有正确缩进C ++类定义。我认为这是因为在很多情况下,带冒号的行是左缩进的。

我想解决这个问题。

以下是我所谈论的一个例子。

EMACS缩进代码如下:

class demo {
    int x;
    demo(){
    }
 demo(int y):x(y){
    };
};

但它应该像这样缩进:

class demo {
    int x;
    demo(){
    }
    demo(int y):x(y){
    };
};

有没有办法解决这个问题?大概我们需要一些elisp ......

谢谢!

1 个答案:

答案 0 :(得分:5)

Emacs(至少版本23)在C模式下不执行此操作,但它在C ++模式下执行此操作,因为在C中冒号之前的部分只能是标签。确保您处于C ++模式(M-x c++-mode)。