Markdownで記事を執筆する際、一定のルールにしたがった文章かどうかを自動的にチェックすることで、読みやすい文章を早く書くことができます。 この記事では、textlintでこれを実現する方法と、Atomへの導入手順について示します。

textlintとは

textlintは、Markdownなどで書かれた文章のための静的解析ツールです。

JavaScriptで実装されており、独自のルールもJavaScriptで書くことができます。 いくつかのルールはパッケージとしてnpmで公開されており、作者のazu氏によるプリセットを導入することで、校正環境をすばやく構築することができます。

動作環境

この記事の内容は、次のバージョンで動作を確認しています。

  • textlint v7.0.1
  • textlint-rule-preset-japanese v1.3.3
  • linter-textlint v1.12.0

textlintの導入方法

それでは、textlintの導入方法を以下に示します。 今回は、ルール集として前述のプリセットを使用することにします。

1. パッケージをインストールする

textlintやプリセットはnpmで公開されているため、npmコマンドでインストールします。

$ npm init -y
$ npm install --save-dev textlint textlint-rule-preset-japanese

2. gitignoreに追加する

node_modulesディレクトリはGitにコミットする必要がないため、.gitignoreに追加しておきます。

.gitignore:

node_modules

3. プリセットを有効化する

あとは、プリセットを有効にするだけです。

textlintにはESLintなどと同じように設定ファイルがあり、これは.textlintrcとして定義します。

.textlintrc:

{
  "rules": {
    "preset-japanese": true
  }
}

以上でtextlintの導入は完了です。 続いて、textlintで文章を校正する方法について見ていきます。

文章を校正する

textlintを用いてCLI上で文章をチェックするには、以下のようにtextlintコマンドにファイルを渡すだけでよいです。

$ node_modules/.bin/textlint post.md

post.md
  3:36  error  一文に二回以上利用されている助詞 "か" がみつかりました。  preset-japanese/no-doubled-joshi

✖ 1 problem (1 error, 0 warnings)

また、textlintには自動校正機能も付属しています。 以下のように--fixオプションを付けることで、自動校正に対応したルールを自動で修正してくれます。

$ node_modules/.bin/textlint --fix post.md

Atomへの導入方法

Atomには、textlintをAtomに導入するためのlinter-textlintパッケージがあるため、これをインストールするだけでtextlintを有効化できます。

あわせて読みたい

おわりに

textlintを導入することで、細かな指摘を減らすことができ、文章の執筆を集中して行なえるようになります。

文章を書く機会が多い方は、ぜひ導入してみてはいかがでしょうか。