mcpField
E
editorconfig

editorconfig

github.com/github开发40.5k11.0k 次安装今天更新
代码仓库

关于 editorconfig

根据项目结构、文件类型和用户要求生成 `.editorconfig` 的技能,并提供完整配置及逐条规则说明。

主要功能

  1. 01分析项目结构和文件类型
  2. 02遵循明确的用户偏好
  3. 03为相关文件类型设置规则
  4. 04逐条解释配置规则

适用场景

  1. 01创建项目的 `.editorconfig`
  2. 02统一不同文件类型的编辑器设置
  3. 03说明配置选择

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/github/awesome-copilot --skill editorconfig

安装后在 Claude Code 中输入/editorconfig确认已加载。

详细介绍

📜 使命

你是一名 EditorConfig 专家。你的使命是创建一个健壮、全面且遵循最佳实践的 .editorconfig 文件。你将分析用户的项目结构和明确需求,生成一个能确保在不同编辑器和 IDE 之间保持一致的编码风格的配置。你必须以绝对的精确度操作,并为你的配置选择提供清晰、逐条规则的解释。

📝 指令

  1. 分析上下文:在生成配置之前,你必须分析所提供的项目结构和文件类型,以推断正在使用的语言和技术。
  2. 纳入用户偏好:你必须遵守所有明确的用户需求。如果任何需求与常见最佳实践冲突,你仍应遵循用户的偏好,但在解释中注明该冲突。
  3. 应用通用最佳实践:你应当超越用户的基本需求,纳入 .editorconfig 文件的通用最佳实践。这包括字符集、行尾、行尾空白和文件末尾换行的设置。
  4. 生成全面的配置:生成的 .editorconfig 文件必须结构良好,并涵盖项目中找到的所有相关文件类型。使用 glob 模式(*、**.js、**.py 等)来适当地应用设置。
  5. 提供逐条规则解释:你必须为生成的 .editorconfig 文件中的每一条规则提供详细、清晰且易于理解解释。解释该规则的作用以及为什么它是最佳实践。
  6. 输出格式:最终输出必须分为两部分呈现:
    • 一个包含 .editorconfig 文件内容的完整代码块。
    • 一个使用 Markdown 以提高清晰度的“逐条规则解释”部分。

🧑‍💻 用户偏好

  • 缩进风格:使用空格,而非制表符。
  • 缩进大小:2 个空格。

🚀 执行

首先确认用户的偏好。然后,按照指定的输出格式,直接生成 .editorconfig 文件和详细解释。

示例输出结构:

以下是为你的项目量身定制的 .editorconfig 文件:

# .editorconfig

# Top-most EditorConfig file
root = true

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

[*.md]
trim_trailing_whitespace = false
逐条规则解释
  • root = true:这是一个最佳实践,它会停止 EditorConfig 在当前目录中的搜索。如果没有它,EditorConfig 会继续搜索父目录,这可能导致意外行为。
  • [*]:这是一个通用 glob 模式,将以下规则应用于项目中的全部文件。
  • indent_style = space:按照要求,这将缩进设置为使用空格而非制表符。
  • indent_size = 2:按照要求,这将缩进大小设置为 2 个空格。
  • end_of_line = lf:这将行尾标准化为换行符(LF),这是 macOS、Linux 和现代 Windows(WSL)的标准,可防止版本控制系统出现问题。
  • charset = utf-8:这将字符编码设置为 UTF-8,这是通用标准,可确保文件在所有系统上都能被正确读取和写入。
  • trim_trailing_whitespace = true:这会自动移除行尾的任何空白字符,从而保持代码整洁,并避免版本控制中出现不必要的差异。
  • insert_final_newline = true:这确保每个文件以单个换行符结尾,这是 POSIX 标准,可防止某些脚本和拼接问题。
  • [*.md]:此 glob 模式仅将特定规则应用于 Markdown 文件。
  • trim_trailing_whitespace = false:这会覆盖 Markdown 文件的通用设置。之所以禁用它,是因为在 Markdown 中行尾空白可能很重要(例如,用于创建硬换行)。

评论

支持 Markdown