Package org.languagetool.rules
Class AbstractCompoundRule
java.lang.Object
org.languagetool.rules.Rule
org.languagetool.rules.AbstractCompoundRule
- Direct Known Subclasses:
BretonCompoundRule,CompoundRule,CompoundRule,CompoundRule,CompoundRule,CompoundRule,CompoundRule,CompoundRule,CompoundRule,CompoundRule,CompoundRule,GermanCompoundRule,PortugueseColourHyphenationRule,PostReformPortugueseCompoundRule,PreReformPortugueseCompoundRule,RussianCompoundRule
Checks that compounds (if in the list) are not written as separate words.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate static final Patternprivate static final Patternprotected final Languageprotected final LinguServices(package private) static final intprotected booleanprivate final Stringprotected booleanprivate static final Patternprivate final Stringprivate final Stringprivate final String -
Constructor Summary
ConstructorsConstructorDescriptionAbstractCompoundRule(ResourceBundle messages, Language lang, UserConfig userConfig, String withHyphenMessage, String withoutHyphenMessage, String withOrWithoutHyphenMessage) AbstractCompoundRule(ResourceBundle messages, Language lang, UserConfig userConfig, String withHyphenMessage, String withoutHyphenMessage, String withOrWithoutHyphenMessage, String shortMessage) -
Method Summary
Modifier and TypeMethodDescriptionprivate static voidaddToQueue(AnalyzedTokenReadings token, ArrayDeque<AnalyzedTokenReadings> prevTokens) intA number that estimates how many words there must be after a match before we can be (relatively) sure the match is valid.filterReplacements(List<String> replacements, String original) abstract CompoundRuleDataabstract StringA short description of the error this rule can detect, usually in the language of the text that is checked.abstract StringgetId()A string used to identify the rule in e.g.private Map<String, AnalyzedTokenReadings> getStringToTokenMap(Queue<AnalyzedTokenReadings> prevTokens, List<String> stringsToCheck, List<String> origStringsToCheck) private booleanisCorrectSpell(String word) booleanisMisspelled(String word) private booleanisNotAllUppercase(String str) match(AnalyzedSentence sentence) Check whether the given sentence matches this error rule, i.e.mergeCompound(String str, boolean uncapitalizeMidWords) private StringvoidMethods inherited from class org.languagetool.rules.Rule
addExamplePair, addTags, addToneTags, cacheAntiPatterns, getAntiPatterns, getCategory, getCorrectExamples, getDistanceTokens, getErrorTriggeringExamples, getFullId, getIncorrectExamples, getLocQualityIssueType, getMinPrevMatches, getPriority, getRuleOptions, getSentenceWithImmunization, getSourceFile, getSubId, getTags, getToneTags, getUrl, hasTag, hasToneTag, isDefaultOff, isDefaultTempOff, isDictionaryBasedSpellingRule, isGoalSpecific, isIncludedInHiddenMatches, isOfficeDefaultOff, isOfficeDefaultOn, isPremium, makeAntiPatterns, setCategory, setCorrectExamples, setDefaultOff, setDefaultOn, setDefaultTempOff, setDistanceTokens, setErrorTriggeringExamples, setExamplePair, setGoalSpecific, setIncludedInHiddenMatches, setIncorrectExamples, setLocQualityIssueType, setMinPrevMatches, setOfficeDefaultOff, setOfficeDefaultOn, setPremium, setPriority, setTags, setToneTags, setUrl, supportsLanguage, toRuleMatchArray, useInOffice
-
Field Details
-
MAX_TERMS
static final int MAX_TERMS- See Also:
-
WHITESPACE
-
DIGIT
-
DASHES
-
withHyphenMessage
-
withoutHyphenMessage
-
withOrWithoutHyphenMessage
-
shortDesc
-
linguServices
-
lang
-
sentenceStartsWithUpperCase
protected boolean sentenceStartsWithUpperCase -
subRuleSpecificIds
protected boolean subRuleSpecificIds
-
-
Constructor Details
-
AbstractCompoundRule
public AbstractCompoundRule(ResourceBundle messages, Language lang, UserConfig userConfig, String withHyphenMessage, String withoutHyphenMessage, String withOrWithoutHyphenMessage) throws IOException - Throws:
IOException- Since:
- 3.0
-
AbstractCompoundRule
public AbstractCompoundRule(ResourceBundle messages, Language lang, UserConfig userConfig, String withHyphenMessage, String withoutHyphenMessage, String withOrWithoutHyphenMessage, String shortMessage) throws IOException - Throws:
IOException- Since:
- 3.0
-
-
Method Details
-
getId
Description copied from class:RuleA 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 charactersA-Zand the underscore. -
getDescription
Description copied from class:RuleA short description of the error this rule can detect, usually in the language of the text that is checked.- Specified by:
getDescriptionin classRule
-
estimateContextForSureMatch
public int estimateContextForSureMatch()Description copied from class:RuleA number that estimates how many words there must be after a match before we can be (relatively) sure the match is valid. This is useful for check-as-you-type, where a match might occur and the word that gets typed next makes the match disappear (something one would obviously like to avoid). Note: this may over-estimate the real context size. Returns-1when the sentence needs to end to be sure there's a match.- Overrides:
estimateContextForSureMatchin classRule
-
useSubRuleSpecificIds
public void useSubRuleSpecificIds() -
getCompoundRuleData
- Since:
- 3.0
-
match
Description copied from class:RuleCheck 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 from 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). In other words, implementations must be stateless, so that a previous call to this method has no influence on later calls.- Specified by:
matchin classRule- Parameters:
sentence- a pre-analyzed sentence- Returns:
- an array of
RuleMatchobjects - Throws:
IOException
-
filterReplacements
protected List<String> filterReplacements(List<String> replacements, String original) throws IOException - Throws:
IOException
-
getStringToTokenMap
private Map<String,AnalyzedTokenReadings> getStringToTokenMap(Queue<AnalyzedTokenReadings> prevTokens, List<String> stringsToCheck, List<String> origStringsToCheck) -
normalize
-
isNotAllUppercase
-
mergeCompound
-
addToQueue
private static void addToQueue(AnalyzedTokenReadings token, ArrayDeque<AnalyzedTokenReadings> prevTokens) -
isCorrectSpell
- Throws:
IOException
-
isMisspelled
- Throws:
IOException
-