VsCode 格式化代码风格

这篇具有很好参考价值的文章主要介绍了VsCode 格式化代码风格。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

       最近在用vscode写代码,由于代码在服务器上,所以我是通过remote-ssh插件远程到linux的虚拟机上。之前用的是vscode 1.67的版本,后面升级到了vscode最新的 1.85版本,发现格式化代码不起作用了。后来研究了一下。

安装 c/c++ 插件

       首先格式化代码是通过 clang-format这个工具进行格式化的,这个工具的获取有两种方式,一种是直接安装clang-format插件,第二种是安装c/c++插件,c/c++插件中会自带这个clang-format,由于我之前安装了 c++插件,所以我采用了第二种方式。

vscode格式化代码风格设置,vscode,ide,编辑器

注意点        

1.  这里我建议如果之前有远程过虚拟机,但是升级版本后出问题的,先把虚拟机上的  .vscode-server目录删掉,保证环境单一。

2.  如果有直接在虚拟机上装过  clang-format的也卸载掉。sudo apt remove clang-format  然后在终端执行下 clang-format 如果提示未找到命令说明卸载干净了。

配置VsCode

1. 点vscode左下角的设置图标,选择设置

vscode格式化代码风格设置,vscode,ide,编辑器

   

2. 选择扩展->C/C++/格式设置(要是你是英文界面先去把vscode语言设置成中文,自行百度)

vscode格式化代码风格设置,vscode,ide,编辑器

注意图片第4步路径的选择,在虚拟机上执行 sudo find / -name clang-format命令,一般.vscode-server/extensions/ms-vscode.cpptools-1.18.5-linux-x64/LLVM/bin 在这个目录下,我那个黄颜色的路径,你要根据自己的插件版本来看,我这里安装的是c/c++ 18.5版本的插件。

然后在第4步这里 填入 xxxxx/clang-format,xxxxx是你自己的路径,最后要把clang-format加上去

vscode格式化代码风格设置,vscode,ide,编辑器

3. 把 .clang-format文件放到你的工程根目录下

vscode格式化代码风格设置,vscode,ide,编辑器

.clang-format文件如下:(自己建一个.clang-format文件,把下面的拷贝进去)

Language:        Cpp
#BasedOnStyle:    LLVM
AccessModifierOffset: -2
AlignAfterOpenBracket: Align
AlignConsecutiveMacros: false
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignEscapedNewlines: Left
AlignOperands: true
AlignTrailingComments: true
AllowAllArgumentsOnNextLine: true
AllowAllConstructorInitializersOnNextLine: true
AllowAllParametersOfDeclarationOnNextLine: true
AllowShortBlocksOnASingleLine: false
AllowShortCaseLabelsOnASingleLine: false
AllowShortFunctionsOnASingleLine: None
AllowShortLambdasOnASingleLine: All
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
AlwaysBreakAfterDefinitionReturnType: None
AlwaysBreakAfterReturnType: None
AlwaysBreakBeforeMultilineStrings: false
AlwaysBreakTemplateDeclarations: MultiLine
BinPackArguments: true
BinPackParameters: true
BraceWrapping:
  AfterCaseLabel:  false
  AfterClass:      true
  AfterControlStatement: false
  AfterEnum:       false
  AfterFunction:   true
  AfterNamespace:  false
  AfterObjCDeclaration: false
  AfterStruct:     false
  AfterUnion:      false
  AfterExternBlock: false
  BeforeCatch:     false
  BeforeElse:      false
  IndentBraces:    false
  SplitEmptyFunction: true
  SplitEmptyRecord: true
  SplitEmptyNamespace: true
BreakBeforeBinaryOperators: None
BreakBeforeBraces: Custom
BreakBeforeInheritanceComma: true
BreakInheritanceList: BeforeColon
BreakBeforeTernaryOperators: true
BreakConstructorInitializersBeforeComma: false
BreakConstructorInitializers: BeforeColon
BreakAfterJavaFieldAnnotations: false
BreakStringLiterals: false
ColumnLimit:     120
CommentPragmas:  '^ IWYU pragma:'
CompactNamespaces: false
ConstructorInitializerAllOnOneLineOrOnePerLine: false
ConstructorInitializerIndentWidth: 4
ContinuationIndentWidth: 4
Cpp11BracedListStyle: true
DerivePointerAlignment: false
DisableFormat:   false
ExperimentalAutoDetectBinPacking: false
FixNamespaceComments: true
ForEachMacros:
  - foreach
  - Q_FOREACH
  - BOOST_FOREACH
IncludeBlocks:   Preserve
IncludeCategories:
  - Regex:           '^"(llvm|llvm-c|clang|clang-c)/'
    Priority:        2
  - Regex:           '^(<|"(gtest|gmock|isl|json)/)'
    Priority:        3
  - Regex:           '.*'
    Priority:        1
