块编辑器开发文档

@wordpress/stylelint-config

💡 云策文档标注

概述

@wordpress/stylelint-config 是一个用于确保 CSS 代码符合 WordPress CSS 编码标准的 stylelint 配置包。它提供了默认预设以及针对 SCSS 和样式化规则的扩展预设,支持通过规则覆盖进行自定义配置。

关键要点

  • 安装要求:通过 npm 安装,需要 Node.js 的长期支持版本,不兼容旧版本。
  • 基本用法:在 stylelint 配置中通过 "extends" 字段引用此包,支持本地或全局安装路径。
  • 预设选项:包括默认预设、SCSS 预设、样式化预设和 SCSS 样式化预设,可通过数组扩展多个预设。
  • 配置扩展:通过添加 "rules" 键覆盖或禁用特定规则,例如调整缩进或关闭 number-leading-zero 规则。
  • 项目背景:作为 Gutenberg 项目的一部分,以 monorepo 形式组织,鼓励贡献者参与。

代码示例

{
    "extends": "@wordpress/stylelint-config"
}
{
    "extends": [ "@wordpress/stylelint-config/scss" ]
}
{
    "extends": "@wordpress/stylelint-config/stylistic",
    "rules": {
        "@stylistic/indentation": 4,
        "@stylistic/number-leading-zero": null
    }
}

📄 原文内容

stylelint configuration rules to ensure your CSS is compliant with the WordPress CSS Coding Standards.

Installation

$ npm install @wordpress/stylelint-config --save-dev

Note: This package requires Node.js version with long-term support status (check Active LTS or Maintenance LTS releases). It is not compatible with older versions.

Usage

If you’ve installed @wordpress/stylelint-config locally within your project, just set your stylelint config to:

{
    "extends": "@wordpress/stylelint-config"
}

If you’ve globally installed @wordpress/stylelint-config using the -g flag, then you’ll need to use the absolute path to @wordpress/stylelint-config in your config:

{
    "extends": "/absolute/path/to/@wordpress/stylelint-config"
}

Presets

In addition to the default preset, there is also a SCSS preset and 2 stylistic variant presets.

SCSS

This preset extends both @wordpress/stylelint-config and stylelint-config-recommended-scss.

{
    "extends": [ "@wordpress/stylelint-config/scss" ]
}

Stylistic

This preset extends @wordpress/stylelint-config and adds stylistic rules such as indentation.

{
    "extends": [ "@wordpress/stylelint-config/stylistic" ]
}

SCSS Stylistic

This preset extends@wordpress/stylelint-config, @wordpress/stylelint-config/stylistic and @wordpress/stylelint-config/scss, and adapts some stylistic rules for SCSS.

{
    "extends": [ "@wordpress/stylelint-config/scss-stylistic" ]
}

Extending the config

Simply add a "rules" key to your config and add your overrides there.

For example, to change the indentation to four spaces and turn off the number-leading-zero rule:

{
    "extends": "@wordpress/stylelint-config/stylistic",
    "rules": {
        "@stylistic/indentation": 4,
        "@stylistic/number-leading-zero": null
    }
}

Contributing to this package

This is an individual package that’s part of the Gutenberg project. The project is organized as a monorepo. It’s made up of multiple self-contained software packages, each with a specific purpose. The packages in this monorepo are published to npm and used by WordPress as well as other software projects.

To find out more about contributing to this package or Gutenberg as a whole, please read the project’s main contributor guide.