Package org.languagetool.rules.de
Class CaseRule
- java.lang.Object
-
- org.languagetool.rules.Rule
-
- org.languagetool.rules.de.CaseRule
-
public class CaseRule extends org.languagetool.rules.RuleCheck that adjectives and verbs are not written with an uppercase first letter (except at the start of a sentence) and cases like this: Das laufen fällt mir leicht. (laufen needs to be uppercased).
-
-
Field Summary
Fields Modifier and Type Field Description private static java.util.List<java.util.List<org.languagetool.rules.patterns.PatternToken>>ANTI_PATTERNSprivate static java.lang.StringCOLON_MESSAGEprivate static java.lang.String[]DAS_VERB_EXCEPTIONSprivate static java.util.Set<java.util.regex.Pattern[]>exceptionPatternsprivate static java.lang.String[]exceptionsprivate Germangermanprivate static java.lang.String[]INTERROGATIVE_PARTICLESprivate static java.util.Set<java.lang.String>languagesprivate static java.lang.StringLOWERCASE_MESSAGEprivate static java.util.Set<java.lang.String>nounIndicatorsprivate static java.util.regex.PatternNUMERALS_ENprivate static java.lang.String[]POSSESSIVE_INDICATORSstatic org.languagetool.rules.patterns.PatternTokenSENT_STARTprivate static java.lang.String[]sentenceStartExceptionsprivate static java.util.Set<java.lang.String>substVerbenExceptionsprivate GermanTaggertaggerprivate static java.lang.String[]UNDEFINED_QUANTIFIERSprivate static java.lang.StringUPPERCASE_MESSAGE
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description private voidaddRuleMatch(java.util.List<org.languagetool.rules.RuleMatch> ruleMatches, org.languagetool.AnalyzedSentence sentence, java.lang.String msg, org.languagetool.AnalyzedTokenReadings tokenReadings, java.lang.String fixedWord)(package private) booleancompareLists(org.languagetool.AnalyzedTokenReadings[] tokens, int startIndex, int endIndex, java.util.regex.Pattern[] patterns)intestimateContextForSureMatch()java.util.List<org.languagetool.tagging.disambiguation.rules.DisambiguationPatternRule>getAntiPatterns()java.lang.StringgetDescription()java.lang.StringgetId()private intgetTokensWithPosTagStartingWithCount(org.languagetool.AnalyzedTokenReadings[] tokens, java.lang.String partialPosTag)java.net.URLgetUrl()private booleanhasNounReading(org.languagetool.AnalyzedTokenReadings readings)private booleanhasPartialTag(org.languagetool.AnalyzedTokenReadings token, java.lang.String... posTags)private booleanisAdjectiveAsNoun(int i, org.languagetool.AnalyzedTokenReadings[] tokens, org.languagetool.AnalyzedTokenReadings lowercaseReadings)private booleanisAdverbAndNominalization(int i, org.languagetool.AnalyzedTokenReadings[] tokens)private booleanisCompany(java.lang.String token)private booleanisDot(java.lang.String token)private booleanisEllipsis(int i, org.languagetool.AnalyzedTokenReadings[] tokens)private booleanisExceptionPhrase(int i, org.languagetool.AnalyzedTokenReadings[] tokens)private booleanisFollowedByRelativeOrSubordinateClause(int i, org.languagetool.AnalyzedTokenReadings[] tokens)private booleanisLanguage(int i, org.languagetool.AnalyzedTokenReadings[] tokens, java.lang.String token)private booleanisNominalization(int i, org.languagetool.AnalyzedTokenReadings[] tokens, java.lang.String token, org.languagetool.AnalyzedTokenReadings lowercaseReadings)private booleanisNounWithVerbReading(int i, org.languagetool.AnalyzedTokenReadings[] tokens)private booleanisNumber(java.lang.String token)private booleanisNumbering(int i, org.languagetool.AnalyzedTokenReadings[] tokens)private booleanisPotentialUpperCaseError(int pos, org.languagetool.AnalyzedTokenReadings[] tokens, org.languagetool.AnalyzedTokenReadings lowercaseReadings, boolean isPrecededByModalOrAuxiliary)private booleanisPrevProbablyRelativePronoun(org.languagetool.AnalyzedTokenReadings[] tokens, int i)private booleanisProbablyCity(int i, org.languagetool.AnalyzedTokenReadings[] tokens, java.lang.String token)private booleanisSalutation(java.lang.String token)private booleanisSpecialCase(int i, org.languagetool.AnalyzedTokenReadings[] tokens)private booleanisVerbFollowing(int i, org.languagetool.AnalyzedTokenReadings[] tokens, org.languagetool.AnalyzedTokenReadings lowercaseReadings)private org.languagetool.AnalyzedTokenReadingslookup(java.lang.String word)org.languagetool.rules.RuleMatch[]match(org.languagetool.AnalyzedSentence sentence)private voidpotentiallyAddLowercaseMatch(java.util.List<org.languagetool.rules.RuleMatch> ruleMatches, org.languagetool.AnalyzedTokenReadings tokenReadings, boolean prevTokenIsDas, java.lang.String token, boolean nextTokenIsPersonalOrReflexivePronoun, org.languagetool.AnalyzedSentence sentence)private voidpotentiallyAddUppercaseMatch(java.util.List<org.languagetool.rules.RuleMatch> ruleMatches, org.languagetool.AnalyzedTokenReadings[] tokens, int i, org.languagetool.AnalyzedTokenReadings analyzedToken, java.lang.String token, org.languagetool.AnalyzedTokenReadings lowercaseReadings, org.languagetool.AnalyzedSentence sentence)-
Methods inherited from class org.languagetool.rules.Rule
addExamplePair, getCategory, getConfigureText, getCorrectExamples, getDefaultValue, getErrorTriggeringExamples, getIncorrectExamples, getLocQualityIssueType, getMaxConfigurableValue, getMinConfigurableValue, getSentenceWithImmunization, hasConfigurableValue, isDefaultOff, isDefaultTempOff, isDictionaryBasedSpellingRule, isOfficeDefaultOff, isOfficeDefaultOn, makeAntiPatterns, setCategory, setCorrectExamples, setDefaultOff, setDefaultOn, setDefaultTempOff, setErrorTriggeringExamples, setIncorrectExamples, setLocQualityIssueType, setOfficeDefaultOff, setOfficeDefaultOn, setUrl, supportsLanguage, toRuleMatchArray, useInOffice
-
-
-
-
Field Detail
-
NUMERALS_EN
private static final java.util.regex.Pattern NUMERALS_EN
-
nounIndicators
private static final java.util.Set<java.lang.String> nounIndicators
-
UPPERCASE_MESSAGE
private static final java.lang.String UPPERCASE_MESSAGE
- See Also:
- Constant Field Values
-
LOWERCASE_MESSAGE
private static final java.lang.String LOWERCASE_MESSAGE
- See Also:
- Constant Field Values
-
COLON_MESSAGE
private static final java.lang.String COLON_MESSAGE
- See Also:
- Constant Field Values
-
SENT_START
public static final org.languagetool.rules.patterns.PatternToken SENT_START
-
ANTI_PATTERNS
private static final java.util.List<java.util.List<org.languagetool.rules.patterns.PatternToken>> ANTI_PATTERNS
-
sentenceStartExceptions
private static final java.lang.String[] sentenceStartExceptions
-
UNDEFINED_QUANTIFIERS
private static final java.lang.String[] UNDEFINED_QUANTIFIERS
-
INTERROGATIVE_PARTICLES
private static final java.lang.String[] INTERROGATIVE_PARTICLES
-
POSSESSIVE_INDICATORS
private static final java.lang.String[] POSSESSIVE_INDICATORS
-
DAS_VERB_EXCEPTIONS
private static final java.lang.String[] DAS_VERB_EXCEPTIONS
-
exceptions
private static final java.lang.String[] exceptions
-
languages
private static final java.util.Set<java.lang.String> languages
-
exceptionPatterns
private static final java.util.Set<java.util.regex.Pattern[]> exceptionPatterns
-
substVerbenExceptions
private static final java.util.Set<java.lang.String> substVerbenExceptions
-
tagger
private final GermanTagger tagger
-
german
private final German german
-
-
Constructor Detail
-
CaseRule
public CaseRule(java.util.ResourceBundle messages, German german)
-
-
Method Detail
-
getId
public java.lang.String getId()
- Specified by:
getIdin classorg.languagetool.rules.Rule
-
estimateContextForSureMatch
public int estimateContextForSureMatch()
- Overrides:
estimateContextForSureMatchin classorg.languagetool.rules.Rule
-
getUrl
public java.net.URL getUrl()
- Overrides:
getUrlin classorg.languagetool.rules.Rule
-
getDescription
public java.lang.String getDescription()
- Specified by:
getDescriptionin classorg.languagetool.rules.Rule
-
match
public org.languagetool.rules.RuleMatch[] match(org.languagetool.AnalyzedSentence sentence) throws java.io.IOException- Specified by:
matchin classorg.languagetool.rules.Rule- Throws:
java.io.IOException
-
getTokensWithPosTagStartingWithCount
private int getTokensWithPosTagStartingWithCount(org.languagetool.AnalyzedTokenReadings[] tokens, java.lang.String partialPosTag)
-
isPotentialUpperCaseError
private boolean isPotentialUpperCaseError(int pos, org.languagetool.AnalyzedTokenReadings[] tokens, org.languagetool.AnalyzedTokenReadings lowercaseReadings, boolean isPrecededByModalOrAuxiliary)
-
getAntiPatterns
public java.util.List<org.languagetool.tagging.disambiguation.rules.DisambiguationPatternRule> getAntiPatterns()
- Overrides:
getAntiPatternsin classorg.languagetool.rules.Rule
-
isPrevProbablyRelativePronoun
private boolean isPrevProbablyRelativePronoun(org.languagetool.AnalyzedTokenReadings[] tokens, int i)
-
isSalutation
private boolean isSalutation(java.lang.String token)
-
isCompany
private boolean isCompany(java.lang.String token)
-
isDot
private boolean isDot(java.lang.String token)
-
hasNounReading
private boolean hasNounReading(org.languagetool.AnalyzedTokenReadings readings)
-
potentiallyAddLowercaseMatch
private void potentiallyAddLowercaseMatch(java.util.List<org.languagetool.rules.RuleMatch> ruleMatches, org.languagetool.AnalyzedTokenReadings tokenReadings, boolean prevTokenIsDas, java.lang.String token, boolean nextTokenIsPersonalOrReflexivePronoun, org.languagetool.AnalyzedSentence sentence)
-
potentiallyAddUppercaseMatch
private void potentiallyAddUppercaseMatch(java.util.List<org.languagetool.rules.RuleMatch> ruleMatches, org.languagetool.AnalyzedTokenReadings[] tokens, int i, org.languagetool.AnalyzedTokenReadings analyzedToken, java.lang.String token, org.languagetool.AnalyzedTokenReadings lowercaseReadings, org.languagetool.AnalyzedSentence sentence)
-
isNounWithVerbReading
private boolean isNounWithVerbReading(int i, org.languagetool.AnalyzedTokenReadings[] tokens)
-
isVerbFollowing
private boolean isVerbFollowing(int i, org.languagetool.AnalyzedTokenReadings[] tokens, org.languagetool.AnalyzedTokenReadings lowercaseReadings)
-
addRuleMatch
private void addRuleMatch(java.util.List<org.languagetool.rules.RuleMatch> ruleMatches, org.languagetool.AnalyzedSentence sentence, java.lang.String msg, org.languagetool.AnalyzedTokenReadings tokenReadings, java.lang.String fixedWord)
-
isNumbering
private boolean isNumbering(int i, org.languagetool.AnalyzedTokenReadings[] tokens)
-
isEllipsis
private boolean isEllipsis(int i, org.languagetool.AnalyzedTokenReadings[] tokens)
-
isNominalization
private boolean isNominalization(int i, org.languagetool.AnalyzedTokenReadings[] tokens, java.lang.String token, org.languagetool.AnalyzedTokenReadings lowercaseReadings)
-
isNumber
private boolean isNumber(java.lang.String token)
-
isAdverbAndNominalization
private boolean isAdverbAndNominalization(int i, org.languagetool.AnalyzedTokenReadings[] tokens)
-
hasPartialTag
private boolean hasPartialTag(org.languagetool.AnalyzedTokenReadings token, java.lang.String... posTags)
-
isSpecialCase
private boolean isSpecialCase(int i, org.languagetool.AnalyzedTokenReadings[] tokens)
-
isAdjectiveAsNoun
private boolean isAdjectiveAsNoun(int i, org.languagetool.AnalyzedTokenReadings[] tokens, org.languagetool.AnalyzedTokenReadings lowercaseReadings)
-
isLanguage
private boolean isLanguage(int i, org.languagetool.AnalyzedTokenReadings[] tokens, java.lang.String token)
-
isProbablyCity
private boolean isProbablyCity(int i, org.languagetool.AnalyzedTokenReadings[] tokens, java.lang.String token)
-
isFollowedByRelativeOrSubordinateClause
private boolean isFollowedByRelativeOrSubordinateClause(int i, org.languagetool.AnalyzedTokenReadings[] tokens)
-
isExceptionPhrase
private boolean isExceptionPhrase(int i, org.languagetool.AnalyzedTokenReadings[] tokens)
-
compareLists
boolean compareLists(org.languagetool.AnalyzedTokenReadings[] tokens, int startIndex, int endIndex, java.util.regex.Pattern[] patterns)
-
lookup
private org.languagetool.AnalyzedTokenReadings lookup(java.lang.String word)
-
-