Hi, a small update on this one : I’ve built a small python script that uses the patterns from the selnolig package to extract words with suspicious ligatures from the word list provided by the Uni Leipzig corpus project. Running the script over a corpus of over 1 million words produces the attached word list. The resulting list of words is not huge. That corpus gives us a list of about 790 words. I’ll need to check whether they already are in the goodies file or if I need to add them.
Anyway, I was thinking about making such a script more generic. Think of something along the lines of: pdftotext book.pdf | showIncorrectLigatures.py > incorrect-ligatures.txt Denis Von: ntg-context <ntg-context-boun...@ntg.nl> Im Auftrag von rh...@t-online.de Gesendet: Mittwoch, 7. April 2021 20:20 An: ntg-context@ntg.nl Betreff: Re: [NTG-context] Ligature suppression word list Message: 2 Date: Tue, 6 Apr 2021 15:03:54 +0000 From: <denis.ma...@ub.unibe.ch<mailto:denis.ma...@ub.unibe.ch>> To: <j.ha...@xs4all.nl<mailto:j.ha...@xs4all.nl>>, <ntg-context@ntg.nl<mailto:ntg-context@ntg.nl>> Subject: Re: [NTG-context] Ligature suppression word list Message-ID: <41e6530172b54bffb7a82febff0a6...@ub.unibe.ch<mailto:41e6530172b54bffb7a82febff0a6...@ub.unibe.ch>> Content-Type: text/plain; charset="iso-8859-1" -----Ursprüngliche Nachricht----- Von: Hans Hagen <j.ha...@xs4all.nl<mailto:j.ha...@xs4all.nl>> Gesendet: Samstag, 3. April 2021 17:58 An: mailing list for ConTeXt users <ntg-context@ntg.nl<mailto:ntg-context@ntg.nl>>; Maier, Denis Christian (UB) <denis.ma...@ub.unibe.ch<mailto:denis.ma...@ub.unibe.ch>> Betreff: Re: [NTG-context] Ligature suppression word list […] 2. A bigger solution might be to use selnoligs patterns in a script that can be run over a large corpus, such as the DWDS (Digitales Wörterbuch der deutschen Sprache). That should produce us a more complete list of words where ligatures must be suppressed. where is that DWDS ... i can write some code to deal with it (i'd rather start from the source than from some interpretation; who know what more there is to uncover) As it turn out, the linguists that helped with the selnolig package did use another corpus: Stuttgart "Deutsch" Web as Corpus They describe their approach in that paper: https://raw.githubusercontent.com/SHildebrandt/selnolig-check/master/selnolig-check-documentation.pdf A lot of corpora can be found here: https://wortschatz.uni-leipzig.de/de especially here: https://wortschatz.uni-leipzig.de/de/download/German There are corpora of many other languages, too, such as English, French, Dutch, Spanish, Russian, Japanese, Latin, … HTH Ralf
Auftrag Auftritt Auftakt Auflage Auflösung Aufträge fünften Auftraggeber Auflagen Auffassung fünfte Aufführung Auftragseingang auftreten Auftritte Fünftel Straftaten Auftragsbestand Aufforderung Auftreten Auflistung Auftrieb Aufführungen Straftat auffällig Auftragsvolumen Auftragsbücher Auffällig Auftragseingänge Schieflage Auftragslage auflösen Auftragsbestätigung Aufträgen Cheftrainer Fünfte Auffinden Kopftuch auffallend auffällige elften Auffassungen Auflaufform Auftraggebers Auftritten auffangen offline Auffahrt Auftragswert Fünfter Auftaktveranstaltung Auftragserteilung Straftatbestand auffüllen Auflauf Auftragnehmer Dorffest Kaufinteresse Straftäter auftauchen elfte Auffallend fünften Mal fünfter Auffälligkeiten Auftragsvergabe Kaufinteressenten auffindbar auftretenden Auffahrunfall Prüfling aufladen auflaufen Auftrages Auftrags Dampflokomotiven auffälliges fünftägigen Auflösungen Auftragen Hofladen Schlaflosigkeit auftretende Aufladen Aufladung Auflockerung Auftaktspiel Auftragsbüchern Auftritts Briefträger Prüflinge Schlaflabor Schlaftabletten kampflos Auftaktquartal Auftauchen Auftragsabwicklung Auftragseingängen Dampflok Hoffest Tiefflug auffallen auffrischen auffälliger auffälligsten schlaflose Auffrischung Auffällige Auflehnung Auflieger Auftraggebern Auftragssumme Brieftasche Elfter Straftätern auffälligste fünftes schlaflose Nächte tarifliche Auffahrunfälle Auflagenhöhe Auflassung Auftaktsieg Auftragsbearbeitung Auftragseingangs Auftragsmord Auftragsrückgang Auftretens Kopfteil Kopftuchverbot Scheffler Tariflohn Tieflader auffälligen auftragsbezogen Auffanglager Aufführungspraxis Auflockerungen Auflösungsvertrag Auftanken Auftragnehmers Auftragsbestände Auftragsbuch Auftragseinbruch Auftragsplus Auftrittsmöglichkeiten Brieffreund Golffahrer Kopftücher Offline Tiefladern auffallende auffordern aufführen auflegen auftauen auftragen auftreiben fünftägige schlaflosen Auffahrten Auffahrunfällen Auffanggesellschaft Aufforderungscharakter Aufforstung Auffälligstes Auffüllen Auflagefläche Auflaufen Auflösungserscheinungen Auftauen Auftragsannahme Auftragsarbeiten Auftragskomposition Auftragsminus Auftragsmorde Auftrittsort Brieffreundin Brieffreundschaft Brieftaschen Brieftauben Cheftrainer Andreas Hirsch Fünften Fünftes Kampffeld Kaufinteressent Kopfleiste Surftipps Surftips Tiefland aufleben auflockern auftanken auftrumpfen stoffliche tiefliegenden Auffanglösung Auffindung Auffliegen Aufforderung zum Tanz Aufforderungen Aufforstungsmaßnahmen Auffälligkeit Auffälligste Auffälligster Aufführungsorte Auffüllung Auflage von 2 Auflagenverstöße Auflegen Auflösen Auflösungsbeschluss Auflösungstendenzen Auftaktdrittel Auftaktrennen Auftauzeit Auftrag geben Auftrage Auftrageber Auftraggeberin Auftragsbestätigungen Auftragseinbrüche Auftragsentwicklung Auftragsfertiger Auftragsformular Auftragsindex Auftragsmörder Auftragsnummer Auftragspolster Auftragswerken Auftretende Auftrittszeit Auftrumpfen Brieffreundschaften Brieftaube Dampflokomotive Dampfloks Dorffeste Dorffesten Dorffestes Dorfteich Elfte Golfturnier Hoffassade Hoffung Hoftür Kampffahrzeuge Kampflos Kampflustig Kopffreiheit Kopftuch tragen Kopftuchs Kopftuchstreit Prüffristen Prüflings Schlaflabore Schlaflose Schlaftablette Straflager Straflosigkeit Straftatbestände Straftraining Surftipp Tarifflucht Tarifforderungen Tarifliste Tariflöhne Tariftabelle Tariftreuegesetz Tiefflüge Wurftechniken auffordernde auffälligem auffällt auflachen auflagenstärkste auflandigem aufleuchten aufliegen auftauchenden auftraggebende auftun elften Mal ft ftp fünflappig fünfte Mal kopflos schlaftrunkenen stofflichen Auffahren Auffahrgefahr Auffahrt zum Auffallen Auffang- Auffangbeckens Auffangbehälter Auffangbett Auffangen Auffangrege-lungen Auffangsieb Auffangstationen Auffangsystem Auffangund Auffangvorrichtung Auffangwanne Auffangzentrum Auffassungsgabe Auffassungsunterschied Auffassungsunterschiede Auffasungen Auffindbarkeit Auffindens Auffindsituation Auffllig Auffordernd Aufforstungen Aufforstungsbescheid Aufforstungsprogramm Aufforstungsunternehmen Auffrischen Auffrischimpfung Auffrischungen Auffrischungsimpfung Auffälligen Auffälliges Auffälligkeitsgrad Aufführungen/Lesungen Aufführungsbedingungen Aufführungsblöcken Aufführungsdauer Aufführungskünste Aufführungsort Aufführungspause Aufführungstermine Auffüllarbeiten Auffüllkapazität Auffütterung Auflagebereich Auflagedatum Auflagedruck Auflageflaeche Auflagemaß Auflagen-Plus Auflagendruck Auflagendruckprozess Auflagenrückgang Auflagenzahlen Auflagepunkte Auflager Auflagerreaktionen Auflagezeit Auflassungsvormerkung Auflauf-Alternative Auflaufbremse Auflaufs Auflaufschäden Aufleben Auflegen-Symbol Aufleger Auflegung Aufleuchten Auflichtbildverarbeitung Auflichtmikroskopie Aufloesung Auflösezeit Auflösung der Ehe Auflösungs-Dreisatz Auflösungs-Erscheinungen Auflösungsantrag Auflösungsarbeit Auflösungsbeschluß Auflösungsverlust Auflösungsversammlung Auflösungsvertrages Auflösungsverträge Auflüge Auftakt-Heldin Auftakt-Niederlage Auftakt-Reise Auftakt-Sieg Auftaktabend Auftaktaktionen Auftaktbezwinger Auftaktdrittels Auftaktetappe Auftaktfall Auftaktgegner Auftaktpartie Auftaktpremiere Auftaktprogramm Auftaktsatz Auftaktseminar Auftaktshow Auftaktspiele Auftakttermin Auftaktveranstaltungen Auftaktvorlesung Auftanken Auftauchende Auftauchgeschwindigkeit Auftrag erteilen Auftrag vergeben Auftragbestand Auftragemengen Auftraggbeer Auftrags- Auftrags-volumens Auftragsarbeit Auftragsarten Auftragsbaby Auftragsberatungsstellen Auftragsbericht Auftragsbeschreibung Auftragsbestandes Auftragsbestands Auftragsbestätigung/Lieferschein Auftragsboom Auftragsdaten Auftragsdecke Auftragsdurchlauf Auftragseinbrüchen Auftragsende Auftragserholung Auftragsfirma Auftragsfirmen Auftragsflaute Auftragsflut Auftragsformulare Auftragsgegenstandes Auftragsgeschwindigkeit Auftragshöhe Auftragsinhalt Auftragskiller Auftragskostenpauschale Auftragskunst Auftragslücken Auftragsmangel Auftragsmordes Auftragsnamens Auftragspalette Auftragspauschale Auftragspotential Auftragspotenzial Auftragsproduktion Auftragsprojekte Auftragsreichweite Auftragsreichweiten Auftragsrückgänge Auftragssachbearbeiter Auftragsschub Auftragsschwankungen Auftragssituation Auftragsspitzen Auftragsstammsatz Auftragsstornierungen Auftragsstornos Auftragsstunden Auftragssummen Auftragssätze Auftragstalfahrt Auftragstyp1:Auftrag Auftragsunternehmern Auftragsverdoppelung Auftragsverfolgung Auftragsvergaben Auftragsvielfalt Auftragsvolumens Auftragswarteschlange Auftragswelle Auftragswerk Auftragswertes Auftragswesens Auftragszahlen Auftragszugangsim Auftragung Auftreffen Auftreffgeschwindigkeit Auftreffpunkt Auftrennen Auftretenden Auftriebkraft Auftriebsgürtel Auftriebshilfen Auftriebskraft Auftriebskräfte Auftriebskörper Auftriebsprinzip Auftriebszuwachs Auftriebsübungen Auftriebverliehen Auftrittes Auftrittmöglichkeiten Auftritts-Reihenfolge Auftrittserfahrung Auftrittsgarantie Auftrittsmarathon Auftrittsorte Auftrittsreihe Auftrittstermine Auftrittstiefe Auftrittsverbot Auftrittsverbote Auftrocknung Auftrumpferei Briefform Brieffreunde Brieflaufzeiten Brieftaubenausstellung Brieftaubenzuchtverein Brieftitel Briefträgern Cheffige Cheflimousinen Cheftechnologin Cheftoilette Cheftrainer Andreas Bergmann Cheftrainer Frank Mantek Cheftrainer Maier Cheftrainer Martin Rufener Cheftrainer-Posten Cheftrainer-Stelle Cheftrainerin Cheftrainerin Ulla Koch Cheftrainers Cheftrainerstelle Cheftu Dampffontäne Dampflagerstätten Dampfleck Dampfleistung Dampflock Dampflokbestand Dampflokeldorados Dampflokfahrten Dampflokführer Dampflokzuschlag Dampfluftbefeuchter Dorffest-Atmosphäre Dorffest-Ausschuss Dorffestmacher Dorffeuerwehr Dorffilialen Dorfidylle Dorfitter Dorfladen Dorflebens Dorflehrer Dorftore Dorftrottel Dorfturnier Fünflingen Fünftausend Fünftelregelung Golffahrerin Golffalte Golfferien Golflehrer Golflektion Golfliebhaber Golftag Golftouren Grifflänge Grifflöchern Hanffaser Hanffeld Hanffreund Hanfliteratur Hoffeste Hoffungen Hoffungsträger Hofi Hofladens Hofland Hofleben Hoflicht Hoflieferant Hoflnung Hofläden Hoftheater Huflederhaut Impffest Impffrist Impflösungen Impflücken Kampffertigkeit Kampfformen Kampfführung Kampfinstrument Kampflesben Kampflied Kampflinie Kampflose Kaufimpulse Kopffeld Kopffüßer-Kamasutra Kopflänge Kopfläuse Kopftemperatur Kopftransplantation Kopftreffer Kopftrommel Kopfträger Kopftuchdebatte Kopftuchverbots Laufteam Lauftest Offline-Betrachtung Offline-Betrieb Offline-Browser Offline-Funktionalitäten Offline-Geschäft Offline-Kompaktierung Offline-Programmierung Offline-Publikationen Offline-Test Offline-Version Offline-Vertriebskanal Offline-Wikipedia Offlineversion Offlinezeit Prüffehler Prüffrist Prüflaboratorien Prüflaboratorium Prüflabors Prüflager Prüflauf Prüfleiter Prüflingen Prüflinges Prüflingsanschluss Prüfliste Prüflizenzen Prüftruppe Ruftaste Ruftasten Rufton Rufton-Listen Ruftongenerator Rumpfflächen Rumpfform Schiffl Schifflände Schlaflaborpersonal Schlaflager Schlaflandschaft Schlaflieder Schlafliegen Schlaftabletten-Sucht Schlaftemperatur Schlaftheater Schlaftrakt Schlaftrunken Schlaftyp Schleiflack Stoffideen Stoffliche Stofflänge Straftatbestandes Straftatbilanz Straftatverdacht Straftäterin Straftäters Sumpflandschaft Surflehrerbody Tarifforderung Tariffragen Tariffähigkeit Tarifinformation Tarifinnovationen Tariflandschaft Tariflichen Tariflohns Tariflohnsteigerung Tarifthemen Tariftreue-Erklärung Tiefflieger Tiefflugaktivitäten Tiefflugangriffen Tiefflugschneisen Tiefland-Regenwälder Tieflandes Tieflandgebiete Tieflandgebieten Tieflandregenwälder Tieflochbohren Tieflohnbereich Tieftauchen Tieftauchweltrekord Tieftemperaturforschung Tiefton-Verstärkers Tieftonbereich Tieftöner Topflappen Torflaute Torftopf Wurftechnik auffahren auffahrenden auffallenden auffallenderweise auffallendes auffallendste auffassen auffinbar aufflammen aufflanschen auffliegen aufflog auffordert auffressen auffährt auffälligstes aufladbare aufladbaren auflandige auflassen auflauernden auflaufendem auflaufender auflebenden aufleuchtenden aufliegende aufliegenden auflockernde auflösbar auflösenden auflöst auflösungsgerichteten auftakeln auftauchende auftauchte auftischen auftragsbezogene auftragsbezogener auftragsgefertigten auftragsneutral auftragsrelevanten auftreffenden auftretender auftretende Lärmbelästigungen auftrumpfende auftrumpfender briefliche brieflichem brieflichen elftes fbr-Branchenführer fbr-Fördermitglieder fffffffrrrrrrrrrrttttttttt fh-potsdam.de fh-zwickau.de fhS fhren fkedvberatung flappenden ftp-Applikationen ftp-Server ftp.Uni-Augsburg.DE ftp.cityhost.de ftp.suse.com ftplib.pl-Bibliothek ftw.at fünftausend fünfteilige fünfteiligen fünftens fünftägiger fünftätigen kampffrei kampffreudige kampflustigen kopfförmig offline-Lesen prüffähige schieflaufen schlaflos schlaftrunkener senffarbenen straflos tariffähigen tariflich tariflichen tariflose tariftreue tariftreuen tieffrequenten
import re # Step 1 Read the file #input_file = 'deu_mixed-typical_2011_10K-words.txt' input_file = 'deu_mixed-typical_2011_1M-words.txt' with open(input_file, encoding='utf8') as f: lines = [re.sub('([0-9]+)\t|\t([0-9]+)\n', '', line) for line in f] # Step 2 Filter # either with list comprehension # filtered_lines = [el for el in lines if re.match(r'.*ff.*', el)] # or with a filter function # removeLigsPattern = r'(.*auffo.*|.*aufli.*)' # Don't suppress ligatures in these words noFalsePositives = re.compile(r"""( Lauffen| Stauffach| Stauffen| stauffen| Stauffer| stauffer| Stauffisch| stauffisch| chauffier| Chauffier| chauffeur| Chauffeur| chauffement| cheffekt| Scheffel| scheffel| cheffizi| cheffé| Hoffacker| Hoffart| Hoffärt| Hoffricht| Hoffranz| tieffekt| tieffiziffahrtffallee| ffallerg| ffallokat| iffalt| offalt| Diffami| diffami| riffans| toffansffarbeit| toffeier| ffeindealerBüffeld| büffeld| ffeldenk| Iffeld| Löffeld| löffeld| Müffeld| müffeld| nüffeld| Riffeld| taffeld| toffeld| Trüffeld| trüffeld| Waffeld| waffeldffelleck| ffellinde| Muffell| muffell| öffell| taffell| toffell| üffell| Buffett| Büffett| buffett| büffett| Buffetz| Büffetz| affirm| Affirm| Affoltern| Suffrage| suffrage| toffrak| ffraum| ffraub| ffrausch| ffraup| toffreak| chiffrei| toffrei| uffreis| luffrei| iffreig| toffries| affront| Affront| iffund| toffund| iffuss| rtstraffern| ssstraffern| Briefing| ebriefing| Chefin| chefin| chefibel| chefiebe| chefigur| chefilm| chefili| chefirm| chefisch| Hofier| Laufig| Blaufi| laufilter| laufiedr| rumpfig| schafigu| chlafitt| Tarifier| tarifier| figelehrt| Delfinfo| Delfinhalt| raffinhalt| Delfinkont| auflair| aufläche| aufliegl| auflüssig| baufl| Baufl| blaufl| Blaufl| fraufl| Fraufl| gauflöte| graufl| Graufl| onauflo| onauflu| Moskaufl| Schauflieg| SchaufloÃ| schauflöÃ| Schauflug| Schauflüg| schauflieg| schaufloÃ| schauflöÃ| schauflug| schauflüg| Taufliege| achefl| ichefl| schefl| chefläche| dorfliese| dorflüg| thanflamm| hoflosk| eimpflanz| eimpfleg| timpfleg| kopflaster| kopfleg| kopflaum| Durufl| mbarufl| ruflagge| rufleisch| nsumpfl| isumpfl| ssumpfl| surfleck| surflüg| surflüss| tiefläche| atieflaute| atieflut| Topflagg| Topflitz| Topflor| rtopfli| topfläch| topfleg| topflop| topflug| topflüg| Torflagge| Torflügel| Torflut| torfläche| torflasch| torflieg| torflimm| torflitz| torfloss| torflott| torfluch| torflug| torflüg| torflüss| torfluss| torfluÃ| tropflug| aflosk| rafloss| ampfläch| ampflanz| ampfleg| eufleiÃ| eufleiss| siflage| ouflage| flandern| flandrisch| huffleb| nflehn| rflehn| Hoflehn| Kaltefleiter| Hoefler| Knoepffler| fflerhyth| flicht| Bempfling| Haflinge| flöchte| flohnetz| ntflohn| lfloss| lflosk| gopflaum| iopflast| nopflaster| opflair| opflanz| pfloss| Breifl| breifl| Dreifl| dreifl| Freifl| freifl| eiereifl| reifläch| reiflagg| reiflamm| reiflasch| reiflies| reiflock| reifloh| reiflöhe| reiflott| tafleck| taflege| weifleck| chwerfl| werflitz| araffind| raffinte| stoffiz| stoffig| omicheft[ceg]| elfterfolg| fünfterfolg| Fünfterfolg| fünftrang| Fünftrang| fünftreich| Fünftreich| Fünftoper| Fünftrund| Fünftäon| fünftältest| Fünftältest| Senftenberg| straftheit| ftagent| ftanzahl| ftanzeig| ftanzieh| ftanzüg| ftaristokr| ftassel| fteamt| nfteich| ifteich| fteilfr| fterminder| ftermitt| ftestation| ftestatist| ftextrakt| fthemm| ftiefigur| haftier| Muftier| stiftisch| ünftisch| ftodem| ftopfer| afträume| äfträume| rifträume| ufträume| ftresorp| ftrett| ftreturn| ftritter| Luftritt| nftüb| pftheit| tdurftrö| Werftr| werftr| Werftu| werftu| Duftas| duftas| Gruftas| gruftas| Luftas| luftas| uftassoz| tdurfta| Kafka| kafka| Piefke| piefkei| Safka| Potrafke| Sprafke| Shirafkan| Tirafkan| Selfkant| Rifkin| fjord| fjör| Ãsafjarðarbær| fjell| fjall| fjäll| fjöll| Prokofjew| Sufjan| Eefje| Astafjew )""", re.X) # Patterns that indicate incorrect ligatures incorrectLigatures = re.compile(r"""( #.*auffo.*| #.*aufli.*| #.*auffi.* Auff[aeiloruyäöü]| auff[aeiloruyäöü]| Brieff| brieff| Cheff| cheff[aäeioöruü]| Dampff| dampff| Dorff[aäeiloöruü]| dorff[aäeiloöruü]| Hanff| hanff| Hoff[aäiloöruü]| Golff| golff| Hoffern| hoffern| Hoffest| Impff| Kampff[aäeoöruü]| kampff[aäeoöruü]| Kopff[aäeoöruü]| kopff[aäeoöruü]| Klopff| klopff| Prüff| prüff| Ruffach| ruffach| Rumpff| Schaffang| Schaffarm| Schaffels| Schilff| schilff| Senff| senffa| senffl| senfl[aä]| Sumpff| sumpff| Tariff| tariff| Tieff| tieff| chaffron| eiffest| ffabrik| ffacet| ffachl| ffachm| ffäch| ffaden| ffäd| ffähig| ffahn| ffahr| ffähr| ffaktor| ffakult| ffall| ffäll| ffalt| ffält| ffami| ffanat| ffans| ffanta| ffarb| ffärb| ffaschi| ffassad| ffäul| ffecht| ffeder| ffedr| ffehl| ffeier| ffeind[els]| ffeld| ffell| ffeile| ffenster| fferien| ffernseh| ffertig| ffestl| ffests| ffetisch| ffetus| ffett| ffetz| ffeud| ffeue| ffilet| ffindung| ffirm| ffolg| ffoli| ffolter| ffond| fforder| fförder| fforell| fform| fförm| fforsch| fforen| fforu| ffoto| fföt| ffracht| ffrag| ffrak| ffrank| ffräs| ffrau| ffreak| ffregat| ffrei| ffremd| ffreq| ffreu| ffrisch| ffried| ffries| ffrist| ffriseu| ffrisur| ffront| ffrosch| ffrösch| ffrucht| ffrücht| ffrüh| ffund| fführ| ffunk| ffühl| ffüll| ffürst| ffuÃ| ffuss| ffüÃ| ffüss| ffutter| ffütter| hoffan| hoffersch| hoffest| hoffete| lffach| offegen| pffach| pffern| pffest| pffels| pffont| pffüh| reiffern| rffan| rffeel| rffest| rffinn| rffleck| straffern| ünff| wurff[aäeiloöruü]| Aufi| aufinstr| aufirr| aufisst| Briefi| briefi| Chefi| chefi| Chefin[a-mo-z]| chefind| Dorfi| dorfi| Hofi| Kampfi| kampfi| Kaufi| kaufi| Laufi| laufi| rüfi| Rumpfi| rumpfi| chafi| chlafi| Strafi| strafi| Tarifi| tarifi| Tiefinn| tiefinn| fidee| fideol| fidentif| fidentit| fidol| fidyll| figel| fikone| fillus| fimman| fimmob| fimmun| fimp| findex| findikat| findiv| findiz| findust| finfekt| finfiz| finfo| finfra| finfus| fingenieur| finhab| finhalat| finhalt| finitia| finjekt| finkont| finnenaus| finnenohr| finnenfl| finnenl| finnenraum| finnenräum| finnens| finner| finnig| finnov| finsass| finsekt| finsel| finserat| finsign| finspek| finsta| finstinkt| finstitu| finstrukt[io]| finstrum| finsuff| finszen| fintars| fintell| fintegr| fintens| finter| finton| fintrig| finvent| finvest| firis| fironi| firre| firru| fisolat| fisolie| fisoth| uffax| Aufl[aeiouyäöü]| aufl| bauflösen| blaufloch| blauflog| Briefl| briefl| Chefl| chefl| Dampfl| dampfl| Dorfl| dorfl| Fünfl| fünfl| Golfl| golfl| Hanfl| hanfl| Hofl| hofl| Huflatt| huflatt| Hufled| hufled| Impfl| impfla| impfle| impflücke| Kampfl| kampfl| Kopfl[äeioöuüy]| kopfl[äeioöuüy]| Köpfl[aäioöuüy]| köpfl[aäioöuüy]| Pfeifl| pfeifl| Pfiffl| pfiffl| Prüfl| prüfl| Reliefl| reliefl| Rufl| rufl| Schafl| schafl| Schiefl| schiefl| Schilfl| schilfl| Schlafl| schlafl| Schleifl| schleifl| Schrumpfl| schrumpfl| Schweifl| schweifl| Senfl| Steifl| steifl| Strafl| strafl| Strumpfl| strumpfl| Sumpfl| sumpfl| Surfl| surfl| Tarifl| tarifl| Tiefl| tiefl| Topfl| topfl| rtopfleg| Torfl| torfl| Tropfl| tropfl| Wurfl| wurfl| Würfl| würfl| alflede| aflied| aflos| aflück| ampfl[aäou]| arflad| äufle| eufle| flaberer| flabor| flage| flagun| flähm| flaminat| flamp| fland| fländ| fläng| flapp| flärm| fflatter| flauf| fläuf| flaun| fleb| alfleder| flehn| flehr| fleiden| flein| fleist| fleit| flektür| fler| fleut| flich| öpflicht| flieb| flief| flift| flig| flila| flinde| fling| flini| flinse| flisch| flist| fliter| flizenz| flobby| flöch| flöff| flohn| flöhn| flok| flord| flösch| flösu| fluft| flung| flust| Gipfle| gipfle| chopfl| lflady| lflast| lflos| nflehm| oflad| ofläd| oflück| opfla| öpfle| orflad| pflaut| pfleier| pflehm| pfleis| pfleu| pflid| pflied| pfloch| pflos| pflös| pflup| pflux| rfläd| rflück| rfluke| reifl| Reifl| Tafle| tafle| urflad| ürfla| urfloch| ürfloch| wafle| wefle| weifle| werfl| affind| ffibel| ffieb| ffigu| ffilm| ffilter| ffinal| ffinte| ffinanz| ffistel| ffixier| iffind| lffing| lffisch| nffing| pffi| reiffing| Stoffi| stoffi| ffinnen| cheffl[aiou]| Griffl| griffl| Offline| offline| Pfiffl| Scheffle| scheffle| Schiffl| schiffl| Stoffl| stoffl| afflu| fflamell| fflast| fflatsch| ffloch| fflos| ifflo| offlad| öffle| offlo| pufflack| taffle| ufflad| uffläd| luffleck| äfle| üffle| Auffl| auffl| eiffleck| ffläch| fflech| ffleisch| fflexib| fflies| fflimm| ffluch| fflüch| fflug| fflüg| fflur| ffluss| fflüs| fflut| iefflieg| iefflog| lfflach| mpffl| opffl| upffl| rfflad| rfflasch| wurfl| ft| Auft[aähioöruüy]| auft[aähioöruüy]| Brieft| brieft| Cheft| cheft[a-z]| Dorft| dorft| Elfte| elfte| Fünft[aäeoöruy]| fünft[aäeoöruy]| Golft| golft[hiruüy]| Greift[eio]| Hanftau| Hoft[aäehioäruüy]| hoft[aähioöruü]| Huftra| Kopft[aäehioäruüy]| Laufte| Prüft[aähioäruüy]| prüft[aähioöruü]| Ruft[aäehioäruüy]| Schaftal| Schaftor| Schaftreib| schaftal| schaftor| schaftreib| Schlaft| schlaft[aähioäruüy]| Schilft[äehiruüy]| schilft[hiruüy]| Senft[aäehioäruy]| Straft[aähioöruüy]| straft[aähioöruüy]| Sufft| Surft[ähiöüy]| Tarift| tarift| Tieft| Torft| torft| Wurft| wurft| fft[aähioöruüy]| Abstreiftest| Ankauftest| Hörprüftest| Hüpftest| Impftest| Kauftest| Klopftest| Kneiftest| Lichtschweiftest| Rückruftest| Schnupftest| Sumpftest| Tropftest| Wettkampftest| tofftest| aftee| auftee| lauftest| eiftie| eiftit| eiftr| elieft| enftei| ftabell| ftablett| ftafel| ftag| ftäg| ftalsg| ftanz| ftänz| ftari| ftarn| ftasse| ftatb| ftaten| ftätig| ftauch| ftaugl| ftaume| ftax| fteam| ftechn| ftedd| fteich| fteigw| fteil| ftelef| fteleph| ftelegr| fteller| ftempel| ftemper| ftempo| ftendenz| ftentak| fteppi| ftermin| ftermit| fterrain| fterrass| fterrin| fterror| ftestat| fteuf| ftext| ftheat| fthem| ftheor| ftherap| ftick| ftief| ftier| ftipp| ftirad| ftisch| ftod| fton| ftön| ftool| ftopf| ftöpf| ftorig| ftour| ftrader| ftradition| fträg| ftrain| ftränk| ftransp| fträume| ftrauri| ftreff| ftresor| ftret| ftrick| ftrieb| ftrief| ftrift| ftrimest| ftritt| ftrott| ftrüb| ftrunk| ftrupp| ftuch| ftüch| ftürk| fturm| ftürm| ftyp| ftyr| ftwist| graftum| graftüm| hoftest| iefta| iefto| ieftö| ieftra| lfta| lfto| lftö| lftum| nftü| nftübchen| ölfte| pft[aähioöruüy]| pftee| pfteig| pftender| rftr| werftrage| rftu| uftas| urfta| urfto| ünftor| fb| fh| fk| fj| fff )""", re.X) def findWrongLigatures(el): return False if re.match(noFalsePositives, el) else re.match(incorrectLigatures, el) filtered_lines = list(filter(findWrongLigatures, lines)) # print(filtered_lines) # Step 3 Write list of words to a file with open('ligature-prevention-wordlist.txt', 'w') as file: file.writelines("%s\n" % line for line in filtered_lines)
___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki! maillist : ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl / http://context.aanhet.net archive : https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net ___________________________________________________________________________________