Linux indent命令使用详解
indent命令 可辨识C的原始代码文件,并加以格式化,以方便程序员阅读、修改等操作。
语法
1 2
| indent [参数][源文件] indent [参数][源文件][-o 目标文件]
|
选项
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53
| -bad:在声明区加上空白行; -bap:添加空白行; -bbb:在注释后面添加空白行; -bc:在声明段中,如果出现逗号就换行; -bl:if(或是else、for等)与后面执行区段的“{”不同行,且“}”自成一行-bli<缩排格数>设置{}缩排的格数; -br:if(或是else、for等)与后面执行区段的“{”同行,且“}”自成一行; -bs:在sizeof之后空一格; -c<栏数>:将注释置于程序右侧指定的栏位; -cd<栏数>:将注释置于声明右侧指定的栏位; -cdb:注释符号自成一行; -ce:将else置于“}”(if执行区段的结尾)之后; -ci:<缩排格数>:叙述过长而换行时,指定换行后缩排的格数; -cli<缩排格数>:使用case时,switch缩排的格数; -cp<栏数>:将注释置于else与elseif叙述右侧指定的栏位; -cs:在case之后空一格; -d<缩排格数>:针对不是放在程序码右侧的注释,设置其缩排格数; -di<栏数>:将声明区段的变量置于指定的栏位; -fc1:针对放在每行最前端的注释,设置其格式; -fca:设置所有注释的格式; -gnu:使用指定的GNU格式,该参数为默认值; -i<格数>:设置缩排的格数; -ip<格数>:设置参数的缩排格数; -kr:指定使用Kernighan&Ritchie的格式; -lp:叙述过长而换行,且叙述中包含了括号时,将括号中的每行起始栏位内容垂直对其排列; -nbad:在声明区段后不要加上空白行; -nbap:在程序后面不添加空白行; -nbbb:在注释段后面不添加空白行; -nbc:在声明段中,即使出现逗号,也不换行; -ncdb:注释符号不自成一行; -nce:不将else置于“}”后面; -ncs:不在case后面空一格; -nfc1:不要格式化放在每行最前端的注释; -nfca:不用格式化任何的注释; -nip:参数不要缩排; -nlp:叙述过长而换行,且叙述中包含了括号时,不用将括号中的每行起始栏位垂直对其排列; -npcs:在调用函数名之后,不要添加空格; -npro:不要读取indent的配置文件“.indent.pro”; -npsl:程序类型与程序名称放在同一行; -nsc:注释左侧不要添加星号; -nsob:不用处理多余的空白行; -nss:若for或while区段仅有一行时,在分号前不加空格; -nv:不显示详细的信息; -orig:使用berkeley格式; -pcs:在调用函数名与“{”之间添加空格; -psl:程序类型置于程序名称的前一行; -sc:在每行注释左侧添加星号; -sob:删除多余的空白行; -ss:若for或swile区段仅有一行时,在分号前加上空格; -st:将结果显示在标准输出设备上; -T:数据类型名称缩排; -ts<格数>:设置tab的长度; -v:显示详细的执行过程; --version:显示版本信息。
|
Indent代码格式化说明
使用的indent参数 | 值 | 含义 |
---|
–blank-lines-after-declarations | bad | 变量声明后加空行 |
–blank-lines-after-procedures | bap | 函数结束后加空行 |
–blank-lines-before-block-comments | bbb | 块注释前加空行 |
–break-before-boolean-operator | bbo | 较长的行,在逻辑运算符前分行 |
–blank-lines-after-commas | nbc | 变量声明中,逗号分隔的变量不分行 |
–braces-after-if-line | bl | “if”和”{“分做两行 |
–brace-indent 0 | bli0 | “{“不继续缩进 |
–braces-after-struct-decl-line | bls | 定义结构,”struct”和”{“分行 |
–comment-indentationn | c33 | 语句后注释开始于行33 |
–declaration-comment-columnn | cd33 | 变量声明后注释开始于行33 |
–comment-delimiters-on-blank-lines | ncdb | 不将单行注释变为块注释 |
–cuddle-do-while | ncdw | “do — while”的”while”和其前面的”}”另起一行 |
–cuddle-else | nce | “else”和其前面的”}”另起一行 |
–case-indentation 0 | cli0 | switch中的case语句所进0个空格 |
–else-endif-columnn | cp33 | #else, #endif后面的注释开始于行33 |
–space-after-cast | cs | 在类型转换后面加空格 |
–line-comments-indentation n | d0 | 单行注释(不从1列开始的),不向左缩进 |
–break-function-decl-args | nbfda | 关闭:函数的参数一个一行 |
–declaration-indentationn | di2 | 变量声明,变量开始于2行,即不必对齐 |
–format-first-column-comments | nfc1 | 不格式化起于第一行的注释 |
–format-all-comments | nfca | 不开启全部格式化注释的开关 |
–honour-newlines | hnl | Prefer to break long lines at the position of newlines in the input. |
–indent-leveln | i4 | 设置缩进多少字符,如果为tab的整数倍,用tab来缩进,否则用空格填充。 |
–parameter-indentationn | ip5 | 旧风格的函数定义中参数说明缩进5个空格 |
–line-length 75 | l75 | 非注释行最长75 |
–continue-at-parentheses | lp | 续行从上一行出现的括号开始 |
–space-after-procedure-calls | pcs | 函数和”(“之间插入一个空格 |
–space-after-parentheses | nprs | 在”(”后”)”前不插入空格 |
–procnames-start-lines | psl | 将函数名和返回类型放在两行定义 |
–space-after-for | saf | for后面有空格 |
–space-after-if | sai | if后面有空格 |
–space-after-while | saw | while后面有空格 |
–start-left-side-of-comments | nsc | 不在生成的块注释中加* |
–swallow-optional-blank-lines | nsob | 不去掉可添加的空行 |
–space-special-semicolon | nss | 一行的for或while语句,在”;”前不加空。 |
–tab-size | ts4 | 一个tab为4个空格(要能整除”-in”) |
–use-tabs | ut | 使用tab来缩进 |
实例
使用indent命令将C语言源文件”test.c”中所有的sizeof后面添加一个空格,输入如下命令:
1
| indent -bs /home/rootlocal/桌面/test.c
|
执行上面的命令后,用户可以打开指定的源文件查看在sizeof后面是否都添加了一个空格。由于该命令的参数非常多,所以用户可以根据实际需要选择适合的参数进行使用即可。