- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章2020最新版vscode格式化代码的详细教程由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
这篇关于vscode格式化配置研究初稿,具体内容如下所示:
前言 。
之前用vscode进行格式化的时候都是在百度和谷歌上搜“vscode格式化代码”然后直接copy别人。细节的配置一直没去看过.
但是最近一段时间开发项目的时候发现和同组的提交代码的时候格式总是不统一。于是这两天专门看了看插件的官方文档,研究研究.
今天初步有一点研究结果了。会配置一点点了。写此博客与大家共同参考。不足的地方欢迎大家补充,错误的地方欢迎大家纠错.
文章内容包括两个部分:一是理论,二是我的settings.json的配置.
理论 。
参考文章:
VSCode程序猿彩虹屁插件rainbow fart体验篇 。
vscode 配置vue+vetur+eslint+prettier自动格式化功能 。
代码格式化目的:
代码格式化的目的一是为了提高代码可读性,方便自己编码,方便团队开发;二是方便找出和修正因为格式导致的错误.
在团队开发。因为每个人的编码习惯不同,如 。
统一代码格式,让每个人开发更顺利.
为了完成第一个目的,格式化插件有vetur、prettier等针对文件进行格式化的插件; 。
为了完成第二个目的,格式化插件有ESlint等对文件进行代码检验的插件.
代码格式化的注意事项:
插件作用 。
首先明白格式化插件分别侧重格式化哪些文件,因为不同的文件有不同的格式规范.
1
2
3
4
5
6
|
prettyhtml格式化HTML;
prettier格式化css/less/scss/postcss/ts;
stylus-supremacy格式化stylus;
vscode自带格式化插件格式化js;
vetur格式化.vue文件;让不同块使用不同的格式化方案
ESlint:新版的ESlint支持了对.vue文件的校验。
|
符合代码检验 。
然后注意让格式化的代码符号ESlint代码检验.
格式化代码最重要的是两点,一点是用格式化插件格式化对应的文件;另一点是让格式化后的代码能通过代码检验工具.
举个例子.
Prettier插件不支持在函数名后面加上括号。这点和ESlint冲突了。所以js的格式化不能使用prettier插件格式化,而是使用vscode自带的js格式化功能来格式化。否则ESlint就是报错,简直烦死强迫症.
插件更新 。
最后要注意插件的是插件不断更新的,所以网上直接copy的格式化代码会各种不兼容.
如vscode 的 ESLint 插件在某个版本已经移除了 "eslint.validate" 这个配置选项,而网上很多教程都是使用的这个.
在新版的 ESLint 中已经支持了对 *.vue 文件的校验,所以无需再进行这项配置了,只需要添加一个保存时自动修复 ESLint 错误的功能就行了.
代码格式化插件的官方文档:
语言介绍 。
pug:官方文档 。pug是一款专门为node.js平台开发的HTML模块引擎.
less:官方文档。less是一门CSS预处理语言.
scss:官方文档。scss(sass)是世界上最成熟、稳定强大的专业级CSS预处理语言.
postcss:官方文档。postcss是使用js插件来转换CSS的工具.
stylus:官方文档。stylus是node.js平台上的CSS预处理框架.
插件介绍 。
vetur:官方文档。代码高亮、emmet语法支持、语法错误校验检查、代码提醒、格式化vue。 vetur集成了prettier,让.vue文件中不同的块使用不同的格式化方案,template标签调用 html 格式化工具,script标签调用 JavaScript 格式化工具,style标签使用style格式化工具.
ESlint:官方文档。代码检验.
prettyhtml:官方文档。为vue或纯HTML模板等提供通用格式化的工具.
pretties:官方文档。代码格式化工具,能够解析代码,使用用户设定的规则格式化规范的代码.
stylus-supremacy:官方文档。用于格式化stylus文件的node.js模块.
我的settings.json文件 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
|
{
/*格式化文件对应插件:
主要是两步,一步是用格式化插件格式化对应的文件;
另一步让格式化后的代码能通过代码检验工具。
prettyhtml格式化HTML;prettier格式化css/less/scss/postcss/ts;
stylus-supremacy格式化stylus;
vscode自带格式化插件格式化js;
vetur格式化.vue文件;
ESlint进行代码检验。
*/
/*格式化思路和注意事项。
注意格式化的代码能符合ESlint代码检验。
1.用vetur设置默认格式化工具。格式化.vue文件
2.用ESlint设置保存时修复ESlint错误的功能。
3.用prettier格式化css;去除语法结尾的分号,使用单引号替换双引号。
4.保存时自动格式化。
*/
// 默认使用prettier格式化支持的文件
"editor.defaultFormatter"
:
"esbenp.prettier-vscode"
,
"vetur.format.defaultFormatter.html"
:
"prettyhtml"
,
"vetur.format.defaultFormatter.css"
:
"prettier"
,
"vetur.format.defaultFormatter.postcss"
:
"prettier"
,
"vetur.format.defaultFormatter.scss"
:
"prettier"
,
"vetur.format.defaultFormatter.less"
:
"prettier"
,
"vetur.format.defaultFormatter.stylus"
:
"stylus-supremacy"
,
// "vetur.format.defaultFormatter.js": "prettier",
"vetur.format.defaultFormatter.ts"
:
"prettier"
,
"vetur.format.defaultFormatter.sass"
:
"sass-formatter"
,
"open-in-browser.default"
:
"Chrome"
,
// 将vetur的js格式化工具指定为vscode自带的
"vetur.format.defaultFormatter.js"
:
"vscode-typescript"
,
// 移除js语句的分号
"javascript.format.semicolons"
:
"remove"
,
// 在函数名后面加上括号,类似这种形式 foo () {}
"javascript.format.insertSpaceBeforeFunctionParenthesis"
:
true
,
// eslint配置项,保存时自动修复错误。
"editor.codeActionsOnSave"
: {
"source.fixAll"
:
true
},
// 指定 *.vue 文件的格式化工具为vetur
"[vue]"
: {
"editor.defaultFormatter"
:
"octref.vetur"
},
// 指定 *.js 文件的格式化工具为vscode自带
"[javascript]"
: {
"editor.defaultFormatter"
:
"vscode.typescript-language-features"
},
"vetur.format.defaultFormatterOptions"
: {
"JS-beautify-HTML"
: {
// JS-beautify-HTML的设置在这里
"wrap_attributes"
:
"force-aligned"
},
" prettyhtml"
: {
"printWidth'"
: 100,
// 每一行不超过100个字符
"singleQuote"
:
false
,
// 不用单引号
"wrapAttributes"
:
false
,
"sortAttributes"
:
true
},
"prettier"
: {
// 去掉代码结尾的分号
"semi"
:
false
,
//不加分号
"singleQuote"
:
true
,
//用单引号
// #让prettier使用eslint的代码格式进行校验
"eslintIntegration"
:
true
,
"arrowParens"
:
"always"
}
},
// vscode默认启用了根据文件类型自动设置tabsize的选项
"editor.detectIndentation"
:
false
,
// 重新设定tabsize
"editor.tabSize"
: 2,
// 保存时自动格式化代码
"editor.formatOnSave"
:
true
,
//可选项。stylus的格式化配置以及sass格式化配置。
// 格式化stylus, 需安装Manta's Stylus Supremacy插件
"stylusSupremacy.insertBraces"
:
false
,
// 是否插入大括号
"stylusSupremacy.insertColons"
:
false
,
// 是否插入冒号
"stylusSupremacy.insertSemicolons"
:
false
,
// 是否插入分号
"stylusSupremacy.insertNewLineAroundImports"
:
false
,
// import之后是否换行
"stylusSupremacy.insertNewLineAroundBlocks"
:
false
,
// 启用调试模式。
"sass.format.debug"
:
false
,
// 删除空格
"sass.format.deleteEmptyRows"
:
true
,
// 删除最后一个空格。
"sass.format.deleteWhitespace"
:
true
,
// 将 scss / css 转换为 sass。
"sass.format.convert"
:
true
,
// 如果 属性:值 为true,则始终设置为1.
"sass.format.setPropertySpace"
:
true
/*格式化插件:
//vetur:代码高亮、emmet语法支持、语法错误校验检查、代码提醒、格式化vue。
vetur集成了prettier,让.vue文件中不同的块使用不同的格式化方案,
<template> 调用 html 格式化工具,
<script> 调用 JavaScript 格式化工具,
<style> 使用style格式化工具。
//ESlint:新版的ESlint支持了对.vue文件的校验。
//prettyhtml:为纯HTML模板等提供通用格式化的工具。
//prettier:格式化工具,用于css/less/scss/postcss/ts
//stylus-supremacy:用于格式化stylus文件的node.js模块。
//js的格式化工具用vscode自带的。
Prettier不支持在函数名后面加上括号。这点和ESlint冲突了。
//EditorConfig:主要是用于让 vscode 支持.editorconfig 文件。
.editorconfig 文件中的设置用于在基本代码库中维持一致的编码风格和设置,
例如缩进样式、选项卡宽度、行尾字符以及编码等。
EditorConfig 是让代码创建前保持规范,
Prettier 是让代码保存后保持规范
*/
}
|
总结 。
到此这篇关于2020最新版vscode格式化代码的详细教程的文章就介绍到这了,更多相关vscode格式化代码内容请搜索我以前的文章或继续浏览下面的相关文章希望大家以后多多支持我! 。
原文链接:https://blog.csdn.net/weixin_42875245/article/details/107876508 。
最后此篇关于2020最新版vscode格式化代码的详细教程的文章就讲到这里了,如果你想了解更多关于2020最新版vscode格式化代码的详细教程的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我尝试理解[c代码 -> 汇编]代码 void node::Check( data & _data1, vector& _data2) { -> push ebp -> mov ebp,esp ->
我需要在当前表单(代码)的上下文中运行文本文件中的代码。其中一项要求是让代码创建新控件并将其添加到当前窗体。 例如,在Form1.cs中: using System.Windows.Forms; ..
我有此 C++ 代码并将其转换为 C# (.net Framework 4) 代码。有没有人给我一些关于 malloc、free 和 sprintf 方法的提示? int monate = ee; d
我的网络服务器代码有问题 #include #include #include #include #include #include #include int
给定以下 html 代码,将列表中的第三个元素(即“美丽”一词)以斜体显示的 CSS 代码是什么?当然,我可以给这个元素一个 id 或一个 class,但 html 代码必须保持不变。谢谢
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 7 年前。
我试图制作一个宏来避免重复代码和注释。 我试过这个: #define GrowOnPage(any Page, any Component) Component.Width := Page.Surfa
我正在尝试将我的旧 C++ 代码“翻译”成头条新闻所暗示的 C# 代码。问题是我是 C# 中的新手,并不是所有的东西都像 C++ 中那样。在 C++ 中这些解决方案运行良好,但在 C# 中只是不能。我
在 Windows 10 上工作,R 语言的格式化程序似乎没有在 Visual Studio Code 中完成它的工作。我试过R support for Visual Studio Code和 R-T
我正在处理一些报告(计数),我必须获取不同参数的计数。非常简单但乏味。 一个参数的示例查询: qCountsEmployee = ( "select count(*) from %s wher
最近几天我尝试从 d00m 调试网络错误。我开始用尽想法/线索,我希望其他 SO 用户拥有可能有用的宝贵经验。我希望能够提供所有相关信息,但我个人无法控制服务器环境。 整个事情始于用户注意到我们应用程
我有一个 app.js 文件,其中包含如下 dojo amd 模式代码: require(["dojo/dom", ..], function(dom){ dom.byId('someId').i
我对“-gencode”语句中的“code=sm_X”选项有点困惑。 一个例子:NVCC 编译器选项有什么作用 -gencode arch=compute_13,code=sm_13 嵌入库中? 只有
我为我的表格使用 X-editable 框架。 但是我有一些问题。 $(document).ready(function() { $('.access').editable({
我一直在通过本教程学习 flask/python http://blog.miguelgrinberg.com/post/the-flask-mega-tutorial-part-i-hello-wo
我想将 Vim 和 EMACS 用于 CNC、G 代码和 M 代码。 Vim 或 EMACS 是否有任何语法或模式来处理这种类型的代码? 最佳答案 一些快速搜索使我找到了 this vim 和 thi
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 想改进这个问题?更新问题,使其成为 on-topic对于堆栈溢出。 7年前关闭。 Improve this
这个问题在这里已经有了答案: Enabling markdown highlighting in Vim (5 个回答) 6年前关闭。 当我在 Vim 中编辑包含 Markdown 代码的 READM
我正在 Swift3 iOS 中开发视频应用程序。基本上我必须将视频 Assets 和音频与淡入淡出效果合并为一个并将其保存到 iPhone 画廊。为此,我使用以下方法: private func d
pipeline { agent any stages { stage('Build') { steps { e
我是一名优秀的程序员,十分优秀!