くらげになりたい。

くらげのようにふわふわ生きたい日曜プログラマなブログ。趣味の備忘録です。

markdownlintをCLIで一括実行する(markdownlint-cli2)

ClineやRoo Codeなど、AIエージェントで生成したmarkdownを、
コマンド一つで一括formatしたいなと思い、調べてみたときの備忘録(*´ω`*)

markdownlintのCLI

公式のREADMEによると、以下の2つが紹介されている

VSCodeのmarkdownlintは、markdownlint-cli2を使っているらしい

ので、markdownlint-cli2のほうを使ってみる

markdownlint-cli2の使い方

基本はこれだけでOK

# mdファイルを一括でフォーマット
$ pnpm dlx markdownlint-cli2 --fix "**/*.md"

Config

.markdownlint-cli2.jsoncなどを用意しておくと、
いろんな設定ができる

// markdownlint-cli2.jsonc
{
  "$schema": "https://raw.githubusercontent.com/DavidAnson/markdownlint-cli2/v0.17.2/schema/markdownlint-cli2-config-schema.json",
  "config": {
    "MD001": false,
    "MD036": false,
    "MD040": false
  },
  // .gitignoreに含まれるファイルを対象外にする
  "gitignore": true,
  // --fixと同じ。format変更をおこなう
  "fix": true,
}

あとはこんな感じ。
--showFoundなどコマンドのみのオプションもあるので注意

## mdファイルを一括でフォーマット
# --showFound: 結果は標準出力に表示しない
$ pnpm dlx markdownlint-cli2 "**/*.md" --showFound=false

以上!! これで楽に一括フォーマットできるように(*´ω`*)

参考にしたサイト様