2013-06-30 45 views
0

我使用google-c-style.el縮進我的C++ programs.Functions在類將被縮進如下: enter image description here定製的谷歌-C-style.el

這是不是我想要的,我想這一個:

enter image description here

這是我在.emacs中設置:

(setq C-默認樣式 「LINUX」)

(setq C-基本偏移4)

(需要 'CC-模式)

(需要使用' google-c樣式)

(附加鉤「C-模式 - 共鉤「谷歌讓換行縮進)

+0

在您的模式下,按C-c C-o Enter鍵更改縮進偏移量。 –

回答

1

看起來你還需要:

(add-hook 'c-mode-common-hook 'google-set-c-style)

目前,即使您require谷歌c風格,它不添加風格,直到上面的defun被調用。文檔字符串表示它也被添加到鉤子中。


更一般地,縮進問題,你需要了解c-offsets-alist

它允許您自定義縮進是如何在不同的語法元素進行。 一個簡單的方法來找出哪些需要修改元素去的位置(例如梅開二度開放的fun()在你的例子)和命中抄送銫c-show-syntactic-information

而不是使用谷歌風格的劇本,我個人會從它或另一個c樣式中派生出來並覆蓋這些值以適應我的口味。例如,我注意到你期望c-basic-offset爲4,但google-style使用2的c-basic-offset,所以你可以派生並覆蓋Google風格來替換c-basic-offset,抵消。

查看:How to make Emacs put access level modifiers in their own indentation level in my C++ code?爲例。