メインコンテンツまでスキップ

設定

何を設定すべきか

VS Code拡張で素のHTMLを使っている場合、設定ファイルは不要です — デフォルトで推奨プリセットが適用されます。

設定ファイルが必要になるのは以下の場合です:

  • フレームワークを使う(React、Vue、Svelteなど) — parserspecsを設定
  • 別のプリセットを選ぶextendsを設定
  • ルールをカスタマイズするrulesプロパティでルールをオーバーライド
  • 特定の要素にルールを適用するnodeRuleschildNodeRulesを使用

最小限の設定ファイルは以下のようになります:

.markuplintrc
{
"extends": ["markuplint:recommended"]
}

フレームワークプロジェクト(例: React)の場合:

.markuplintrc
{
"extends": ["markuplint:recommended-react"],
"parser": {
"\\.jsx$": "@markuplint/jsx-parser"
},
"specs": {
"\\.jsx$": "@markuplint/react-spec"
}
}

実際の設定例はユースケース、すべてのオプションはプロパティリファレンスを参照してください。

設定ファイル

Markuplintは対象ファイルのディレクトリから上位に向かって再帰的に設定ファイルを検索します。各ターゲットに最も近い設定ファイルが適用されます。

  • 📂 A
    • 📄 .markuplintrc # ①
    • 📂 B
      • 📄 index.html # <- ① A/.markuplintrc が適用される
      • 📂 C
        • 📄 index.html # <- ① A/.markuplintrc が適用される
        • 📂 D
          • 📄 .markuplintrc # ②
          • 📄 index.html # <- ② A/B/C/D/.markuplintrc が適用される
注記

Markuplintは最も近いファイルを見つけると検索を中止します。ESLintのデフォルトとは異なり、{ "root": true }が設定された場合と同じ動作です。

上位ディレクトリの設定ファイルを継承したい場合はextendsフィールドを使用してください。

ファイル形式とファイル名

以下のファイル名が優先順に認識されます:

  • markuplintプロパティ(package.json内)
  • .markuplintrc.json
  • .markuplintrc.jsonc
  • .markuplintrc.yaml
  • .markuplintrc.yml
  • .markuplintrc.js
  • .markuplintrc.cjs
  • .markuplintrc.mjs
  • .markuplintrc.ts
  • markuplint.config.js
  • markuplint.config.cjs
  • markuplint.config.mjs
  • markuplint.config.ts
  • markuplint.config.jsonc

.markuplintrc(拡張子なし)はJSON(コメント対応)とYAML形式をサポートしています。

JSON

{
"extends": ["markuplint:recommended"]
}

YAML

extends:
- markuplint:recommended

JavaScript

module.exports = {
extends: ['markuplint:recommended'],
};

TypeScript

import type { Config } from '@markuplint/ml-config';

const config: Config = {
extends: ['markuplint:recommended'],
};

export default config;

次のステップ