vim 配置 clang-format[通俗易懂]

vim 配置 clang-format[通俗易懂]vim配置clang-format

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE使用 1年只要46元 售后保障 童叟无欺

在ubuntu14.04下完成配置

第一步:安装clang-format

sudo apt-get install clang-format-3.x

第二步:二进制文件拷贝

拷贝一个不带版本号的二进制,实际上就是重命名

sudo cp /usr/bin/clang-format-3.x /usr/bin/clang-format

截止目前,已经可以在shell使用clang-format
例如:

clang-format main.cpp -style=LLVM

第三步:配置vim

有很多方式,我才用了官网的方式
http://clang.llvm.org/docs/ClangFormat.html

具体流程:

1)下载clang-format.py

2)在vimrc中添加

map <C-K> :pyf <path-to-this-file>/clang-format.py<cr>

imap <C-K> <c-o>:pyf <path-to-this-file>/clang-format.py<cr>

至此完成的功能有:
normal模式下,ctrl+k将格式化一行代码
visual模式下,ctrl+k将格式化选中代码
insert模式下,ctrl+k将格式化一行代码

打开一个文件,发现提示:没有.clang-format文件,默认将使用llvm风格,我们可以才当前目录下创建一个.clang-format:
这里我抄了一个腾讯的文件

--- BasedOnStyle: LLVM
IndentWidth: 4
TabWidth: 4
AlwaysBreakTemplateDeclarations: true
AllowShortFunctionsOnASingleLine: Inline
BreakAfterJavaFieldAnnotations: true
BreakBeforeBraces: Linux
SpaceAfterCStyleCast: true
IndentCaseLabels: true
AccessModifierOffset: -4
BreakBeforeBraces: Custom
BraceWrapping:
 AfterNamespace: false
 AfterClass: false
 AfterFunction: true

BreakConstructorInitializersBeforeComma: true
ConstructorInitializerAllOnOneLineOrOnePerLine: true
BinPackParameters: false
ReflowComments: false ---
Language: Cpp
ColumnLimit: 80 ---
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/188525.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • Oracle函数之LAG函数[通俗易懂]

    Oracle函数之LAG函数[通俗易懂]语法使用方法  LAG是一个分析函数。它可以在不使用自连接的情况下同时访问到一个表的多行数据。给一个或多个列名和一个游标位置(位移),LAG可以访问当前行之前的行,行之间间隔的行数为位移值。  语法树中的offset(位移)参数是可选的,可以指定一个大于0的整数,如果不指定offset(位移)参数函数会默认位移为1。语法树中的default值也是可选的,这个default值是当位移值超过查…

    2025年8月27日
    6
  • 软件测试中常用的linux命令_软件测试linux

    软件测试中常用的linux命令_软件测试linuxlinux常用shell命令=命令+选项+参数find查找文件/目录cd(changedirectory)切换目录cd#root根目录 cd/#系统根目录 cd../../#返回上上一层目录ls/dir(list)列出目录下文件ls-a(–all)…

    2022年9月23日
    2
  • 线程池参数及配置「建议收藏」

    线程池参数及配置「建议收藏」线程池-线程池参数及配置在实际项目中线程的应用都会使用线程池来管理,线程池的常用参数及配置学习记录。目录线程池-线程池参数及配置一、线程池在面向对象编程中,创建和销毁对象是很费时间的,因为创建一个对象要获取内存资源或者其它更多资源。在Java中更是如此,虚拟机将试图跟踪每一个对象,以便能够在对象销毁后进行垃圾回收。所以提高服务程序效率的一个手段就是尽可能减少创建和销毁对象的次数,特别是一些很耗资源的对象创建和销毁。如果并发的线程数多,并且每个线程都是…

    2022年5月3日
    92
  • IntelliJ IDEA 2021.5.2激活码【在线注册码/序列号/破解码】

    IntelliJ IDEA 2021.5.2激活码【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月20日
    66
  • kfold交叉验证k越大_内部交叉验证

    kfold交叉验证k越大_内部交叉验证交叉验证的原理放在后面,先看函数。设X是一个9*3的矩阵,即9个样本,3个特征,y是一个9维列向量,即9个标签。现在我要进行3折交叉验证。执行kFold=KFold(n_splits=3):其中KFold是一个类,n_split=3表示,当执行KFold的split函数后,数据集被分成三份,两份训练集和一份验证集。执行index=kFold.split(X=X):index是一个生成器…

    2022年9月20日
    2
  • pandas中的drop函数_pandas replace函数

    pandas中的drop函数_pandas replace函数这里写自定义目录标题新的改变功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML图表FLowchart流程图导出与导入导出导入新的改变我们对Markdown编辑器进行了一些功能拓展与语法支持,除了标准的Markdown编辑器功能,我们增加了如下几点新功能,帮助你用它写博客:

    2022年9月16日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号