Class AbstractStyleRepeatedWordRule

java.lang.Object
org.languagetool.rules.Rule
org.languagetool.rules.TextLevelRule
org.languagetool.rules.AbstractStyleRepeatedWordRule

public abstract class AbstractStyleRepeatedWordRule extends TextLevelRule
An abstract rule checks the appearance of same words in a sentence or in two consecutive sentences. The isTokenToCheck method can be used to check only specific words (e.g. substantive, verbs and adjectives). This rule detects no grammar error but a stylistic problem (default off)
Since:
4.1
  • Field Details

    • MAX_TOKEN_TO_CHECK

      private static final int MAX_TOKEN_TO_CHECK
      See Also:
    • linguServices

      private final LinguServices linguServices
    • lang

      private final Language lang
    • maxDistanceOfSentences

      protected int maxDistanceOfSentences
  • Constructor Details

  • Method Details

    • getId

      public String getId()
      Override this ID by adding a language acronym (e.g. STYLE_REPEATED_WORD_RULE_DE) to use adjustment of maxWords by option panel
      Specified by:
      getId in class Rule
      Since:
      4.1
    • 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 Rule
    • messageSameSentence

      protected abstract String messageSameSentence()
    • messageSentenceBefore

      protected abstract String messageSentenceBefore()
    • messageSentenceAfter

      protected abstract String messageSentenceAfter()
    • getDefaultValue

      public int getDefaultValue()
      Description copied from class: Rule
      Overwrite this to get a default Integer value by option panel
      Overrides:
      getDefaultValue in class Rule
    • hasConfigurableValue

      public boolean hasConfigurableValue()
      Description copied from class: Rule
      Overwrite this to return true, if a value may be configured by option panel
      Overrides:
      hasConfigurableValue in class Rule
      Since:
      4.2
    • getMinConfigurableValue

      public int getMinConfigurableValue()
      Description copied from class: Rule
      Overwrite this to define the minimum of a configurable value
      Overrides:
      getMinConfigurableValue in class Rule
      Since:
      4.2
    • getMaxConfigurableValue

      public int getMaxConfigurableValue()
      Description copied from class: Rule
      Overwrite this to define the maximum of a configurable value
      Overrides:
      getMaxConfigurableValue in class Rule
      Since:
      4.2
    • getConfigureText

      public String getConfigureText()
      Description copied from class: Rule
      Overwrite this to define the Text in the option panel for the configurable value
      Overrides:
      getConfigureText in class Rule
      Since:
      4.2
    • isTokenToCheck

      protected abstract boolean isTokenToCheck(AnalyzedTokenReadings token)
    • isTokenPair

      protected abstract boolean isTokenPair(AnalyzedTokenReadings[] tokens, int n, boolean before)
    • hasBreakToken

      private static boolean hasBreakToken(AnalyzedTokenReadings[] tokens)
    • isTokenInSentence

      private boolean isTokenInSentence(AnalyzedTokenReadings testToken, AnalyzedTokenReadings[] tokens)
    • isPartOfWord

      protected boolean isPartOfWord(String testTokenText, String tokenText)
    • setURL

      protected URL setURL(AnalyzedTokenReadings token) throws MalformedURLException
      Throws:
      MalformedURLException
    • getSynonyms

      public List<String> getSynonyms(AnalyzedTokenReadings token)
      get synonyms for a repeated word
    • isTokenInSentence

      private boolean isTokenInSentence(AnalyzedTokenReadings testToken, AnalyzedTokenReadings[] tokens, int notCheck)
    • match

      public RuleMatch[] match(List<AnalyzedSentence> sentences) throws IOException
      Specified by:
      match in class TextLevelRule
      Throws:
      IOException
    • minToCheckParagraph

      public int minToCheckParagraph()
      Description copied from class: TextLevelRule
      Gives back the minimum number of paragraphs to check to give back a correct result. Only used by LO office extension.
      • n == -1 --> need to check full text (use only if really needed / bad performance) examples: AbstractWordCoherencyRule, GenericUnpairedBracketsRule, ...
      • n == 0 --> need only to check the current paragraph examples: MultipleWhitespaceRule, LongParagraphRule, ...
      • n >= 1 --> need only to check n paragraphs around the current paragraph examples: ParagraphRepeatBeginningRule (n == 1), WordRepeatBeginningRule (n == 2), ...
      Specified by:
      minToCheckParagraph in class TextLevelRule