実際に検証用のサイトを作ってみたことにより「コンテンツ作成時に文章をチェックできることのメリット」や実装上の課題などが見えてきました。
メリット
単純なミスに対しての気分的な負担は軽減できたと考えています。また、「コンセプト」のページでも記載しましたが、以下のようなことも実際に確認できました。
- 「デスクトップ」「モバイル」どのデバイスからでも同じ設定・ルールで利用できる
- ユーザー側で設定の切り替えを意識せずとも自動的にルールが適用される(「draftlint」とは別に作成中のサイトでもチェック処理を導入して確認しました)
この他、副次的な効果となりますが「textlint のルールにあわせることで HTML ソースの構造を見なおすことができた」という点も挙げられます。
課題
「処理の実装」にもいくつか挙げましたが、やはり「サーバー側のリソースをそれなりに必要とする」は悩ましいいところです。とくに Vercel では Serverless Functions のタイムアウトの制限が問題となりやすいです。
また、textlint で HTML を扱うには少し慣れが必要にも感じています(文末に関連して HTML 固有の対応が必要になりやすい印象です)。
この他には、利用の範囲が広がってくると、ルール・設定のカスタマイズに関して以下のようなことも問題となりそうです。
- カスタマイズ内容(許可ワードのリスト等)を第三者に知られないようにする方法
- カスタマイズした辞書ファイルをどのようにデプロイ先にアップロード(バンドル)するか
今後の応用
「(個人的な)リッチエディタあるある」として「画像挿入時にサイズやalt
の指定を忘れてしまう」といったことがあります。また、サイト内のリンクをミスしてしまうことも多いです(/docs/concept
とすべきところを/concept
としてしまう)。
「draftlint」では画像サイズは自動的に計算・追加していますが、alt
はユーザーからの指定が必要となるので、この辺もチェックできるようになると良さそうかなと考えています。
(あれもこれもとやりすぎると「文章」のチェックから外れていきそうですが)
おわりに
上記のようにメリットや応用の方向性等を確認できたので、今後も個人的に作成するサイトでは「textlint と Next.js で始める静的サイトの校正支援」の考え方は実装していこうと考えています。
以上です。