LanguageTool | |
LanguageTool | |
Developer: | Daniel Naber and Marcin Miłkowski |
Programming Language: | Java |
Platform: | Java SE |
Genre: | Grammar checker |
License: | GNU LGPL v2.1+ |
LanguageTool is a free and open-source grammar, style, and spell checker, and all its features are available for download.[1] The LanguageTool website connects to a proprietary sister project called LanguageTool Premium (formerly LanguageTool Plus), which provides improved error detection for English and German, as well as easier revision of longer texts, following the open-core model.
LanguageTool was started by Daniel Naber for his diploma thesis[2] in 2003 (then written in Python). It now supports 31 languages, each developed by volunteer maintainers, usually native speakers of each language.[3] Based on error detection patterns, rules are created and then tested for a given text.The core app itself is free and open-source and can be downloaded for offline use. Some languages use 'n-gram' data,[4] which is massive and requires considerable processing power and I/O speed, for some extra detections. As such, LanguageTool is also offered as a web service that does the processing of 'n-grams' data on the server-side. LanguageTool Premium also uses n-grams as part of its freemium business model.
LanguageTool web service can be used via a web interface in a web browser, or via a specialized client-side plug-ins for Microsoft Office, LibreOffice, Apache OpenOffice, Vim, Emacs, Firefox, Thunderbird, and Google Chrome.
LanguageTool does not check a sentence for grammatical correctness, but whether it contains typical errors. Therefore, it is easy to invent ungrammatical sentences that LanguageTool will still accept. Error detection succeeds with a variety of rules based on XML or written in Java. XML-based rules can be created using an online form.[5]
More recent developments rely on large n-gram libraries that offer suggestions for improving misspellings with the help of artificial neural networks.[6]