关于VSCode EditorConfig使用说明

1,440 阅读2分钟

1.前言说明


在团队多人开发的项目中,不能保证团队成员都使用相同的编辑器,那么不同的编辑器之间的格式设置有可能各不相同,就无法保证项目代码格式的统一,往往会出现意想不到的问题。比如缩进大小、选项卡宽度、行尾字符、编码等。

那么如何保证团队代码在多人协同开发,使用编辑器格式不一的情况下仍然保证相同的格式呢,这就是EditorConfig 要做的事情。

2.什么是EditorConfig


引用官方解释

EditorConfig 有助于为跨各种编辑器和 IDE 处理同一项目的多个开发人员维护一致的编码风格。EditorConfig 项目由用于定义编码样式的文件格式和一组文本编辑器插件组成,这些插件使编辑器能够读取文件格式并遵循定义的样式。

结构组成:
  1. EditorConfig插件:不是所有编辑器都默认支持,如VS Code需要自行下载,webstrom默认支持。点击EditorConfig官网查看详细。
  2. . editorconfig自定义文件:. editorconfig 自定义文件是用来定义编辑器的编码格式规范,编辑器的行为会与  . editorconfig 文件中定义的一致,并且其优先级比编辑器自身的设置要高

EditorConfig 插件会读取  . editorconfig 文件中定义的内容,应用于编辑器。

3. . editorconfig文件格式

在 EditorConfig 文件中,每行上的所有开头空格都被认为是不相关的。每行必须是以下之一:

  • 空白
  • 注释,使用(#)或分号(;)进行注释
  • 部分标题
  • 键值对,键=值

EditorConfig 文件默认编码是 UTF-8

EditorConfig 文件从上到下读取,最先发现的规则优先。

如果.editorconfig 文件没有进行某些配置,则使用编辑器默认的设置

4.支持的属性

# 表示是最顶层的配置文件,发现值为true时,才会停止查找.editorconfig文件
root

# 设置缩进风格 tab or space
indent_style

# 定义每个缩进风格缩进空格数
indent_size

# 用一个整数定义tab缩进的列数
tab_width

# 设置换行符 lf cr crlf
end_of_line

# 设置编码格式 utf-8
charst

# 设为true表示使文件以一个空白行结尾
insert_final_newline

# 设为true表示会去除换行行首的任意空白字符
trim_trailing_whitespace