markdownのlintを設定する
Markdown
tl;dr
- 2022年2月時点でMarkdownのlint項目には50個のルールがあるらしい
- 興味がてらMarkdownのlintを設定する方法を記載した
- チームのドキュメント開発に導入しようと思うレベルではないのだが、 Markdownの記載方法がブレる事例を集約したものなので どのようなルールがあるのか眺めることは良いことだと思う
設定ファイルを配置する
.markdownlint.ymlをレポジトリのルートに配置する
touch .markdownlint.yml
ルール一覧はこちらにあるので、無効にしたいものをfalseにする
MD040: false
MD040はコードブロックに言語指定を必須とするというルールであるが、必ずしも必須にする必要もないと思いfalse
にしている
Docker上で実行する
`markdownlint-cliをインストールして実行する方法があるが、
Lintツールの類いはDocker経由で実行したいので、avto-dev/markdown-lintを利用する
$dirを格納先のパスに変更して、ディレクトリ単位で一括で実行するコマンドは以下のようになる
docker run --rm -v "$(pwd):/data" \
-e INPUT_CONFIG=/data/.markdownlint.yml \
avtodev/markdown-lint:v1 /data/$dir
GitHub Actions上で実行する
引き続き docker://avtodev/markdown-lint:v1
のイメージを使う
jobs:
lint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Lint markdown file
uses: docker://avtodev/markdown-lint:v1
with:
args: '**/*.md'
config: '.markdownlint.yml'
まとめ
これで継続的なLintチェックが可能となる
当ブログでも設定しているので、参考にしてほしい