今天有个小伙伴来跟TJ君诉苦,说自己写的文章老是被领导挑毛病,这里语法不对啊那里句子不通顺,他觉得其实就是很咪咪小的地方,完全不影响意思的表达,但是领导就是喜欢盯着这些细节。
那有没有什么工具可以帮忙检测下文字的呢?TJ君于是想到今天看到的一个项目,就想着和这位小伙伴及大家分享一下。
languagetool
一款开源的校对用小工具,可以发现一些常见的拼写校验无法发现的语法错误,更加不错的是除了中文,还有英语、法语、德语等主流语种20多种(不过TJ君只会英语和中文 T_T)
先来看看怎么安装,比如可以通过脚本安装,只需要下载代码,到下载目录下执行如下命令即可:
curl -L install.sh | sudo bash <options>
工具还有一些额外的使用选项,例如:
sudo bash install.sh <options>
Usage: install.sh <option> <package>
Options:
-h --help Show help
-b --build Builds packages from the bleeding edge development copy of LanguageTool
-c --command <command> Specifies post-installation command to run (default gui when screen is detected)
-q --quiet Shut up LanguageTool installer! Only tell me important stuff!
-t --text <file> Specifies what text to be spellchecked by LanguageTool command line (default spellcheck.txt)
-d --depth <value> Specifies the depth to clone when building LanguageTool yourself (default 1).
-p --package <package> Specifies package to install when building (default all)
-o --override <OS> Override automatic OS detection with <OS>
-a --accept Accept the oracle license at http://java.com/license. Only run this if you have seen the license and agree to its terms!
-r --remove <all/partial> Removes LanguageTool install. <all> uninstalls the dependencies that were auto-installed. (default partial)
Packages(only if -b is specified):
standalone Installs standalone package
wikipedia Installs Wikipedia package
office-extension Installs the LibreOffice/OpenOffice extension package
Commands:
GUI Runs GUI version of LanguageTool
commandline Runs command line version of LanguageTool
server Runs server version of LanguageTool
也可以从源代码进行构建,至少需要安装Java 8 和 Apache Maven,然后在根目录下,运行如下命令:
mvn clean test
然后在languagetool-standalone/target/、languagetool-wikipedia/target和languagetool-office-extension/target下面测试结果:
./build.sh languagetool-standalone package -DskipTests
./build.sh languagetool-wikipedia package -DskipTests
./build.sh languagetool-office-extension package -DskipTests
最后重命名*.zip文件变成*.oxt安装在LibreOffice/OpenOffice,就可以使用相应的jar包了。
再来看看实际的检测效果,例如对于中文,一些语法上的不恰当用法会给出这样的提示:
解释的是不是还是很清楚的?
不过TJ君自己觉得哦,相比较中文,小工具似乎对英文的检验效果更好,也许是中文太博大精深了,它搞不定吧~
英语的效果如下:
似乎、好像、有点、貌似对于学习英语是个不错的帮手唉~
代码主要都是用java写的,TJ君看了下代码,有几百m,不过别怕,代码这么大是因为要兼顾各种不同的语言,感兴趣的小伙伴,赶紧来下载试试看吧。
仓库地址:https://github.com/languagetool-org/languagetool