VScode配置自动代码格式化C/C++
VScode配置自动代码格式化C/C++
前言
在实习的过程中,我发现很多资深的开发者都习惯自己敲空格,按照公司的代码规范使用标尺来提示自己什么时候该换行。也许这样做可以增加代码编辑时的灵活性,但对于新入职场(用惯了VS)的小白来说,无疑大大降低了工作效率。本文分享了如何使用VScode配置自动的代码格式化,以及在配置代码格式化的过程中可能会踩的一些坑。
ps:需要用到C/C++扩展,不需要安装任何格式化插件,感兴趣可自行搜索 Prettier。
自动格式化配置
- 进入VScode左下角设置
- 找到文本编辑器-格式化,可以根据需要勾选,第一个是cv的时候自动格式化,第二个是保存的时候自动格式化,第三个是输入分号就可以格式化,就像VS那样,我一般习惯全都勾上。Save Mode选file就可以,配合第二个勾就会在保存的时候格式化整个文件。
- (也已在其他位置修改)是我其他扩展修改的,如果你也有,可以通过将鼠标悬停在该提示上,它会显示是在哪里改的。
如果第二个不勾会出现类似这种,少一个空格。这里VS做的比较好,大括号内换行会格式化一次:
如果懒得保存或者经常忘记保存,建议设置一下自动保存,我习惯设置为onFocusChange,这样我在进入其它文件编辑时这个文件就会自动保存。
编译之前不需要主动保存一下,VScode一般默认是save before run的,没有的话可以检查一下这里是不是always。
格式配置
配置完了自动格式化,现在来配置具体想要什么样的格式。如果只是自己使用,没有公司代码规范限制的话,可以在设置里面搜索“格式化”,在第一条Default Formatter下选择一个格式化程序,有的扩展会提供一些格式化程序,可以自己尝试一下。
如果需要针对性地做调整,这里以C/C++为例,在格式设置下找到Clang_format_fallback Style,选择一个样式作为预定义打个底,作为找不到格式文件时使用的格式。我这里使用了Visual Studio。
往下翻,找到Formatting,这里比较关键,相当于设置一个默认的格式,默认是default,这个是需要一个格式文件的,感兴趣可以去了解怎么编写 clang-format 格式文件,这里设置成vcFormat,就可以直接在UI里操作一些配置项调整格式了。
其它设置都默认就好,然后接着往下翻,或者直接搜索vcformat,有非常多的配置项可以自定义。这里举个例子,默认设置下可能会格式化成左图这样,如果想要代码紧凑一点如右图这样——
可以在vcformat中找到如下配置项,并按图中配置。你可以根据喜好或规范勾选。其它的配置项感兴趣可以自行查看、尝试,基本上是够用了的。
另外如果需要设置一行代码字符的最大长度,可以在设置里搜索“wordWrapColumn”,默认是80个字符。如果默认格式使用clang-format,可以在局部代码前后加注释// clang-format off和// clang-format on临时禁用自动格式化,注意//后的一个空格不能丢。
VScode的魅力在于扩展,没事可以多看看扩展的特性介绍和配置项,也许会有新的收获。