📜  什么是 .editorconfig ?

📅  最后修改于: 2022-05-13 01:56:36.642000             🧑  作者: Mango

什么是 .editorconfig ?

EditorConfig 是一个简单的配置文件,其中包含可应用于任何 IDE 或代码编辑器以正确格式化代码的规则列表。但为什么要使用 EditorConfig?考虑一个场景,您的团队正在处理一个项目,但团队中的各个成员使用不同的 IDE 或代码编辑器,这些差异可能会导致应用于代码的格式不一致,因为每个 IDE/编辑器都有自己的配置。 EditorConfig 通过在一些插件/扩展的帮助下拥有一个可供所有 IDE 和代码编辑器读取的单个配置文件来解决这个问题。该工具广泛用于许多大型项目,包括 Angular、Bootstrap、Django、Nodejs、React、Vuejs 等等。

使用 EditorConfig 的优势

  1. 你可以有一个通用的缩进样式(制表符/空格)和缩进大小
  2. EditorConfig 将帮助配置字符编码和行尾 (lf/crlf)
  3. 它还可以强制编辑器在每个文件的末尾有一个新行等等。

在您的项目中设置 EditorConfig:

要设置 EditorConfig,您需要安装与您的 IDE/编辑器相对应的插件/扩展。
以下编辑器不需要任何插件,因为它们带有对 EditorConfig 的本机支持:

  • 智能
  • 皮查姆
  • 视觉工作室
  • Github / Gitlab / Gitbucket

如果您使用下面列出的编辑器,那么您应该通过它们各自的链接安装插件:

  • VS 代码
  • 原子
  • 代码块
  • 网豆
  • 崇高的文本

安装相应的插件/扩展后,在项目目录的根目录中创建一个名为 `.editorconfig` 的文件

如果您使用的是 VS Code,您可以通过资源管理器侧边栏的上下文菜单生成一个新的 editorconfig 文件,方法是右键单击您想要的文件夹并选择 Generate .editorconfig。

在 VS-Code 中的 EditorConfig Extension 的帮助下生成了一个新的 .editorconfig 文件

配置语法:

  • root = true :每当你打开编辑器时,EditorConfig 插件会在打开的文件目录和每个父目录中查找名为 `.editorconfig` 的文件,但如果到达根文件路径可以停止此搜索用 root=true 指定。
  • 评论: `.editorconfig` 中的评论以“#”或“;”开头。
  • 部分标题:它们以'['开始并以']'结束,它们用于选择特定文件并将规则应用于它们。例如 '[*.js]' 会将所有规则应用于任何以 `.js` 作为扩展名的文件。
  • 键值对:这些键值对是位于部分标题下的规则(支持的属性)。例如 'indent_size = 4` 会将缩进的大小设置为 4 个空格/制表符。您可以在他们的 wiki 页面上找到所有受支持的属性。

示例配置文件:

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

# top-most EditorConfig file
root = true

[*]
charset = utf-8
end_of_line = lf
indent_size = 4
indent_style = space
insert_final_newline = true
max_line_length = 80
trim_trailing_whitespace = true

[*.md]
max_line_length = 0
trim_trailing_whitespace = false 

这里 root=true 向编辑器指定它是最顶层的 EditorConfig 文件,在此部分标题下指定的任何规则 - [*] 将应用于所有文件,包括您的 *.js、*.css 等。您可以有特定文件的特定规则,例如 [*.md] 部分标题具有应该仅应用于具有 .md 作为扩展名的文件的规则。