.eidtorconfig文件介绍

本文介绍了EditorConfig的基本概念,如何通过样例配置实现跨平台的编码一致性,文件存储位置及搜索规则,同时详细解读了其属性设置。掌握它能提升团队编码规范一致性,适用于多种开发环境。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

EditorConfig简介

EditorConfig样例

文件存储位置

文件格式详细信息

EditorConfig属性说明


EditorConfig简介

  1. EditorConfig帮助维护跨多个编辑器和IDE的同一个项目的多个开发人员的一致编码风格;
  2. EditorConfig项目包括一个用于定义编码样式的文件格式和一个文本编辑器插件集合,这些文本编辑器插件使编辑器可以读取文件格式并遵循定义的样式;
  3. EditorConfig文件易于阅读,并且可以与版本控制系统很好地协同工作。

EditorConfig样例

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

# top-most EditorConfig file
root = true

# Unix-style newlines with a newline ending every file
[*]
end_of_line = lf
insert_final_newline = true

# Matches multiple files with brace expansion notation
# Set default charset
[*.{js,py}]
charset = utf-8

# 4 space indentation
[*.py]
indent_style = space
indent_size = 4

# Tab indentation (no size specified)
[Makefile]
indent_style = tab

# Indentation override for all JS under lib directory
[lib/**.js]
indent_style = space
indent_size = 2

# Matches the exact files either package.json or .travis.yml
[{package.json,.travis.yml}]
indent_style = space
indent_size = 2

文件存储位置

  1. 打开文件时,EditorConfig插件会.editorconfig在打开的文件的目录和每个父目录中查找一个名为的文件。.editorconfig如果到达根文件路径或root=true找到带有的EditorConfig文件,则文件搜索将停止。
  2. 从顶部到底部读取EditorConfig文件,并以发现的最新规则为准。匹配的EditorConfig部分中的属性将按读取顺序应用,因此,较近文件中的属性优先。
  3. 对于Windows用户:要.editorconfig在Windows资源管理器中创建文件,您需要创建一个名为的文件.editorconfig.,Windows资源管理器会自动将其重命名为.editorconfig

文件格式详细信息

EditorConfig文件使用INI格式与所使用的格式兼容的Python ConfigParser库,但[]允许在部分名字。这些部分的名称是文件路径glob(区分大小写),类似于gitignore接受的格式。

仅将正斜杠(/,而不是反斜杠)用作路径分隔符,并使用八边形(#)或分号(;)进行注释。评论应以自己的方式写。EditorConfig文件应采用UTF-8编码,并带有CRLFLF行分隔符。从顶部到底部读取EditorConfig文件,并以发现的最新规则为准。

EditorConfig属性说明

*匹配任何字符串,路径分隔符(/)除外
**匹配任何字符串
?匹配任何单个字符
[name]匹配名称中的任何单个字符
[!name]匹配名称以外的任何单个字符
{s1,s2,s3}匹配给定的任何字符串(以逗号分隔)(从EditorConfig Core 0.11.0开始可用)
{num1..num2}匹配num1num2之间的任何整数,其中num1和num2可以是正数或负数
indent_style设置为制表符或空格以分别使用硬制表符或软制表符
indent_size一个整数,定义用于每个缩进级别的列数和软标签的宽度(如果支持)。设置为tab时,tab_width将使用(如果指定)值
tab_width一个整数,用于定义用于表示制表符的列数。该默认值为,indent_size通常不需要指定
end_of_line

设置为lf,cr或crlf来控制换行符的表示方式。

charset:设置为latin1,utf-8,utf-8-bom,utf-16be或utf-16le来控制字符集

trim_trailing_whitespace设置为true会删除换行符之前的所有空白字符,而设置为false会确保不会删除任何空白字符
insert_final_newline设置为true以确保文件在保存时以换行符结尾,设置为false以确保不以换行符结尾
root特殊属性,应在任何部分之外的文件顶部指定。设置为true可停止.editorconfig在当前文件上搜索文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jsouzg

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值