オプション
以下で共有されるオプション
設定オブジェクトで、これらのオプションの一部を使用できます。
allowEmptyInput
CLI フラグ: --allow-empty-input, --aei
Stylelint は glob パターンに一致するファイルがない場合、エラーをスローしません。
configFile
CLI フラグ: --config, -c
設定オブジェクトを含む JSON、YAML、または JS ファイルへのパス。
Stylelint に設定ファイルを検索させたくない場合は、このオプションを使用してください。
パスは、絶対パスまたはプロセスが実行されているディレクトリ(process.cwd()
)からの相対パスである必要があります。
configBasedir
CLI フラグ: --config-basedir
「extends」、「plugins」、「customSyntax」を定義する相対パスの基準となるディレクトリへの絶対パス。これらの値が相対パスである場合にのみ必要です。
fix
CLI フラグ: --fix
可能な限り、ルールによって報告された問題を自動的に修正します。
標準構文の CSS の場合、Stylelint は postcss-safe-parser を使用して構文エラーを修正します。
Node.js API を使用する場合、自動修正されたコードは返されるオブジェクトの code
プロパティの値として利用できます。
ソースに
- スコープ付きの無効化コメント(例:
/* stylelint-disable color-named */
)が含まれている場合、スコープ付きルールによって報告された問題は、ソース内のどこでも自動的に修正されません。 - スコープなしの無効化コメント、つまり
/* stylelint-disable */
の場合、ソース全体が自動的に修正されません。
この制限は issue #2643 で追跡されています。
customSyntax
CLI フラグ: --custom-syntax
コードで使用するカスタム構文を指定します。
SCSS のような CSS 言語拡張から、CSS-in-JS オブジェクトのような全く異なる表記法まで、多くのスタイリング言語があります。
これらのスタイリング言語は、他の言語にも埋め込むことができます。たとえば
- HTML
<style>
タグ - マークダウンフェンス
- JavaScript テンプレートリテラル
このオプションを使用すると、Stylelint はこれらを CSS に似たものに変換できます。これは、
- 他のすべてのスタイリング言語の基礎となる言語です
- Stylelint に組み込まれたルールで最もよく理解されます
このオプションは、PostCSS 互換の構文をエクスポートする JS モジュールに解決される文字列である必要があります。文字列は、モジュール名 (例: my-module
) または JS ファイルへのパス (例: path/to/my-module.js
) にすることができます。
2 つ以上の異なる言語を lint したい場合は、customSyntax
を overrides
設定プロパティと組み合わせることができます。
Node.js API を使用すると、customSyntax
オプションは Syntax オブジェクトも受け入れることができます。Stylelint は parse
プロパティを必須の値として扱います。また、Stylelint は ESM で記述された構文モジュールをサポートしています。
Stylelint は、コアルールがカスタム構文で動作することを保証できません。
formatter
CLI フラグ: --formatter, -f
| --custom-formatter
結果をフォーマットするためのフォーマッタを指定します。
オプションは次のとおりです。
compact
- ESLint の compact フォーマッタと同様の出力を生成しますgithub
- GitHub Actions のワークフローコマンドを使用してメッセージを生成しますjson
(Node API のデフォルト) - 別のツールで利用できる JSON を生成しますstring
(CLI のデフォルト) - 人間が読める文字列を生成しますtap
- Test Anything Protocol 出力を生成しますunix
- Emacs の *Compilation mode* などのツールがハイパーリンクできるように、C コンパイラのようなメッセージを生成しますverbose
- チェックされたファイルのリストと各ルールの集計を含むようにstring
を拡張します
formatter
Node.js API オプションは、関数または Promise
関数も受け入れることができます。一方、--custom-formatter
CLI フラグは、関数をエクスポートする JS ファイルへのパス(ファイルシステムパスまたは依存関係)を受け入れます。どちらの場合の関数も、開発者ガイドで説明されているシグネチャに適合する必要があります。
cache
CLI フラグ: --cache
処理されたファイルの結果を保存して、Stylelint が変更されたファイルのみを処理するようにします。デフォルトでは、キャッシュは process.cwd()
の ./.stylelintcache
に保存されます。
このオプションを有効にすると、変更されたファイルのみが lint されるため、Stylelint の速度が大幅に向上します。
cache
を指定して Stylelint を実行し、次に cache
なしで Stylelint を実行すると、2 番目のコマンドが .stylelintcache
を無効にしたと見なす必要があるため、Stylelint は .stylelintcache
を削除します。
cacheLocation
CLI フラグ: --cache-location
キャッシュの場所のファイルまたはディレクトリへのパス。
ディレクトリが指定されている場合、Stylelint は指定されたフォルダー内にキャッシュファイルを作成します。ファイルの名前は process.cwd()
のハッシュに基づいています (例: .cache_hashOfCWD
)。これにより、Stylelint はさまざまなプロジェクトからのさまざまなキャッシュに対して単一の場所を再利用できます。
cacheLocation
のディレクトリが存在しない場合は、*nix システムでは末尾に /
を、Windows では \
を追加してください。そうしないと、Stylelint はパスをファイルと見なします。
cacheStrategy
CLI フラグ: --cache-strategy
変更されたファイルを検出するためにキャッシュが使用する戦略。「メタデータ」または「コンテンツ」のいずれかになります。
「コンテンツ」戦略は、ファイルの内容が変更されていなくても、ファイルの変更時刻が変更される場合に役立ちます。たとえば、git はファイルの変更時刻を追跡しないため、「git clone」などの git 操作中にこれが起こる可能性があります。
maxWarnings
CLI フラグ: --max-warnings, --mw
受け入れられる警告の数を制限します。
defaultSeverity
を "warning"
に設定し、警告時にプロセスが失敗することを期待する場合(例:CI ビルド)に役立ちます。
警告の数がこの値を超えると、
- CLI プロセスはコード
2
で終了します - Node.js API は、返されたデータに
maxWarningsExceeded
プロパティを追加します
disableDefaultIgnores
CLI フラグ: --disable-default-ignores, --di
デフォルトの無視を無効にします。Stylelint は node_modules
の内容を自動的に無視しません。
globbyOptions
CLI フラグ: --globby-options, --go
ignorePath
CLI フラグ: --ignore-path, -i
無視するファイルを記述するパターンを含むファイルへのパス。パスは絶対パスまたは process.cwd()
からの相対パスにすることができます。複数のパスを指定するためにオプションを繰り返すことができます。デフォルトでは、Stylelint は process.cwd()
で .stylelintignore
を探します。
ignoreDisables
CLI フラグ: --ignore-disables, --id
stylelint-disable
(例: /* stylelint-disable block-no-empty */
) コメントを無視します。
このオプションを使用すると、それらの例外を除いた lint 結果がどうなるかを確認できます。
reportDescriptionlessDisables
CLI フラグ: --report-descriptionless-disables, --rdd
説明のない stylelint-disable
コメントを報告します。
次のパターンが報告されます
/* stylelint-disable */
a {}
/* stylelint-disable-next-line block-no-empty */
a {}
ただし、次のパターン (stylelint-disable -- <説明>
) は報告*されません*
/* stylelint-disable -- This problem is ignorable. */
a {}
/* stylelint-disable-next-line block-no-empty -- This problem is ignorable. */
a {}
reportInvalidScopeDisables
CLI フラグ: --report-invalid-scope-disables, --risd
設定オブジェクトで指定されたルールに一致しない stylelint-disable
コメントを報告します。
reportNeedlessDisables
CLI フラグ: --report-needless-disables, --rd
無効にする必要のある lint に実際には一致しない stylelint-disable
コメントを報告します。
codeFilename
CLIフラグ: --stdin-filename
入力に割り当てるファイル名。
code
または stdin
を使用してソース文字列を直接渡す場合、codeFilename
を使用して、そのコードを特定のファイル名に関連付けることができます。
quiet
CLIフラグ: --quiet
"error"レベルの重大度を持つルールに関する問題のみを登録します("warning"レベルは無視します)。
quietDeprecationWarnings
CLIフラグ: --quiet-deprecation-warnings
非推奨の警告を無視します。