用EditorConfig统一代码风格


简单来说,我们使用 EditorConfig 工具就是为了统一代码的编程风格,并且提高代码阅读质量。

EditorConfig 是用于跨不同的编辑器和 IDE 为多个开发人员维护一致的编码风格的配置文件。EditorConfig 项目由定义编码样式的文件格式和一组文本编辑器插件组成,编辑器插件通过读取文件并以已定义的样式格式化指定文件。EditorConfig 文件具有友好的阅读性,且能与版本控制系统配合良好的特点。

EditorConfig 配置文件需要是 UTF-8 字符集编码的, 以回车换行或换行作为一行的分隔符,斜线(/)被用作为一个路径分隔符,井号(#)或分号(;)被用作于注释,并且注释需要与注释符号写在同一行。

使用EditorConfig统一代码风格


1. 通配符

通配符和正则表达式中的基本一致

编号 通配符 对应含义说明
1 * 匹配除/之外的任意字符串
2 ** 匹配任意字符串
3 ? 匹配任意单个字符
4 [name] 匹配name中的任意一个单一字符
5 [!name] 匹配不存在name中的任意一个单一字符
6 {s1,s2,s3} 匹配给定的字符串中的任意一个(用逗号分隔)
7 {num1..num2} 匹配num1num2之间的任意一个整数

2. 属性介绍

所有的属性和值都是忽略大小写的

编号 通配符 对应含义说明
1 indent_style 设置缩进风格(tab是硬缩进和space为软缩进)
2 indent_size 用一个整数定义的列数来设置缩进的宽度
3 tab_width 用一个整数来设置tab缩进的列数,默认是indent_size
4 end_of_line 设置换行符,值为lfcrcrlf
5 charset 设置编码,通常设置为utf-8即可
6 trim_trailing_whitespace 设为true表示会去除换行行首的任意空白字符
7 insert_final_newline 设为true表示使文件以一个空白行结尾
8 root 表示是最顶层的配置文件

3. 配置示例

下面就是官网给出的配置示例

在当前项目根目录下添加 .editorconfig 文件,添加如下配置,即可生效。

# EditorConfig is awesome: https://EditorConfig.org

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

# 对于所有的文件的配置
# 设置始终在文件末尾插入一个新行
[*]
end_of_line = lf
insert_final_newline = true

# 对于所有的JS和PY文件的配置
# 设置文件的字符集为utf-8格式
[*.{js,py}]
charset = utf-8

# 控制PY文件缩进类型和缩进大小
[*.py]
indent_style = space
indent_size = 4

# 设置Makefile文件使用tab缩进
[Makefile]
indent_style = tab

# 设置在lib目录下所有JS的缩进样式
[lib/**.js]
indent_style = space
indent_size = 2

# 设置确切文件package.json和.travis/.yml的缩进类型
[{package.json,.travis.yml}]
indent_style = space
indent_size = 2

文章作者: Escape
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Escape !
  目录