LanguageTool

Usage

Installation and Usage outside OpenOffice.org

See Overview for a description of how to use LanguageTool with OpenOffice.org.

  • As a stand-alone application: Rename the archive so it ends with ".zip" and unzip it. If you're using Java 5.0, also unzip the standalone-libs.zip that will be created. Then start LanguageToolGUI.jar by double clicking on it. If your computer isn't configured to start jar archives, start it from the command line using
    java -jar LanguageToolGUI.jar
    You can use the --tray option to start LanguageTool inside the system tray.
  • As a stand-alone application on the command line: see above, but start LanguageTool.jar using
    java -jar LanguageTool.jar <filename>
    LanguageTool only supports plain text files.
  • Embedding LanguageTool in Java applications: See the API documentation. You just need to create a JLanguageTool object and use that to check your text. For example:

    JLanguageTool langTool = new JLanguageTool(Language.ENGLISH);
    langTool.activateDefaultPatternRules();
    List<RuleMatch> matches = langTool.check("A sentence " +
        "with a error in the Hitchhiker's Guide tot he Galaxy");
    for (RuleMatch match : matches) {
      System.out.println("Potential error at line " +
          match.getEndLine() + ", column " +
          match.getColumn() + ": " + match.getMessage());
      System.out.println("Suggested correction: " +
          match.getSuggestedReplacements());
    }

  • Using LanguageTool from other applications: Start the stand-alone application and configure it to listen on a port that is not used yet (the default port, 8081, should often be okay). This way LanguageTool will run in server mode until you stop it.
    The client that wants to use LanguageTool can now just send its text to this URL:
    http://localhost:8081/?language=xx&text=my+text
    The language parameter must specify the two-character language code (the language of the text to be checked). The text parameter is the text itself (you may need to encode it for URLs). You can use both POST and GET to send your requests to the LanguageTool server.
    For the input "this is a test" the LanguageTool server will reply with this XML response:

    <?xml version="1.0" encoding="UTF-8"?>
    <matches>
    <error fromy="0" fromx="0" toy="0" tox="5"
      ruleId="UPPERCASE_SENTENCE_START"
      msg="This sentence does not start with an uppercase letter"
      replacements="This" context="this is a test."
      contextoffset="0"
      errorlength="4"/>

    </matches>

    The server can also be started on the command line using this command:
    java -cp jaminid.jar:LanguageTool.jar de.danielnaber.languagetool.server.HTTPServer

Last modified: 2008-02-17