c – Google c风格设置为gnu缩进?

前端之家收集整理的这篇文章主要介绍了c – Google c风格设置为gnu缩进?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在为Emacs( google-c-style.el)和Vim( google.vim)使用google c indent风格.

但是,由于我有一些现有的代码不是这种风格,我希望我可以改变它.我发现有一个名为GNU indent的工具可以自动执行这样的操作,它在this page上提供了一些常见的样式设置,但是没有针对Google c缩进的样式. SO还有等同的吗?

(我尝试了Linux和Berkley风格,觉得对我来说不太满意)

解决方法

谷歌编码风格的简要介绍表明,它主要是K& R编码风格,除了2空格缩进(包括案例语句),80列和没有选项卡.因此,以下选项应该完成:
-kr -ci2 -cli2 -i2 -l80 -nut

从那开始您可能需要调整生成代码. C支持,特别是缩进是弱的.

传说:

> -kr:K& R风格
> -ci2:连续缩进,多行代码语句第一行后面的行缩进为2个空格
> -cli2:case标签缩进,case标签从交换机缩进2个空格
> -i2:缩进,2个空格
> -l80:长度,80列
-nut:没有标签

作为替代方案,您可以考虑使用代码executing emacs in batch mode to apply indentation.简述:

创建一个名为emacs-format-file的文件,内容如下:

(defun emacs-format-function ()
   "Format the whole buffer."
   (c-set-style "Google")
   (indent-region (point-min) (point-max) nil)
   (untabify (point-min) (point-max))
   (save-buffer))

从shell执行以下命令:

emacs -batch your_source_file.c \
    -l emacs-format-file -f emacs-format-function

猜你在找的C&C++相关文章