textlintで日本語のチェックを自動化してみる

インストール

npm i -g textlint textlint-rule-preset-japanese textlint-rule-preset-jtf-style

設定

  • ~/.textlintrc
{
    "rules" : {
        "preset-japanese": true,
        "preset-jtf-style": true
    }
}

チェック

textlint XXXX.txt

以下のようになりました。

    3:18  error    Line 3 exceeds the maximum line length of 100             preset-japanese/sentence-length
    3:21  ✓ error  %E => %E                                                 preset-japanese/spellcheck-tech-word
    5:11  error    一文に二回以上利用されている助詞 "ば" がみつかりました。  preset-japanese/no-doubled-joshi
   14:5   ✓ error  数値の範囲を示す場合には全角の〜を使用します。            preset-jtf-style/4.2.5.波線(〜)
   27:10  error    一文に二回以上利用されている助詞 "に" がみつかりました。  preset-japanese/no-doubled-joshi
   27:55  error    一つの文で"、"を3つ以上使用しています                     preset-japanese/max-ten
   40:10  error    一文に二回以上利用されている助詞 "に" がみつかりました。  preset-japanese/no-doubled-joshi
   40:42  error    一文に二回以上利用されている助詞 "が" がみつかりました。  preset-japanese/no-doubled-joshi
   44:15  error    一文に二回以上利用されている助詞 "が" がみつかりました。  preset-japanese/no-doubled-joshi
   84:53  error    一つの文で"、"を3つ以上使用しています                     preset-japanese/max-ten
  106:18  error    一文に二回以上利用されている助詞 "が" がみつかりました。  preset-japanese/no-doubled-joshi

✖ 11 problems (11 errors, 0 warnings)
✓ 2 fixable problems.

修正

textlint --fix XXXX.txt
   3:21  ✔   %E => %E                                       preset-japanese/spellcheck-tech-word
  14:5   ✔   数値の範囲を示す場合には全角の〜を使用します。  preset-jtf-style/4.2.5.波線(〜)

✔ Fixed 2 problems

自動修正は難しいようです。

いい文章の要素をまとめれば、文章の品質も自動的にチェックできそうな気もしますね。

参考

GitHub - textlint/textlint: The pluggable natural language linter for text and markdown.

GitHub - textlint-ja/textlint-rule-preset-JTF-style: JTF日本語標準スタイルガイド for textlint.

GitHub - textlint-ja/textlint-rule-preset-japanese: textlint rule preset for Japanese.