in languagetool-language-modules/de/src/main/java/org/languagetool/tokenizers/de/GermanCompoundTokenizer.java [188:309]
public GermanCompoundTokenizer(boolean strictMode) throws IOException {
wordSplitter = new ExtendedGermanWordSplitter(false);
wordSplitter.setStrictMode(strictMode);
wordSplitter.setMinimumWordLength(3);
// add exceptions here so we don't need to update JWordSplitter for every exception we find:
//wordSplitter.addException("Maskerade", Collections.singletonList("Maskerade"));
//wordSplitter.addException("Sportshorts", asList("Sport", "shorts"));
wordSplitter.addException("Absolventen", asList("Absolventen"));
wordSplitter.addException("Acetat", asList("Acetat"));
wordSplitter.addException("Alkoholabstinenz", asList("Alkohol", "abstinenz"));
wordSplitter.addException("Androgen", asList("Androgen"));
wordSplitter.addException("Auberginen", asList("Auberginen"));
wordSplitter.addException("Auckland", asList("Auckland"));
wordSplitter.addException("Boston", asList("Boston"));
wordSplitter.addException("Brandenburg", asList("Brandenburg"));
wordSplitter.addException("Broadcast", asList("Broadcast"));
wordSplitter.addException("Buchsbaum", asList("Buchsbaum"));
wordSplitter.addException("Chiemsee", asList("Chiemsee"));
wordSplitter.addException("Coffein", asList("Coffein"));
wordSplitter.addException("Drohnen", asList("Drohnen"));
wordSplitter.addException("Eiben", asList("Eiben"));
wordSplitter.addException("Eingroschen", asList("Eingroschen"));
wordSplitter.addException("Einkomponenten", asList("Einkomponenten"));
wordSplitter.addException("Elster", asList("Elster"));
wordSplitter.addException("Engineering", asList("Engineering"));
wordSplitter.addException("Factoring", asList("Factoring"));
wordSplitter.addException("Flexodruck", asList("Flexo", "druck"));
wordSplitter.addException("Graviton", asList("Graviton"));
wordSplitter.addException("Göttinnen", asList("Göttinnen"));
wordSplitter.addException("Hallesche", asList("Hallesche"));
wordSplitter.addException("Hinspiel", asList("Hinspiel"));
wordSplitter.addException("Homogen", asList("Homogen"));
wordSplitter.addException("Kolleggen", asList("Kolleggen"));
wordSplitter.addException("Karstadt", asList("Karstadt"));
wordSplitter.addException("Kartier", asList("Kartier"));
wordSplitter.addException("Kaukasus", asList("Kaukasus"));
wordSplitter.addException("Knoblauch", asList("Knoblauch"));
wordSplitter.addException("Kollagen", asList("Kollagen"));
wordSplitter.addException("Kommerz", asList("Kommerz"));
wordSplitter.addException("Mentoring", asList("Mentoring"));
wordSplitter.addException("Monarchen", asList("Monarchen"));
wordSplitter.addException("Oligarchen", asList("Oligarchen"));
wordSplitter.addException("Optimal", asList("Optimal"));
wordSplitter.addException("Saunieren", asList("Saunieren"));
wordSplitter.addException("Schiessen", asList("Schiessen"));
wordSplitter.addException("Spielgeleier", asList("Spielgeleier"));
wordSplitter.addException("Halleschen", asList("Halleschen"));
wordSplitter.addException("Reinigungstab", asList("Reinigungs", "tab"));
wordSplitter.addException("Reinigungstabs", asList("Reinigungs", "tabs"));
wordSplitter.addException("Tauschwerte", asList("Tausch", "werte"));
wordSplitter.addException("Tauschwertes", asList("Tausch", "wertes"));
wordSplitter.addException("Kinderspielen", asList("Kinder", "spielen"));
wordSplitter.addException("Buchhaltungstrick", asList("Buchhaltungs", "trick"));
wordSplitter.addException("Buchhaltungstricks", asList("Buchhaltungs", "tricks"));
wordSplitter.addException("Haushaltstrick", asList("Haushalts", "trick"));
wordSplitter.addException("Haushaltstricks", asList("Haushalts", "tricks"));
wordSplitter.addException("Verkaufstrick", asList("Verkaufs", "trick"));
wordSplitter.addException("Verkaufstricks", asList("Verkaufs", "tricks"));
wordSplitter.addException("Ablenkungstrick", asList("Ablenkungs", "trick"));
wordSplitter.addException("Ablenkungstricks", asList("Ablenkungs", "tricks"));
wordSplitter.addException("Manipulationstrick", asList("Manipulations", "trick"));
wordSplitter.addException("Manipulationstricks", asList("Manipulations", "tricks"));
wordSplitter.addException("Erziehungstrick", asList("Erziehungs", "trick"));
wordSplitter.addException("Erziehungstricks", asList("Erziehungs", "tricks"));
wordSplitter.addException("Messetage", asList("Messe", "tage"));
wordSplitter.addException("Messetagen", asList("Messe", "tagen"));
wordSplitter.addException("karamelligen", asList("karamelligen")); // != Karamel+Ligen
wordSplitter.addException("Häkelnadel", asList("Häkel", "nadel"));
wordSplitter.addException("Häkelnadeln", asList("Häkel", "nadeln"));
wordSplitter.addException("Freiberg", asList("Freiberg"));
wordSplitter.addException("Abtestat", asList("Abtestat"));
wordSplitter.addException("Abtestaten", asList("Abtestaten"));
wordSplitter.addException("Freibergs", asList("Freibergs"));
wordSplitter.addException("Kreuzberg", asList("Kreuzberg"));
wordSplitter.addException("Kreuzbergs", asList("Kreuzbergs"));
wordSplitter.addException("Digitalisierung", asList("Digitalisierung"));
wordSplitter.addException("Abtrocknung", asList("Abtrocknung"));
wordSplitter.addException("Erlösung", asList("Erlösung"));
wordSplitter.addException("Feuerung", asList("Feuerung"));
wordSplitter.addException("Aktivierung", asList("Aktivierung"));
wordSplitter.addException("Protokollierung", asList("Protokollierung"));
wordSplitter.addException("Budgetierung", asList("Budgetierung"));
wordSplitter.addException("Faltung", asList("Faltung"));
wordSplitter.addException("Anhäufung", asList("Anhäufung"));
wordSplitter.addException("Aufkohlung", asList("Aufkohlung"));
wordSplitter.addException("Festigung", asList("Festigung"));
wordSplitter.addException("Allerheiligen", asList("Allerheiligen"));
wordSplitter.addException("Druckerpressen", asList("Drucker", "pressen"));
wordSplitter.addException("Habitat", asList("Habitat"));
wordSplitter.addException("Augarten", asList("Augarten"));
wordSplitter.addException("Auszeit", asList("Auszeit"));
wordSplitter.addException("Bewegtbild", asList("Bewegt", "bild"));
wordSplitter.addException("Bigband", asList("Bigband"));
wordSplitter.addException("Bisexuelle", asList("Bisexuelle"));
wordSplitter.addException("Bisexuellen", asList("Bisexuellen"));
wordSplitter.addException("Bunsenbrenner", asList("Bunsenbrenner")); // avoid "Bunsenweisheit"
wordSplitter.addException("Carbon", asList("Carbon"));
wordSplitter.addException("Carsharing", asList("Carsharing"));
wordSplitter.addException("Castor", asList("Castor"));
wordSplitter.addException("Catering", asList("Catering"));
wordSplitter.addException("Cholesterin", asList("Cholesterin"));
wordSplitter.addException("Damast", asList("Damast"));
wordSplitter.addException("Dispositiv", asList("Dispositiv"));
wordSplitter.addException("Emittent", asList("Emittent"));
wordSplitter.addException("Emittenten", asList("Emittenten"));
wordSplitter.addException("Express", asList("Express"));
wordSplitter.addException("Fairness", asList("Fairness"));
wordSplitter.addException("Fiberglas", asList("Fiberglas")); // avoid "Fiberthermometer"
wordSplitter.addException("Globus", asList("Globus"));
wordSplitter.addException("Göttinnen", asList("Göttinnen"));
wordSplitter.addException("Illustration", asList("Illustration"));
wordSplitter.addException("Muttertag", asList("Muttertag")); // "Muttertag" needs infix s
wordSplitter.addException("Muttertags", asList("Muttertags")); // "Muttertag" needs infix s
wordSplitter.addException("Patriarchen", asList("Patriarchen"));
wordSplitter.addException("Phosgen", asList("Phosgen"));
wordSplitter.addException("Vatertag", asList("Vatertag")); // "Vatertag" needs infix s
wordSplitter.addException("Vatertags", asList("Vatertags")); // "Vatertag" needs infix s
wordSplitter.addException("Vaterland", asList("Vaterland"));
wordSplitter.addException("Vaterlands", asList("Vaterlands"));
wordSplitter.addException("Wehrmacht", asList("Wehrmacht"));
wordSplitter.addException("Wehrmachts", asList("Wehrmachts"));
}