IDE: Visual Studio Code

Language: C/C++

格式化工具: clang-format

安装

vscode安装扩展C/C++,扩展程序将自动安装clang-format:

配置首选项

  • 打开首选项

    快捷键: Command + ,

  • 搜索 clang-format进行配置

  • 配置生效快捷键

    • 当前文件全文格式化

      Shift + option + F

    • 选择块格式化

      Command + K

      Command + F

配置格式化主题

配置项 C_Cpp: Clang_format_fallback Style

  • 可选主题

    • Visual Studio
    • LLVM
    • Google
    • Chromium
    • Mozilla
    • WebKit
    • none
    • {key: value, …}
  • 自定义key-value写法参考
{ BasedOnStyle: Google, IndentWidth: 4, IndentCaseLabels: false, AccessModifierOffset: -4, AlignTrailingComments: true }
  • 常用配置项
# 语言: None, Cpp, Java, JavaScript, ObjC, Proto, TableGen, TextProto
Language: Cpp # 基于某一主题上的修改
BasedOnStyle: Google # 缩进宽度
IndentWidth: 4 # 缩进case标签
IndentCaseLabels: false # 访问说明符(public、private等)的偏移
AccessModifierOffset: -4 # 每行字符的限制,0表示没有限制
ColumnLimit: 80 # 对齐连续的尾随的注释
AlignTrailingComments: true # 允许函数声明的所有参数在放在下一行
AllowAllParametersOfDeclarationOnNextLine: false
# 允许短的if语句保持在同一行
AllowShortIfStatementsOnASingleLine: false
# 允许短的case标签放在同一行
AllowShortCaseLabelsOnASingleLine: true
# 允许短的循环保持在同一行
AllowShortLoopsOnASingleLine: false # 允许排序#include
SortIncludes: true

更多配置项参考:

配置格式化形式

配置项 C_Cpp: Clang_format_style

默认是 file, 将会调用在当前工程下的 .clang-format 文件

注: 该种格式化配置, 优先级比上条配置方式高!

主题文件可通过clang-format工具生成, 例

# 若未安装则执行
brew install clang-format # 生成主题文件
clang-format -style=Google -dump-config > .clang-format

配置文件保存时自动格式化

Command + S 保存文件时, 或关闭当前文件的编辑, 将会触发自动格式化代码

配置行末加 ; 时自动格式化

类似 Xcode, 一条语句后加分号, 将会自动触发自动格式化代码


最后附上我使用的 代码格式化样式:

{ BasedOnStyle: Google, IndentWidth: 4 }

代码格式化工具:clang-format的更多相关文章

  1. Clang Format

    1,最近项目代码要求规范化,在网上找了个Xcode插件:Clang Format ,下载地址:https://github.com/travisjeffery/ClangFormat-Xcode 2, ...

  2. clang format 官方文档自定义参数介绍(中英文)

    官方文档:http://clang.llvm.org/docs/ClangFormatStyleOptions.html 中文 在代码中配置样式 当使用 clang::format::reformat ...

  3. YAPF:Google开源的Python代码格式化工具

    点这里 现在的大多数 Python 代码格式化工具(比如:autopep8 和 pep8ify)是可以移除代码中的 lint 错误.这显然有些局限性.比如:遵循 PEP 8 指导的代码可能就不会被格式 ...

  4. 在Xcode中使用Clang Format

    Xcode中的Re-Indent,顾名思义,只是一个调整缩进的功能,完全依赖它来进行代码格式化显然不够用.我们使用了一个叫做ClangFormat-Xcode的插件,配合Re-Indent一起来做代码 ...

  5. python 代码格式化工具:YAPF

    学习资料: https://github.com/google/yapf 背景 现在的大多数 Python 代码格式化工具(比如:autopep8 和 pep8ify)是可以移除代码中的 lint 错 ...

  6. 一款超人气代码格式化工具prettier

    一.prettier 介绍 官方自己介绍说,prettier是一款强势武断的代码格式化工具,它几乎移除了编辑器本身所有的对代码的操作格式,然后重新显示.就是为了让所有用这套规则的人有完全相同的代码.在 ...

  7. 代码格式化工具Astyle配置

    Astyle是一个很好的代码格式化工具,其他不多说,下面介绍一下我在VS 2010的配置 1. http://sourceforge.net/projects/astyle,这是该插件的网站,下载后把 ...

  8. css 10 款非常棒的CSS代码格式化工具推荐

    http://www.iteye.com/news/23692/  10 款非常棒的CSS代码格式化工具推荐 2011-12-14 09:31 by 副主编 wangguo 评论(0) 有9111人浏 ...

  9. CSS代码格式化工具

    CSS代码格式化工具 http://tool.lanrentuku.com/cssformat/ 可实现CSS代码格式化和CSS在线压缩 请将CSS代码复制到下面表单中:    

  10. 推荐一个小而美的Python代码格式化工具

    代码可读性是评判代码质量的标准之一,有一个衡量代码质量的标准是 Martin 提出的 “WFT” 定律,即每分钟爆出 “WTF” 的次数.你在读别人代码或者做 Code Review 的时候有没有 “ ...

随机推荐

  1. 转贴:修改springboot控制台输出的图案

    Post from:https://blog.csdn.net/WXN069/article/details/90667668 修改springboot控制台输出的图案1.在src\main\reso ...

  2. 20190923-06Linux文件权限类 000 014

    文件属性 Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限.为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做了不同的规定.在Linux ...

  3. Java查找指定文件中指定字符的个数

    package lwl.youweb2.test; import java.io.BufferedReader; import java.io.FileReader; import java.io.I ...

  4. ckeditor4.0以上使用行间距插件lineheight报错修改

    ①从百度上下载一个 ckeditor 行距包,解压放到ckeditor/plugins目录下. ②在config.js 中添加 config.extraPlugins += (config.extra ...

  5. xss原理解析

    xss->跨站脚本攻击 xss是指攻击者在网页中嵌入客户端脚本.通常是指javascript编写的一个危险代码,当用户使用浏览器浏览网页时,脚本就会在用户的浏览器上执行,从而达到攻击者的目的. ...

  6. xmake v2.3.7 发布, 新增 tinyc 和 emscripten 工具链支持

    xmake 是一个基于 Lua 的轻量级跨平台构建工具,使用 xmake.lua 维护项目构建,相比 makefile/CMakeLists.txt,配置语法更加简洁直观,对新手非常友好,短时间内就能 ...

  7. SpringCloud系列之Nacos+Dubbo+Seata应用篇

    目录 前言 项目版本 项目说明 Nacos服务 Seata服务 订单模块 支付模块 参考资料 系列文章 前言 本文接上篇文章<SpringCloud系列之Nacos+Dubbo应用篇>继续 ...

  8. WPF相关UI库

    免费控件库: 1.Extended WPF Toolkit 官方拓展控件 http://wpftoolkit.codeplex.com/ 2.avalondock 可停靠布局(wpf toolkit包 ...

  9. Java内部类使用场景和作用

    一.Java内部类的分类 Java内部类一般包括四种:成员内部类.局部内部类.匿名内部类和静态内部类 大多数业务需求,不使用内部类都可以解决,那为什么Java还要设计内部类呢. 二.内部类的使用场景 ...

  10. 一文读懂MySQL的索引结构及查询优化

    回顾前文: 一文学会MySQL的explain工具 (同时再次强调,这几篇关于MySQL的探究都是基于5.7版本,相关总结与结论不一定适用于其他版本) MySQL官方文档中(https://dev.m ...