学习编程的时候,如果养成了一个不好的书写习惯,代码缩进之类的没弄好的话,会影响代码的可读性。如果你自己实在是懒得管理好自己的代码,那么可以偷点懒 , 使用一下代码格式化工具。 本文就将介绍一个适用于C,C++, C# 和Java的代码格式化工具 –astyle。
astyle 全称为 Artistic Style ,目前(2012-5-17)的最新版本是2.02。它可以自动缩进,格式化,美化你写的代码。astyle 官方网站是 http://astyle.sourceforge.net
你可以在官方网站下载源代码安装
wget http://nchc.dl.sourceforge.net/project/astyle/astyle/astyle%202.02.1/astyle_2.02.1_linux.tar.gz
tar xvf astyle_2.02.1_linux.tar.gz
cd astyle/build/gcc
make
sudo make install
如果你使用的是ubuntu 可以直接使用以下命令安装
sudo apt-get install astyle
不过 源里的版本比较老。
astyle 是一个命令行程序,简单的使用方法是直接使用astyle加上你要格式化的程序的源文件。 astyle支持不同的代码风格,也有不同的参数来设置自己想要的效果
astyle [options] SourceFile1 SourceFile2 SourceFile3 [ . . . ]
代码风格 ansi 命令如下:
astyle ---style=ansi sourcefile
效果如下:
int Foo(bool isBar)
{
if (isBar)
{
bar();
return 1;
}
else
return 0;
}
代码风格 java 命令:
astyle --style=java sourcefile
效果如下:
int Foo(bool isBar) {
if (isBar) {
bar();
return 1;
} else
return 0;
}
代码风格 K&R; 命令:
astyle --style=kr sourcfile
效果如下:
int Foo(bool isBar)
{
if (isBar) {
bar();
return 1;
} else
return 0;
}
代码风格 gnu 命令:
astyle --style=gnu sourcefile
效果如下:
int Foo(bool isBar)
{
if (isBar)
{
bar();
return 1;
}
else
return 0;
}
代码风格: linux (缩进为8个空格) 命令:
astyle --style=linux sourcefile
效果如下:
int Foo(bool isBar)
{
if (isFoo) {
bar();
return 1;
} else
return 0;
}
设置tab选项
--indent=spaces=# /-s#
使用你想用的空格数代替# ,表示使用几个空白作为Tab 我比较常用的选项如下
astyle --style-ansi -p -V --indent=spaces=4
命令含义为:使用ansi风格格式化代码,使用4个空格代替Tab缩进。将Tab替换为空格, 在操作符两边插入空格。 我还在我的vim的配置文件中加入以下一行
map <f5> <esc>:%! astyle -p -V --style=ansi --indent=spaces=4<cr>
这样的话,当我使用vim写程序的时候,只要在普通模式下按一下F5键就可以按我的要求自动格式化代码了,省去自己动手去缩排。
据我所知,在windows平台有一些其他的格式化工具,不过如果你想在Visual Studio中使用astyle,也可以。 第一步:首先在官方网站下载安装windows版本的astyle。将astyle的路径加入系统PATH变量(或者是在下面的输入命令时,输入绝对路径) 第二步:点击Visual Sutdio中的工具菜单。 第三步:点击“外部工具” 第四步: 在对话框中点击“添加” 各项如下填写
标题: Astyle 代码格式化 命令: astyle.exe 参数: –style=ansi $(ItemFileName)$(ItemExt) 初始化目录: $(ItemDir) 勾选使用输出窗口
如果你想使用其他风格,可以自己修改参数。
####### 更多选项可以查看astyle的文档, 我的网站上有一份英文版astyle的文档在这里
本站采用 知识共享署名-非商业性使用-相同方式共享3.0 中国大陆许可协议 进行许可,转载请注明出处。
推荐使用 chrome 浏览器浏览本站。