代码格式化工具 astyle 的安装和使用

astyle 是一个代码格式化工具,为 C,C++,JAVA 等语言提供代码格式化功能。

官方描述为:Artistic Style is a source code indenter, formatter, and beautifier for the C, C++, C++/CLI, Objective‑C, C# and Java programming languages.

相关页面:官方地址文档地址下载页面(当前最新版本位 3.1) 。

一、编译安装

安装可参考官方安装文档,提供了多种方式编译安装,这里使用 cmake

默认情况下,可执行文件被安装在/usr/bin,文档放在/usr/share/doc/astyle,安装完成后直接就可使用 astyle 命令。

官方并没有提供 make uninstall 卸载的功能,如需卸载需要在编译目录下执行 xargs rm < install_manifest.txt

二、 astyle 用法

2.1 基本用法

详细用法可参考官方文档地址,astyle 最简单的用法就是通过--style 选项指定要格式化的风格,然后就会对代码进行格式化。

常见的 style 选项有:ansi kr linux gnu java 等,更多可以查看官方文档 Brace Style Options

如需指定输入输出可通过设置--stdin--stdout 选项:

2.2 生成各种风格样例

准备一个源文件 test.cpp,内容如下:

编写一个 shell 脚本分别输出不同格式:

运行脚本将会生成不同格式的代码文件:

三、不同风格的特点

3.1 linux 风格

特点:函数的括号上下对齐,条件控制的括号没有对齐。

3.2 ansi 风格

特点:所有的括号都一一对齐。

3.3 gnu 风格

特点:括号一一对齐,条件控制语句的括号会增加一个缩进。

3.4 bsd 风格

特点:括号一一对齐。

3.5 java 风格

特点:所有的括号都没有对齐,直接写在同一行的最后。

发表评论