Class HunspellRule

Direct Known Subclasses:
CompoundAwareHunspellRule, HunspellNoSuggestionRule

public class HunspellRule extends SpellingCheckRule
A hunspell-based spellchecking-rule. The default dictionary is set to the first country variant on the list - so the order in the Language class declaration is important!
  • Field Details

  • Constructor Details

  • Method Details

    • getActiveChecks

      public static Queue<String> getActiveChecks()
    • getId

      public String getId()
      Description copied from class: Rule
      A string used to identify the rule in e.g. configuration files. This string is supposed to be unique and to stay the same in all upcoming versions of LanguageTool. It's supposed to contain only the characters A-Z and the underscore.
      Specified by:
      getId in class SpellingCheckRule
    • getDescription

      public String getDescription()
      Description copied from class: Rule
      A short description of the error this rule can detect, usually in the language of the text that is checked.
      Specified by:
      getDescription in class SpellingCheckRule
    • isQuotedCompound

      protected boolean isQuotedCompound(AnalyzedSentence analyzedSentence, int idx, String token)
      Is the given token part of a hyphenated compound preceded by a quoted token (e.g., „Spiegel“-Magazin) and should be treated as an ordinary hyphenated compound (e.g., „Spiegel-Magazin“)
    • match

      public RuleMatch[] match(AnalyzedSentence sentence) throws IOException
      Description copied from class: Rule
      Check whether the given sentence matches this error rule, i.e. whether it contains the error detected by this rule. Note that the order in which this method is called is not always guaranteed, i.e. the sentence order in the text may be different than the order in which you get the sentences (this may be the case when LanguageTool is used as a LibreOffice/OpenOffice add-on, for example).
      Specified by:
      match in class SpellingCheckRule
      Parameters:
      sentence - a pre-analyzed sentence
      Returns:
      an array of RuleMatch objects
      Throws:
      IOException
    • cutOffDot

      private String cutOffDot(String s)
    • isMisspelled

      @Experimental public boolean isMisspelled(String word)
      Specified by:
      isMisspelled in class SpellingCheckRule
      Since:
      public since 4.1
    • getSuggestions

      public List<String> getSuggestions(String word) throws IOException
      Throws:
      IOException
    • sortSuggestionByQuality

      protected List<String> sortSuggestionByQuality(String misspelling, List<String> suggestions)
    • tokenizeText

      protected String[] tokenizeText(String sentence)
    • getSentenceTextWithoutUrlsAndImmunizedTokens

      protected String getSentenceTextWithoutUrlsAndImmunizedTokens(AnalyzedSentence sentence)
    • init

      protected void init() throws IOException
      Overrides:
      init in class SpellingCheckRule
      Throws:
      IOException
    • getDictFilenameInResources

      @NotNull protected @NotNull String getDictFilenameInResources(String langCountry)
    • addIgnoreWords

      private void addIgnoreWords() throws IOException
      Throws:
      IOException
    • getDictionaryPath

      private String getDictionaryPath(String dicName, String originalPath) throws IOException
      Throws:
      IOException
    • fileCopy

      private void fileCopy(InputStream in, File targetFile) throws IOException
      Throws:
      IOException
    • isAcceptedWordFromLanguage

      protected boolean isAcceptedWordFromLanguage(Language language, String word)
      Used in combination with acceptedInAlternativeLanguage to surpress spelling errors for words from a foreign language
      Parameters:
      language -
      word -
      Returns:
      true if the word from language can be considered as correctly spelled
      Since:
      4.6