Editorconfig简介
- editorConfig是编辑器配置,可以帮助开发者在不同的编辑器和IDE之间定义和维护一致的代码风格。比如编辑器中一个制表符等于的空格数的大小(即缩进大小),编辑器中设置的大小是不一致的
Editorconfig组成部分
- EditorConfig插件:EditorConfig 插件并不是所有的编辑器都默认支持的,需要使用请根据自己所需要使用的编辑器自行安装。
- .editorconfig 自定义文件,该文件的内容定义该项目的编码规范,编辑器的行为会与 .editorconfig 文件中定义的一致,并且其优先级比编辑器自身的设置要高。
- 当用IDE打开一个文件时,editorConfig插件.editorconfig 文件中定义的内容,应用于编辑器,编辑器读取配置文件并依此格式化代码,如果没有的话就用编辑器默认配置.
Editorconfig文件
-
EditorConfig 文件采用类似 INI 的文件格式。在 EditorConfig 文件中,每行上的所有开头空格都被认为是不相关的。每行必须是以下之一:
空白 注释 -- 使用八字 ( #) 或分号 ( ;) 进行注释 部分标题 键值对 -- 包含一个键和一个值,用=分隔
-
EditorConfig 文件应该是 UTF-8 编码的,带有 LF 或 CRLF 行分隔符。
Editorconfig通配符
- 特殊字符可以用反斜杠转义,这样它们就不会被解释为通配符模式。
- EditorConfig 通过以下通配符来匹配特殊文件
Editorconfig通配符 | 匹配 |
---|---|
* | 任何字符串,路径分隔符 ( /)除外 |
** | 任何字符串 |
? | 任何单个字符,路径分隔符 ( /)除外 |
[name] | 匹配名称中的任何单个字符 |
[!name] | 匹配名称中没有的任何单个字符 |
{s1,s2,s3} | 匹配任何给定的字符串(以逗号分隔,可以嵌套) |
{num1…num2} | num1和之间的任何整数num2,其中num1和num2 可以是正 |
Editorconfig配置说明
-
Editorconfig支持的属性
root 表示是最顶层的配置文件,发现设为true时,才会停止查找.editorconfig文件 charset 设置编码 一般设置为utf8 indent_style 缩进类型(tab是硬缩进,space为软缩进) indent_size 缩进的数量,如果indent_style为tab,则此属性默认为tab_width tab_width 用一个整数来设置tab缩进的列数。默认是indent_size end_of_line 换行符格式,值为lf、cr和crlf trim_trailing_whitespace 设为true表示会去除换行行首的任意空白字符。 insert_final_newline 是否在文件的最后插入一个空行
-
Editorconfig 配置样例
# http://editorconfig.org root = true # 对所有的文件生效 [*] charset = utf-8 indent_style = space indent_size = 4 tab_width =4 end_of_line = lf trim_trailing_whitespace = true insert_final_newline= true max_line_length = 80[*.{json,yml}] indent_size = 2[*.md] trim_trailing_whitespace = false
-
Editorconfig 支持的编辑器
PS:我个人是Java YYDS,在研究BigData,也在尝试不同的IDE做开发,年轻人,冲冲冲!