OS | macOS 13.4.1 |
---|---|
textlint | 13.3.3 |
node.js | v16.20.1 |
textlint
とreviewdog
について紹介していきます。textlint
とreviewdog
は導入にあまり手間がかからないので、ぜひさくっとインストールして手元で試してみてください。textlint
のpreset-ja-technical-writing
プラグイン(技術文書用プラグイン)で解析した結果を見てみましょう。今日はtextlintについて紹介したいと思います!
文章の作成を行う上で、textlintは効率的で革新的で素晴らしいものです。
あなたのドキュメント作成能力を向上できるかもしれないので導入していませんか?
$ textlint test.txt
reviewdog
はGithubなどのコードホスティングサービスに対して、コメントを自動で付与できるソフトウェアです。textlint
で出力した結果と同じものがコメントとして投稿されます。reviewdog
はその特性上、CI/CDと組み合わせて利用します。textlint
だけでなく、linterを取り入れているプロジェクトには積極的に活用していきましょう。textlint
はローカルの確認でも使えるため、手元のパソコンにインストールしておきましょう。ただし、globalインストールした状態で使い続けると、この後のreviewdog
でドはまりします。(実際にハマりました)$ mkdir -p ~/workspace/reviewdog-sample/doc
$ cd ~/workspace/reviewdog-sample
$ npm install textlint textlint-filter-rule-comments textlint-rule-preset-ja-technical-writing
textlint
のプラグインは以下です。doc/
以下に作りましょう。内容はなんでも良いですが、今回は先に紹介したテキストファイルを流用します。今日はtextlintについて紹介したいと思います!
文章の作成を行う上で、textlintは効率的で革新的で素晴らしいものです。
あなたのドキュメント作成能力を向上できるかもしれないので導入していませんか?
textlint
は、.textlintrc
ファイル、あるいは.textlintrc.json
を設定ファイルとして認識します。.textlintrc.json
を作りましょう。{
"filters": {
"comments": true
},
"rules": {
"preset-ja-technical-writing": true
}
}
$ textlint --config .textlintrc.json doc/test.txt
textlint
は導入完了です。$ mkdir -p .github/workflows
$ vi .github/workflows/reviewdog.yml
action-textlint
のREADMEに掲載されているサンプルからnodeのバージョン周りを少し改変しています。(ローカルに合わせるため)name: reviewdog
on: [pull_request]
jobs:
textlint:
name: runner / textlint
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
submodules: true
- name: Setup node/npm
uses: actions/setup-node@v3
with:
node-version: 16
- name: textlint-github-pr-check
uses: tsuyoshicho/action-textlint@v3
with:
github_token: ${{ secrets.github_token }}
reporter: github-pr-check
textlint_flags: "doc/**"
- name: textlint-github-check
uses: tsuyoshicho/action-textlint@v3
with:
github_token: ${{ secrets.github_token }}
reporter: github-check
textlint_flags: "doc/**"
- name: textlint-github-pr-review
uses: tsuyoshicho/action-textlint@v3
with:
github_token: ${{ secrets.github_token }}
reporter: github-pr-review
textlint_flags: "doc/**"
textlint
の結果が登場したら成功です。textlint
+ reviewdog
で解決していければ最高です。reviewdog
でlinterを走らせればコードレビューの時間短縮にもなります。ぜひガンガン活用していきましょう。