日本語も扱える文章チェッカーLanguageTool(実用レベルとはいっていない)

Pocket

以前から注目しているソフトウェアとして、LanguageToolがあります。Javaで書かれた文法チェッカーで、コマンドラインやFirefoxアドオン、Libre/OpenOfficeのプラグインとして動作します。

以前簡単な紹介をおこなったり、使い方をDoc-ja Wikiに書いたりしてみました。このころはversion 2.6でしたが、現在の最新版は2.9です。

残念ながら、日本語の対応状況については今も芳しくありません。日本語のルールの数はslideshareの資料では23種類でしたが、version 2.9の段階では43種類と増えてはいるものの、まだまだ不足している状態です。

$ cd LanguageTool-2.9
$ grep 'rule id=' ./org/languagetool/rules/ja/grammar.xml|wc -l
43

単語ベースでのルールも少ないのですが、コードベースで対応すべきケースについては現状皆無です(https://github.com/languagetool-org/languagetool/blob/master/languagetool-language-modules/ja/src/main/java/org/languagetool/language/Japanese.java)。

先日、こちらにコードを追加しないと対応できなさそうな実例が出てきたので、それを考えてみようと思います。

以前grammer.xmlのプルリクエストを送った時は、パッケージ全体をビルドする必要がなかったので、ビルド環境がそろっていなかったことに気付いていませんでした。

ビルドにはmavenが必要なので、Debian wheezy上でapt-get install mavenを行ってbuild.shをたたいてみたのですが…

$ ./build.sh languagetool-standalone clean package |& tee log
Running: mvn --projects languagetool-standalone --also-make clean package
[INFO] Scanning for projects...
[INFO] ------------------------------------------------------------------------
[INFO] Reactor Build Order:
[INFO]
[INFO] languagetool-parent
[INFO] LanguageTool Style and Grammar Checker Core
[INFO] English module for LanguageTool
[INFO] Persian module for LanguageTool
[INFO] French module for LanguageTool
(略)
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.308s
[INFO] Finished at: Fri Apr 17 16:07:19 JST 2015
[INFO] Final Memory: 10M/112M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.2:compile (default-compile) on project languagetool-core: Fatal error compiling: 1.7 は無効な VM バージョンです。 -> [Help 1]
[ERROR]

JVMが古すぎると怒られてしまいました。ということでsid環境で試したところ、無事ビルドできました。続きは明日の東京エリアDebian勉強会でもやってみようと思います。