我正在使用google-c-style.el来缩进我的 c++ 程序。类中的函数将缩进如下:
这不是我想要的,我想要这个:
这是我在 .emacs 中的设置:
(setq c-default-style "linux")
(setq c-basic-offset 4)
(需要'cc模式)
(需要'google-c-style)
(添加钩子'c-mode-common-hook'google-make-newline-indent)
我正在使用google-c-style.el来缩进我的 c++ 程序。类中的函数将缩进如下:
这不是我想要的,我想要这个:
这是我在 .emacs 中的设置:
(setq c-default-style "linux")
(setq c-basic-offset 4)
(需要'cc模式)
(需要'google-c-style)
(添加钩子'c-mode-common-hook'google-make-newline-indent)
看起来您还需要:
(add-hook 'c-mode-common-hook 'google-set-c-style)
目前,即使您使用require
google-c-style,它也不会在调用上面的 defun 之前添加样式。文档字符串说它也应该被添加到钩子中。
更一般地说,对于缩进问题,您需要了解c-offsets-alist
它允许您自定义如何在不同的句法元素上执行缩进。找出您需要修改哪个元素的一种简单方法是转到该位置(例如,在您的示例中打开括号)fun()
并点击C-c C-sc-show-syntactic-information
而不是使用这个 google 风格的脚本,我个人会从它或其他 c 风格派生并覆盖这些值以适应我的口味。
例如,我注意到您期望 c-basic-offset 为 4,但 google-style 使用的 c-basic-offset 为 2,因此您可以从 Google 样式派生并覆盖以替换 c-basic-offset。