KimuraTweetこんにちは。リスペクトの木村です。最近はプログラマでも、公私を問わず文章を書くという機会が増えてきています。各種マニュアルやドキュメントはもちろん、最近では会社や個人の技術ブログを書いているという人も多いでしょう。その中で気になるのは文章校正です。文章によっては量が多く時間がかかる上、専門用語が多いため他部署に依頼するという事も中々難しいかと思います。そこで、今回はRedPenを利用したお手軽な文章校正について紹介します。1.5.5RedPenとはlint的な機能を一般的な文章でも利用する事ができるオープンソースのソフトウェアです。特徴としては下記のような感じです。日本語などをサポートしています。マークアップやLaTeXサポートMarkdownやAsciiDocもそのまま利用可能です。API経由での利用が可能です。インストールまずはここから本体をダウンロードして解凍します。5/12時点では1.6.0がありますが、今回は1.5.5を利用します。-vを実行してバージョン番号が表示されれば利用可能な状態です。実行時に、環境によっては下記のエラーが表示される場合があります。RedPenその場合は、メッセージに沿ってJAVA_HOMEの環境変数にインストール済みのJREへのパスを通して、再度実行してみてください。ちなみにインストールしなくてもこちらのデモ画面から試す事もできます。起動する先ほどredpenを起動した要領で、bin/redpen-serverでサーバを起動します。stop]...と表示されていれば起動完了です。この状態でhttp://localhost:8080へアクセスすると下記のような画面が表示されます。REDPEN_PORT=8080の部分を希望するポート番号に変更します。試しに使ってみる表示されている画面では、緑枠に文章を入力すると赤枠に結果が表示されます。左側では各種オプションが設定でき、デフォルトでは全てオンです。最初は英語の例文が表示されていますが、上部のExamplesから様々な例文に切り替えられます。MARKDOWN」を選ぶと日本語の例文に切り替わり、何件かエラーが表示されます。エラーを解決するよう調整してみると、すぐにエラーが消えて無くなります。(わかりにくいのですが、「サーバー」を「サーバ」に直したので、No.12のエラーが消えています。)オプションを調整する上記のようにオプションは全て有効です。これだと使いにくいのでドキュメントやエラーの内容を参考に適切な値に調整します。調整に使用する文章は、過去自分で利用した文章があれば良さそうです。...という訳で、今までの記事をそのまま入れてみると大量のエラーとなりました。この状態を元に、オプションの有効無効を切り替えたり引数を調整して自分好みにカスタマイズします。複数文章があれば尚良しなので、様々な文章で試してみましょう。様々なオプションを試し、今の所しっくりきているのは下記の設定です。max_num=60(最大60個)(Okuriganaだけドキュメントに載ってませんでした...。)コマンドやAPIでチェックする時に使用する設定用XMLファイルのように書くと、次のようになります。</validators></redpen-conf>特に、SectionLengthやSentenceLengthについては個人差もありこれが最適とは限らないので、試行錯誤してみる事をおすすめします。使ってみて気付いた所Markdownに対応しているのは良いのですが、ここのリファレンスの書き方に沿っている必要があるようです。そのため、引用とかテーブル表示と言った方言が含まれているとエラー表示がややこしくなります。除外しておけば良いのですが、それだと自動でチェックをするような時は大変かもしれません。バリデーション同士も相性(?)があるようです。HankakuKanaとSpaceBeginningOfSentenceやSpaceBetweenAlphabeticalWordを同時に有効にすると、半角スペースを入れた途端に「半角カナが存在する」というエラーが返ってきます。おわりに以上、ここまでがRedPenの紹介と簡単な使い方でした。RedPenを使うとレビュー前にチェックしておく事で細かい所の間違いに気付く事ができます。ルールを統一しておく事で誰が書いても読みやすい内容になるかと思います。この記事もRedPenを使いつつ書きましたが、ただひたすら書くのではなく文章の長さを意識しながら書くようになりました。見落としがちな書き間違えも見つけられましたので、効率よくかつある程度見やすく書けたのではないかと思います。設定については定期的な見直しも必要そうですが、どんどん厳しめの設定にしてみるというのもアリな感じです。ルールの細かい設定は必要ですが、今回紹介したようにブラウザからでもチェックできます。環境さえ用意すれば誰でも使う事ができるので、是非お試しください。APIを使ってJavascriptでメールを送ってみる新人プログラマーが「React」を使ってリアルタイムコメント機能を作ってみた(前編)株式会社リスペクトという、仙台・東京に拠点を持つ会社のシステム部門のブログです。プログラミングやシステム運用のノウハウなどを公開していきます。