One of the software products which Linux has traditionally been lacking in, is grammar-checking software, that runs off-line. And one such package that I’ve been keen on getting to work, under Debian / Stretch as well as under the older Debian / Jessie, is LanguageTool. Why this LibreOffice extension? Because I would mainly want German and English support, while the product also offers some French support, the last of which can always come in handy in a Canadian province, which is officially French-speaking. The need can always arise, to write some letter in French, and a letter in which the grammar will need to be correct.
There do exist other proprietary solutions, but none which add full support for German.
When I write that I’ve been ‘keen on getting (this) to work’ , I’m referring to the fact that this extension can be a bit temperamental. As I was activating version 4.3 on my Debian / Jessie laptop ‘Klystron’ , I noticed that I had versions 2.3 and 3.8 already-downloaded there, that were left on my hard drive from past, forgotten failures. So, what I learned while installing v4.3 on ‘Plato’ , my main, Debian / Stretch computer, would be put to the test. If the attempt to install v4.3 on ‘Klystron’ also, worked on my first try, then these would be valid observations made, when previously working to get the same version working on ‘Plato’ . And my result was, that I could get v4.3 to work on ‘Klystron’ as well, on the first try!
( Screen-Shot from the computer ‘Plato’ . )
During my recently-failed attempt to get this extension working on ‘Plato’ , I had gotten to a series of error-messages while clicking on ‘Tools -> LanguageTool -> Options…’ , that amounted to Java Null-Pointer Exceptions. Usually, such exceptions would indicate some serious programming error. But what I found was that I could get the extension to work, if I followed 4 basic guidelines:
(Updated 12/25/2018, 14h20 … )
(As of 12/22/2018, 22h00 : )
- Make sure I had the Linux package ‘libreoffice-java-common’ installed (I had not, on both machines),
- Make sure that my software-versions, both of LanguageTool and of LibreOffice, were up-to-date, meaning this is only tested to work under LibreOffice 5.x ,
- Within LibreOffice, make sure that Oracle Java 8.x is selected as the JRE to use, under ‘Tools -> Options -> LibreOffice -> Advanced’ ,
- Make Sure that I had The native grammar-checker ‘LightProof’ Disabled, which can be done by drilling down into ‘Tools -> Options -> Language Settings -> Writing Aids’ .
After having done all this, then having installed LanguageTool, and having restarted LibreOffice with everything set up correctly, even the mysterious Null-Pointer Exception gave way, to a smoothly-running extension, that offered some basic style corrections, when running tests which I had crafted. It appears that even a Null-Pointer Exception, can sometimes be due to something other than an actual programming error.
At the same time, it’s possible to pay for a subscription to ‘LanguageToolPlus‘ , even though doing so does not enable any features in the LibreOffice Extension. Doing so just makes the on-line version of the product more powerful, that can be accessed through the Web-interface, and is also a way of paying forward, the work and effort that some software-developers put, into writing software that Linux users may use for free. At the same time, paying for this product enables the browser-extensions to work, that are based on the providers’ servers, by giving users a log-in, which they can set their browser extensions to use… I for one, am now enjoying the fact that the Firefox LanguageTool extension, is advising my grammar, as I’m editing this WordPress posting, without being a WordPress plug-in.
(Update 12/25/2018, 14h20 : )
One important detail which I forgot to mention above is, the fact that the installation of the LanguageTool extension will hide the existence of the internal ‘LightProof’ grammar-checker from view, perhaps in a failed attempt to automate disabling it. What I found was that I actually needed to disable LightProof manually, with LanguageTool not installed (according to Step 4 above), before installing LanguageTool, in order for the installation to succeed.
On my Debian / Jessie laptop named ‘Klystron’ , I’ve found that sometimes, the Null-Pointer Exception can come back, when I click ‘Tools -> LanguageTool -> Options’ . For the moment, this error message was avoidable, when coming to step (3) above, I did not just acknowledge LibreOffice displaying the available Java Run-Times, and choosing the correct one by default, but rather, by seeing that the correct one was chosen by default, and then clicking ‘Ok’ , as if to do so added something to my personal preferences. Apparently, LibreOffice having the ability to detect the available JREs in the background, and ‘knowing’ which one is correct, is not the same thing, as the user having selected the correct JRE.
At the same time, I’m skeptical about claims on the LanguageTool Web-site, that the JRE version must be “at least 8.x”. Java Run-Times are often finicky, and while the Windows world has moved on to Java 10, I would not just assume that this extension works with Java 10. I guess it’s just good news for me then, that the two Debian versions I’m presently running, receive Java 8 from their package repositories.