在写代码时候,特别是在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就可以帮助你排版源代码啦~~~

使用indent命令帮助排版源代码的更多相关文章

  1. [转]ubuntu(12.04)下, 命令 ,内核 源代码的获取

    [转]ubuntu(12.04)下, 命令 ,内核 源代码的获取 http://blog.chinaunix.net/uid-18905703-id-3446099.html 1.命令:例如:要查看l ...

  2. Linux indent命令

    一.简介 indent可辨识C的原始代码文件,并加以格式化,以方便程序设计师阅读. 二.选项 http://www.cnblogs.com/xuxm2007/archive/2011/11/03/22 ...

  3. 【转】Android源代码编译命令m/mm/mmm/make分析--不错

    原文网址:http://blog.csdn.net/luoshengyang/article/details/19023609 在前文中,我们分析了Android编译环境的初始化过程.Android编 ...

  4. 如何查看linux命令源代码

    如何查看linux命令源代码 用linux一段时间了,有时候想看看ls.cat.more等命令的源代码,在下载的内核源码中用cscope没能找到,在网上搜索了一下,将方 法总结如下: 以搜索ls命令源 ...

  5. 【C语言入门教程】2.8 C 语言的预处理命令

    预处理命令是在程序编译阶段进行执行的命令,用于编译与特定环境相关的可执行文件.预处理命令扩展了 C 语言,本节将选择其中一些常用的预处理命令进行讲解. 2.8.1 宏替换命令 宏替换命令的作用类似于对 ...

  6. Linux rpm 命令参数使用详解[介绍和应用]

    RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序” rpm 执行安装包 二进制包(Binary)以及源代码包(Source)两 ...

  7. 编程工具系列之二------使用GDB的源代码查看功能

    在调试程序的过程中,可以自由地查看相关的源代码(如果有源代码的话)是一项最基本的特性.      一些IDE在这方面做得相当好,GDB当然也提供了这项特性,虽然不如IDE直观,但在一定程度上要比IDE ...

  8. Linux下面使用rpm命令

    RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序” rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种 ...

  9. Linux RPM 命令参数使用详解

    rpm 执行安装包二进制包(Binary)以及源代码包(Source)两种.二进制包可以直接安装在计算机中,而源代码包将会由 RPM自动编译.安装.源代码包经常以src.rpm作为后缀名. 常用命令组 ...

随机推荐

  1. Render和template?

    Template是一个模板. render = web.template.render('templates/') 这会告诉web.py到你的模板目录中去查找模板.然后把 index.GET改成: 告 ...

  2. 网页title标题的闪动效果

    通过网页title来提示用户有新消息这个功能很常见,比如现在的微博,还有一些邮箱,这个功能都很常见. 显示信息数: <input type="text" id="t ...

  3. python3.5读取网页代码,并保存

    在旧版的python中有个urllib模块,内有一个urlopen方法可打开网页,但新版python中没有了,新版的urllib模块里面只有4个子模块(error,request,response,p ...

  4. Tempter of the Bone--hdu1010--zoj2110

    Tempter of the Bone Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Othe ...

  5. Java学习笔记--JDBC数据库的使用

    参考  hu_shengyang的专栏 : http://blog.csdn.net/hu_shengyang/article/details/6290029 一. JDBC API中提供的常用数据库 ...

  6. MHA环境的搭建

    MHA简介: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Facebook公司)开 ...

  7. tp28xx port pin (open-drain )and (push-pull) 和open collector)

    具有开漏(OD)输出的器件是指内部输出和地之间有个N沟道的MOSFET(T1),这些器件可以用于电平转换的应用.输出电压由Vcc'决定.Vcc'可以大于输入高电平电压VCC(up-translate) ...

  8. cf448B Suffix Structures

    B. Suffix Structures time limit per test 1 second memory limit per test 256 megabytes input standard ...

  9. exe可执行程序及堆栈分配(转载)

    可执行程序的内存分布 GNU编译器生成的目标文件默认格式为elf(executive linked file)格式,这是Linux系统所采用的可执行链接文件的通用文件格式.elf格式由若干个段(sec ...

  10. 【HDU1514】Stars(树状数组)

    绝对大坑.千万记住树状数组0好下标位置是虚拟节点.详见大白书P195.其实肉眼看也能得出,在add(有的也叫update)的点修改操作中如果传入0就会死循环.最后TLE.所以下标+1解决问题.上代码! ...