Emacs对于C++类方法的缩进?

5
由于某些原因,我的emacs在缩进c++类方法时出现错误。
当前情况:
class B
{
public:
    B()
        {
        }
};

但我希望:

class B
{
public:
    B()
    {
    }
};

有人知道如何在 .emacs 中实现吗?

谢谢!


似乎Emacs并不太关心你的公共构造函数。 - Praetorian
错别字已经修正,但结果仍然相同。 - frinkr
1个回答

13

尝试将inline-open设置为'0'。这应该会在与类内联方法的相同缩进级别上放置一个打开括号。例如:

(c-set-offset 'inline-open '0)

还可能有其他的东西,很难说。CC-Mode文档提供了更多选项和描述,这对您也可能有所帮助。

下面是我基于Linux编码风格的C++样式示例,可能会引起您的兴趣:

(defun vlad-cc-style()
  (c-set-style "linux")
  (c-set-offset 'innamespace '0)
  (c-set-offset 'inextern-lang '0)
  (c-set-offset 'inline-open '0)
  (c-set-offset 'label '*)
  (c-set-offset 'case-label '*)
  (c-set-offset 'access-label '/)
  (setq c-basic-offset 4)
  (setq tab-width 4)
  (setq indent-tabs-mode nil)
)

(add-hook 'c++-mode-hook 'vlad-cc-style)

希望能有所帮助。祝你好运!


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接