IncludeIsMainRegex: '(Test)?$'
IndentCaseLabels: true
IndentPPDirectives: AfterHash
IndentWidth:     4
IndentWrappedFunctionNames: false
JavaScriptQuotes: Leave
JavaScriptWrapImports: true
KeepEmptyLinesAtTheStartOfBlocks: false
MacroBlockBegin: ''
MacroBlockEnd:   ''
MaxEmptyLinesToKeep: 1
NamespaceIndentation: All
ObjCBinPackProtocolList: Auto
ObjCBlockIndentWidth: 4
ObjCSpaceAfterProperty: false
ObjCSpaceBeforeProtocolList: true
PenaltyBreakAssignment: 2
PenaltyBreakBeforeFirstCallParameter: 19
PenaltyBreakComment: 300
PenaltyBreakFirstLessLess: 120
PenaltyBreakString: 1000
PenaltyBreakTemplateDeclaration: 10
PenaltyExcessCharacter: 1000000
PenaltyReturnTypeOnItsOwnLine: 60
PointerAlignment: Right
ReflowComments:  true
SortIncludes:    false
SortUsingDeclarations: true
SpaceAfterCStyleCast: false
SpaceAfterLogicalNot: false
SpaceAfterTemplateKeyword: true
SpaceBeforeAssignmentOperators: true
SpaceBeforeCpp11BracedList: false
SpaceBeforeCtorInitializerColon: true
SpaceBeforeInheritanceColon: true
SpaceBeforeParens: ControlStatements
SpaceBeforeRangeBasedForLoopColon: true
SpaceInEmptyParentheses: false
SpacesBeforeTrailingComments: 2
SpacesInAngles:  false
SpacesInContainerLiterals: true
SpacesInCStyleCastParentheses: false
SpacesInParentheses: false
SpacesInSquareBrackets: false
Standard:        Cpp11
StatementMacros:
  - Q_UNUSED
  - QT_REQUIRE_VERSION
TabWidth:        4

 4. 设置保存自动格式化

点击vscode左下角的设置图标,选择设置,在搜索框中搜索格式化。

vscode格式化代码风格设置,vscode,ide,编辑器

当然也可以不用设置保存自动格式化,那就需要自己右键对应的文件,然后选择格式化此文档。

vscode格式化代码风格设置,vscode,ide,编辑器文章来源地址https://www.toymoban.com/news/detail-856589.html

到了这里,关于VsCode 格式化代码风格的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • vscode 无法格式化python代码、无法格式化C++代码(vscode格式化失效)另一种解决办法:用外部工具yapf格式化(yapf工具)

    神马情况,我的vscode死活不能格式化python代码,还有C++代码也不能格式化,json代码都能格式化,为啥到python、C++就不行了。。。。 (格式化json代码) (格式化python代码) 都无反应。。。 弄了半天解决不了。。。只能用外部工具解决了,就是麻烦点 搞了个外部工具yapf来格

    2024年02月05日
    浏览(66)
  • vscode 格式化代码

    在 Visual Studio Code 中,你可以使用以下步骤来格式化代码: 打开你的代码文件。 选择你要格式化的代码部分或按  Ctrl+A  来全选。 按下  Shift+Alt+F ,这会触发 \\\"格式化文档\\\" 的命令。 如果你的键盘布局没有 \\\"Alt\\\" 键,或者你的快捷键与其他系统不同,你可能需要自定义或查阅

    2024年01月18日
    浏览(52)
  • vscode 2023格式化vue文件设置

    2024年02月10日
    浏览(50)
  • VsCode设置保存自动格式化(一步就够)

    在  VsCode  中我们可以通过设置来实现保存文件时自动格式化代码,具体步骤如下: 1.点击 设置 ,输入 格式化 ,如下图 2.将 Editor:Format On Save 选项勾选上即可 3.关闭 设置 页面,此时保存文件同时代码会自动格式化 希望本文能够对您有所帮助!如果您有任何问题或建议,请

    2024年01月17日
    浏览(44)
  • vscode设置Prettier为默认格式化插件

    1. 目的:ctrl+s保存,自动格式化文档 2. 所需插件Prettier 3. 操作步骤 先打开vscode软件,左下角点击设置 — 打开设置 ---- 在右上方有一个搜索框。 先设定自动保存文件,搜索框贴入 files.autoSave 筛出设置项,并把设置项属性选择为 onFocuschange 。 设定编辑器默认代码格式化(美化

    2024年02月06日
    浏览(50)
  • 使用vscode格式化文档无效(vue代码格式化文档无效)

    问题: 最近在写代码的时候,vscode使用格式化文档不管用。 原因: 单页面使用大量element组件和html代码导致,vscode识别不了。 解决方案: 1、 打开设置,点击右侧的图标打开settings.json文件,在文件中注入代码。 settings.json文件位置,vscode左下角:  设置页面右上角:  在

    2024年02月16日
    浏览(59)
  • vscode格式化代码禁止自动换行

    问题产生 代码格式化的功能由插件提供,比如veture,默认的配置超过很短的长度就回换行。 所以需要修改配置。 打开 文件 - 首选项 - 设置,然后点击右上角的图标。进入settings.json文件。 搜狗截图20220421170631.png 在这里面写配置。 问题解决 1.使用Prettier - Code formatter来格式化

    2024年02月06日
    浏览(45)
  • vscode中如何实现保存自动格式化代码

    两种方法: 1.配置settings.json 文件 第一步,点击 文件 首选项 设置   进入setting.json编辑页面,将下方设置项粘贴到大括号中: \\\"editor.formatOnType\\\": true, \\\"editor.formatOnSave\\\": true, 一定记得前边加个逗号  2.直接在设置中配置一个选项即可      

    2024年02月07日
    浏览(51)
  • vscode调教配置:快捷修复和格式化代码

    配置vscode快捷键,让你像使用idea一样使用vscode,我们最常用的两个功能就是格式化代码和快捷修复,所以这里修改一下快捷修复和格式化代码的快捷键。 在设置中,找到快捷键配置: 然后搜索:快捷修复 在快捷键绑定的地方,双击一下,然后输入你的快捷键,就可以了  

    2024年02月10日
    浏览(43)
  • VSCode代码格式化自动换行问题

    VSCode设置了保存自动格式化时,代码超过一定长度后会自动换行,我想禁止自动换行,找了很多方法都没有效果。 后来经过了长时间的寻找,终于找到了相应的解决方法,分为两个,如果其中一个不行,可以尝试另外一个。 第一种方法: 打开VSCode,然后在编辑器的顶部菜单

    2024年02月16日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包