Linux下Clang-format代码格式化

/**

    * @author wangdaopo

    * @email 3168270295@qq.com

    */

1.Clang-format 代码格式化介绍

平时团队进行合作的时候需要注意代码的格式,虽然很难统一每个人的编码风格,但是通过工具能够很好的管理代码格式。这里介绍下clang-format,它是基于clang的一个命令行工具,能够自动化格式C/C++/Obj-C代码,支持多种代码风格:Google, Chromium, LLVM, Mozilla, WebKit,也支持自定义风格(通过编写.clang-format文件)很方便的同意代码格式。

 

2.安装

 Linux下安装Clang-format : sudo apt-get install clang-format

vim 中也可以集成该插件

 

3. 使用方法  code review提交代码前统一每个人的编码风格

格式化风格可使用内置风格或使用参数文件指定风格:

$ clang-format -style=LLVM -i test.cc -style参数指定所选风格,可选项为 LLVM、Google、Chromium、Mozilla、WebKit 和 file,其中 file 指定参数文件。-i 表示将格式化后的内容写入原文件

 

另外clang-format还提供一个clang-format-diff.py脚本,用来格式化patch,code review提交代码前,可以先跑一下这个脚本,// 格式化最新的commit,并直接在原文件上修改

git diff -U0 HEAD^ | clang-format-diff -i -p1

 

4.如果要自定义风格,导出默认配置文件.clang-format 修改以下几项 操作步骤

1).clang-format 可使用如下命令生成: 可以对其中某一个导出的文件.clang-format 进行修改,实现自定义格式化:

$ clang-format -style=llvm -dump-config > .clang-format    # clang-format -style=格式名 -dump-config > 文件名

然后修改参数,以适应自己的要求。我习惯了 Linux kernel 风格,要修改以下几项:

 

若在当前目录或祖先目录中已有 .clang-format 文件,则可直接

$ clang-format -i test.cc

 

2)配置文件.clang-format详细说明

注:可能下面贴出的内容在个别选项上与官网文档不一样,这是由于Clang-Format的版本不一样的。
# 语言: None, Cpp, Java, JavaScript, ObjC, Proto, TableGen, TextProto
Language:    Cpp
# BasedOnStyle:    LLVM
# 访问说明符(public、private等)的偏移
AccessModifierOffset:    -4
# 开括号(开圆括号、开尖括号、开方括号)后的对齐:

  • 3
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值