最近 asciidoc で日本語を書く機会が出てきて、せっかくなら textlint で校正しながらやりたいと思って環境を整えたら結構ハマったところがあるのでメモしておく
tl;dr
- textlint は標準では markdown と plaintext のみ対応
- asciidoc で利用するには seikichi/textlint-plugin-asciidoctor を導入すればいい
- vscode-textlint で asciidoc も見るには設定で
textlint.languages
にasciidoc
を追加する必要がある
textlint-plugin-asciidoctor を導入する
textlint は標準では markdown と plaintext のみ扱えるのでプラグインを導入する必要がある。現状だと以下のプラグインを導入するのが nodejs のみで完結するのでお手軽。
README にある通り npm install すれば OK (textlint 本体は導入済みと仮定している)
$ npm install textlint-plugin-asciidoctor
インストールできたら .textlintrc
の plugin にも追記する
{
...
"plugins": [
"asciidoctor"
],
...
}
これでコマンド単体では textlint は asciidoc も扱えるようになる
VS Code で使う場合
VS Code で textlint を使う場合は vscode-textlint を使うことになる。
この vscode-textlint も標準では適用される形式に制限があるようで、少なくとも asciidoc のドキュメントは対象ではない。何か設定できないものかと調べると以下の PR で、textlint を適用するファイルの種類を指定できるようになっていた模様
ということで、以下のような感じで settings.json
の textlint.languages
に asciidoc
を追加すればOK
{
....
"textlint.languages": [
...
"asciidoc",
...
]
}
おまけ: Vim / Neovim で使う場合
neovim でも使えれば便利だろうなーということでこっちもやり方を調べたが、 efm-language-server 導入し、vim-lsp + vim-lsp-settings なり coc.nvim なりで efm-language-server の設定をすればいいことがわかった。
今のところ、coc.nvim でやっていて、設定内容的には以下の記事のものをそのまま利用させていただいてるという感じ。