0


Visual Studio Code(vscode) 格式化C++代码

前言

vscode 自带的代码格式化工具不太好用,因此我们需要有额外的代码格式化插件进行辅助,一般情况下都使用 clang-format 格式化,这里是对 vscode 安装和使用 clang-format 进行总结。

本文仅介绍在 macbook 上的安装方法。

安装

关于 vscode 安装请参考文章:Visual Studio Code(VSCode) 编辑/编译/调试 C++ 代码

安装 clang-format 工具

通过命令行执行:

brew install clang-format

安装后的位置是:/opt/homebrew/bin/clang-format

安装 clang-format 插件

搜索 clang-format 之后安装下图中的插件

clang-format 的执行规则

在配置之前,我们需要先了解 clang-format 的执行规则,否则会一头雾水。

当执行格式化时,clang-format 首先会在 cpp/h 文件所在的目录下寻找 .clang-format 文件,如果存在这个文件,则会按照这个文件的配置规则执行,如果不存在,则会继续向父级目录找 .clang-format 文件并执行。

如果寻找的所有目录都没有 .clang-format 文件,则会执行默认的格式化规则。

这种设计方式非常有道理。

配置

生成 .clang-format 文件

在想要设置规则的目录下执行命令

clang-format -style=google -dump-config > .clang-format

规则详解

在 vscode 中配置

在 vscode 中有几种配置方法

全局配置

在设置中搜索 Default Formatter,然后找到 Clang-Format 配置项

当然,如果在有格式化配置项数量变化时,只要点击 ⇧⌘F vscode 也会直接给出提示。

在当前工程配置

如果前面按照 Visual Studio Code(VSCode) 编辑/编译/调试 C++ 代码 文档执行过,则会在工程目录下生成 settings.json 文件,如果没有这个文件也可以自己建立一个。然后在里面配置如下内容:

{
    "C_Cpp.formatting": "clangFormat"
}

这样就可以生效了

执行

在执行格式化时有几种执行方式

快捷键

⇧⌘F

在页面内右键单击选择

右键单击的好处是可以选择使用哪一种格式化命令。

自动删除行尾空格

vscode 提供了保存时自动格式化,我个人并不太建议使用。但是 vscode 还提供一个功能,就是在保存时去除行尾空格。我觉得比较有意义。

在设置中搜索 trim trailing whitespace,然后点勾

参考文章

https://blog.csdn.net/Once_day/article/details/127761573

https://clang.llvm.org/docs/ClangFormatStyleOptions.html


本文转载自: https://blog.csdn.net/shishanwen/article/details/128775355
版权归原作者 攻城狮-小文 所有, 如有侵权,请联系我们删除。

“Visual Studio Code(vscode) 格式化C++代码”的评论:

还没有评论