利用indent格式化源文件的脚本
来源:互联网 发布:查找算法. 编辑:程序博客网 时间:2024/06/14 14:55
脚本一:格式化指定目录下的源文件(*.h, *.cpp...)
#!/bin/sh# 格式化某目录下所有*.h, *.c, *.cpp, *.hh文件, 并将文件换行符转换成Linux下的格式if [ $# -lt 1 ]; thenecho "Usage: $0 <dir>"exit 1elsedir=$1fi# format a source file(*.c, *.h, *.cpp, *.hh)formatSrcfile(){dos2unix $1indent -npro -nip -lp -npsl -npcs -i4 -ts4 -sob -l140 -ci4 -ss -nsaf -nsai -nsaw -bl -bli0 $1rm -f "$1"~}# save file path to filefind $dir -name '*.h' -o -name '*.c' -o -name '*.cpp' -o -name '*.hh' > tmp# format every file in tmpwhile read filedoformatSrcfile $filedone < tmp# remove tmp filerm -f tmp
脚本二:格式化指定的文件
#!/bin/sh# 格式化指定的文件, 并将文件换行符转换成Linux下的格式if [ $# -lt 1 ]; thenecho "Usage: $0 file1 file2 file*.cpp ..."exit 1fi# format a source file(*.c, *.h, *.cpp, *.hh)formatSrcfile(){dos2unix $1indent -npro -nip -lp -npsl -npcs -i4 -ts4 -sob -l140 -ci4 -ss -nsaf -nsai -nsaw -bl -bli0 $1rm -f "$1"~}for i in $*doformatSrcfile $idone
因为indent的参数很多,我这里用的格式不一定是所有人都喜欢的,所以如果不符合您的要求,请大家自己修改。
我这两个脚本都有一个bug,一直没找到解决办法,若有人解决了,还望告知下。bug如下:
就是上图左边的代码,会被格式成右边的样子,但是事实上对于左边这样的格式,我希望他能保持不变,不知如何修改indent参数呢?
另外,如果一个宏单独一行,且没有分号作结尾,他会将下一行的内容给捞上来的,哈哈!
0 0
- 利用indent格式化源文件的脚本
- 用indent批量格式化C/C++源文件
- linux 的代码格式化工具 indent
- Indent代码格式化说明
- linux indent格式化代码
- indent 代码格式化
- indent格式化C代码
- linux indent格式化代码
- indent格式化C代码
- linux indent格式化代码
- astyle进行源文件格式化的扩展
- 用indent格式化C程序
- 用 indent 进行代码格式化
- Linux 代码格式化工具 indent
- 用 indent 进行代码格式化
- 用 indent 进行代码格式化
- 代码格式化工具---indent工具
- 使用indent格式化C代码
- angry_birds_again_and_again
- 单页站优化六个绝招
- 只有程序员才能破解的密码
- jenkins+ant配置自动化任务全过程
- Android源码下载
- 利用indent格式化源文件的脚本
- 横向表格
- 【线段树】-POJ-3468-区间增减&区间求和
- Django记-模版与静态文件(js/css/image)
- android中Activity中的WindowManager与Window
- IOS Block 笔记
- 苹果纽约旗舰店玻璃立方体设计获专利
- 上大学一定要做的20件事。。。内容真的很重要,请间接忽视配图!
- Android中的PopupWindow详解