首页 > 代码库 > 使用indent命令帮助排版源代码

使用indent命令帮助排版源代码

                 在写代码时候,特别是在vim中编辑代码时候,你可能会不太注意代码风格问题,比如‘{’符号放在行末还是下一行行首等等,

  这样你把自己代码与别人的代码merge时候,就会出现代码风格不一的问题,这里就推荐一个命令用以调整代码风格。

 

      linux下使用命令indent, 用于调整源代码的排版风格,indent后面跟上参数就可以设定你喜欢的代码风格:

 

        indent [参数选项][源文件][-o目标文件]  ;

        或者不指定目标文件,那么就直接更换源文件: indent [参数选项][源文件];

 

      关于参数:

       -bad或--blank-lines-after-declarations  在声明区段或加上空白行。
         -bap或--blank-lines-after-procedures  在程序或加上空白行。
       -bbb或--blank-lines-after-block-comments  在注释区段后加上空白行。
       -bc或--blank-lines-after-commas  在声明区段中,若出现逗号即换行。
       -bl或--braces-after-if-line  if(或是else,for等等)与后面执行区段的"{"不同行,且"}"自成一行。
       -bli<缩排格数>或--brace-indent<缩排格数>  设置{ }缩排的格数。
       -br或--braces-on-if-line  if(或是else,for等等)与后面执行跛段的"{"不同行,且"}"自成一行。
       -bs或--blank-before-sizeof  在sizeof之后空一格。
       -c<栏数>或--comment-indentation<栏数>  将注释置于程序码右侧指定的栏位。
       -cd<栏数>或--declaration-comment-column<栏数>  将注释置于声明右侧指定的栏位。
       -cdb或--comment-delimiters-on-blank-lines  注释符号自成一行。
       -ce或--cuddle-else  将else置于"}"(if执行区段的结尾)之后。
       -ci<缩排格数>或--continuation-indentation<缩排格数>  叙述过长而换行时,指定换行后缩排的格数。
       -cli<缩排格数>或--case-indentation-<缩排格数>  使用case时,switch缩排的格数。
       ......(其后省略上百条)

 

         你会发现,这么多的参数,怎么记住呢?我的方法是,根本不用记,学习linux内核的代码风格就可以了,

       所以可以在linux下,打开配置文件:/usr/src/kernels/XXX(内核版本)/scripts/Lindent

        找到PARAM变量,然后把它的值作为你的indent参数就可以使得你的代码排版风格与内核代码一样了

        PARAM="-npro -kr -i8 -ts8 -sob -l80 -ss -ncs -cp1"(笔者主机打开的内容)

 

      如果你每次使用indent然后还有加上这么长一串参数,你会觉得很麻烦,我推荐你可以在.bashrc里面,alias一个别名

      命令:(以我的习惯为例)

          alias myindent=‘indent -npro -kr -i8 -ts8 -sob -l80 -ss -ncs -cp1‘

 

      这样以后,你直接使用myindent filename就可以帮助你排版源代码啦~~~