summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2013-06-27 16:32:47 +0000
committerKarl Berry <karl@freefriends.org>2013-06-27 16:32:47 +0000
commit5d0a78fa69eddaec28febee79e47b450d57ada3f (patch)
tree22a451886d6dc95a71429a132b13e2357ec8266a /Master/texmf-dist/tex
parent6b1d2a3aee8e3f5b29fe828e0b963d43cf3a6298 (diff)
selnolig (16jun13)
git-svn-id: svn://tug.org/texlive/trunk@30982 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
-rw-r--r--Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-hyphex.sty2
-rw-r--r--Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-patterns.sty147
-rw-r--r--Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-hyphex.sty2
-rw-r--r--Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-patterns.sty918
-rw-r--r--Master/texmf-dist/tex/lualatex/selnolig/selnolig.lua41
-rw-r--r--Master/texmf-dist/tex/lualatex/selnolig/selnolig.sty49
6 files changed, 585 insertions, 574 deletions
diff --git a/Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-hyphex.sty b/Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-hyphex.sty
index a9fa077d00f..538c0a6d70b 100644
--- a/Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-hyphex.sty
+++ b/Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-hyphex.sty
@@ -2,7 +2,7 @@
% !TEX TS-program = lualatex
\ProvidesPackage{selnolig-english-hyphex}%
-[2013/05/28]
+[2013/06/12]
% This entire package is placed under the
% terms of the LaTeX Project Public License,
diff --git a/Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-patterns.sty b/Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-patterns.sty
index 3aebeb8270f..04a1be2b37c 100644
--- a/Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-patterns.sty
+++ b/Master/texmf-dist/tex/lualatex/selnolig/selnolig-english-patterns.sty
@@ -2,7 +2,7 @@
% !TEX TS-program = lualatex
\ProvidesPackage{selnolig-english-patterns}%
-[2013/05/28]
+[2013/06/12]
% This entire package is placed under the
% terms of the LaTeX Project Public License,
@@ -98,27 +98,30 @@
% (h) ft -> f-t
-\nolig{ieftain}{ief|tain}
-\nolig{alftime}{alf|time}
-\nolig{alftone}{alf|tone}
-\nolig{ooftop}{oof|top}
-\nolig{ooftree}{oof|tree}
- % chieftain halftime halftone
- % rooftop rooftree
-
-\nolig{ifth}{if|th}
- % fifth(s)
-\nolig{elfth}{elf|th}
- % twelfth(s)
-
-\nolig{lftr}{lf|tr}
- % wolftrap calftrap
-
-\nolig{eaftr}{eaf|tr}
- % leaftrap
-
-\nolig{fftr}{ff|tr}
- % offtrack
+\if@noftligs
+\else % suppress these ligatures selectively...
+ \nolig{ieftain}{ief|tain}
+ \nolig{alftime}{alf|time}
+ \nolig{alftone}{alf|tone}
+ \nolig{ooftop}{oof|top}
+ \nolig{ooftree}{oof|tree}
+ % chieftain halftime halftone
+ % rooftop rooftree
+
+ \nolig{ifth}{if|th}
+ % fifth(s)
+ \nolig{elfth}{elf|th}
+ % twelfth(s)
+
+ \nolig{lftr}{lf|tr}
+ % wolftrap calftrap
+
+ \nolig{eaftr}{eaf|tr}
+ % leaftrap
+
+ \nolig{fftr}{ff|tr}
+ % offtrack
+\fi % end of \if@noftligs conditional block
% (i) fb, fh, fj, and fk ligatures
@@ -130,28 +133,29 @@
\nolig{fk}{f|k}
% But, make exceptions for fjord, fjell, etc
- \keeplig{fjord} % Norwegian spelling
- \keeplig{fjör} % Icelandic spelling, e.g., in
- % Isafjördur and Ísafjörður
- \keeplig{fjarð} % Ísafjarðarbær (in Iceland)
- \keeplig{fjell} % Norwegian
- \keeplig{fjall} % Swedish (?)
- \keeplig{fjäll}
- \keeplig{fjöll}
-
- \keeplig{Prokofjew}
- \keeplig{Sufjan} % Stevens
- \keeplig{Eefje} % Dutch first name
- \keeplig{Astafjew}
- % Author (Wiktor) and soccer player (Maksim)
-
-% Further exceptions for Kafka, Safka, etc.
- \keeplig{Kafka}
- \keeplig{Safka}
- \keeplig{Potrafke}
- \keeplig{Sprafke}
- \keeplig{Shirafkan}
- \keeplig{Tirafkan}
+ \keeplig{fjord} % Norwegian spelling
+ \keeplig{fjör} % Icelandic spelling, e.g., in
+ % Isafjördur and Ísafjörður
+ \keeplig{fjarð} % Ísafjarðarbær (in Iceland)
+ \keeplig{fjell} % Norwegian
+ \keeplig{fjall} % Swedish (?)
+ \keeplig{fjäll}
+ \keeplig{fjöll}
+
+ \keeplig{Prokofjew}
+ \keeplig{Sufjan} % Stevens
+ \keeplig{Eefje} % Dutch first name
+ \keeplig{Astafjew}
+ % Author (Wiktor) and soccer player (Maksim)
+
+% Further exceptions for names that contain 'fk'
+ \keeplig{Kafka}
+ \keeplig{Safka}
+ \keeplig{Potrafke}
+ \keeplig{Sprafke}
+ \keeplig{Shirafkan}
+ \keeplig{Tirafkan}
+ \keeplig{Rifkin}
@@ -326,18 +330,21 @@
% (h) ft -> f-t
-\nolig{ifteen}{if|teen}
- % fifteen fifteens fifteenth
-
-\nolig{fifti}{fif|ti}
-\nolig{Fifti}{Fif|ti}
- % fifties fiftieth fiftieths
+\if@noftligs
+\else % suppress some more ft ligatures selectively
+ \nolig{ifteen}{if|teen}
+ % fifteen fifteens fifteenth
+
+ \nolig{fifti}{fif|ti}
+ \nolig{Fifti}{Fif|ti}
+ % fifties fiftieth fiftieths
+
+ \nolig{fifty}{fif|ty}
+ \nolig{Fifty}{Fif|ty}
+ % fifty fiftyish
+\fi % end of \if@noftligs conditional block
-\nolig{fifty}{fif|ty}
-\nolig{Fifty}{Fif|ty}
- % fifty fiftyish
-
-\fi % end of \if@broadfset block
+\fi % end of \if@broadfset conditional block
@@ -1038,25 +1045,19 @@
% ............................
%% If you have 'at' and 'et' ligatures as
-%% well as the 'th' ligature (as is the
-%% case for the font "Garamond Premier Pro",
-%% and any other fonts?!) and want a
+%% well as the 'th' ligature and want a
%% trailing 'th' ligature to take precedence
-%% over any preceding 'at' or 'et' ligas,
-%% make sure the following macros are
-%% active (i.e., not commented out).
+%% over these ligs, use the following rules:
\nolig{ath}{a|th}
\nolig{eth}{e|th}
-
-% The preceding instructions are a bit too
-% broad, as they also suppress the 'at' ligature
-% for words such as boathook, flathead,
-% etc., and the 'et' ligature in words such as
+% The preceding rules are a bit too
+% broad as they also suppress the 'at' ligature
+% for words such as boathook and flathead
+% and the 'et' ligature in words such as
% Beethoven, prophethood, and sweetheart.
-% To address these cases, we provide \keeplig
-% macros:
+% Thus, also provide some \keeplig macros:
\keeplig{oathook} % boathook
\keeplig{eathook} % meathook
@@ -1065,8 +1066,8 @@
%%\keeplig{Rathole} % if "at" liga doesn't exist...
\keeplig{athead} % cathead fathead flathead meathead
\keeplig{atherd} % goatherd neatherd
-\keeplig{eatheart} % greathearted sweetheart
-\keeplig{eetheart}
+\keeplig{eatheart} % greathearted
+\keeplig{eetheart} % sweetheart
\keeplig{Beethoven}
\keeplig{ophethood}
@@ -1081,12 +1082,6 @@
\keeplig{ratap} % rataplan
\keeplig{Ratap}
-
\nolig{Loretan}{Lore|tan} % :-)
-% All other cases seem to involve 'at'
-% or 'et' crossing a ligature boundary.
-% As such, these cases should be dealt
-% with in Part 3 of this file.
-
\fi %% end of \@ifhdligset
diff --git a/Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-hyphex.sty b/Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-hyphex.sty
index 57f2f451a71..e2bfc6d6b5a 100644
--- a/Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-hyphex.sty
+++ b/Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-hyphex.sty
@@ -3,7 +3,7 @@
\RequirePackage{ifluatex}
\ProvidesPackage{selnolig-german-hyphex}%
-[2013/05/28]
+[2013/06/12]
% This entire package is placed under the
% terms of the LaTeX Project Public License,
diff --git a/Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-patterns.sty b/Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-patterns.sty
index c5076f2fa2d..9f29adf1fe5 100644
--- a/Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-patterns.sty
+++ b/Master/texmf-dist/tex/lualatex/selnolig/selnolig-german-patterns.sty
@@ -2,7 +2,7 @@
% !TEX TS-program = lualatex
\ProvidesPackage{selnolig-german-patterns}%
-[2013/05/28]
+[2013/06/12]
% This entire package is placed under the
% terms of the LaTeX Project Public License,
@@ -1020,7 +1020,8 @@
\nolig{flektür}{f|lektür}
% Schenkelklopflektüre
\nolig{fler}{f|ler}
- % Freiberufler Löffler Büffler Schnüffler
+ % Freiberufler Löffler Büffler Schnüffler Höfler
+ \keeplig{Hoefler} % name of a famous font designer
\nolig{fleut}{f|leut}
% Hofleute
@@ -1047,6 +1048,7 @@
% krampflindernd
\nolig{fling}{f|ling}
% Prüfling Fünfling Sträfling Täufling
+ \keeplig{Bempfling} % Bempflingen
\nolig{flini}{f|lini}
% Wurflinie Straflinie Rumpflinie
\nolig{flinse}{f|linse}
@@ -1422,468 +1424,458 @@
% 8. ft -> f-t
% ------------
-\nolig{Auft[aähioöruüy]}{Auf|t}
-\nolig{auft[aähioöruüy]}{auf|t}
- % (viele viele Fälle; aber: ft-Ligatur wird
- % doch verwendet für "Auft.")
-
-\nolig{Brieft}{Brief|t}
-\nolig{brieft}{brief|t}
- % Brieftasche Brieftaube
-\nolig{Cheft}{Chef|t}
-\nolig{cheft[a-z]}{chef|t}
- % Cheftheoretiker Cheftrainer
- \keeplig{omicheft[ceg]}
-\nolig{Dorft}{Dorf|t}
-\nolig{dorft}{dorf|t}
- % Dorftrottel -tratsch -tümpel
-\nolig{Elfte}{Elf|te}
-\nolig{elfte}{elf|te}
- % elfte elftens
- \keeplig{elfterfolg} % elfterfolgreichste
-
-\nolig{Fünft[aäehlroöuy]}{Fünf|t}% Fünftagewoche ...
-\nolig{fünft[aehlroöuy]}{fünf|t} % fünftens...
- \keeplig{fünfterfolg} % fünfterfolgreichste
- \keeplig{Fünfterfolg}
- \keeplig{fünfthässl} % fünfthässlichste
- \keeplig{Fünfthässl}
- \keeplig{fünfthellst} % fünfthellste
- \keeplig{Fünfthellst}
- \keeplig{fünfthöchst} % fünfthöchste
- \keeplig{Fünfthöchst}
- \keeplig{fünftlängst} % fünftlängste
- \keeplig{Fünftlängst}
- \keeplig{fünftleichtest} % fünftleichteste
- \keeplig{Fünftleichtest}
- \keeplig{fünftletzt} % fünftletzte
- \keeplig{Fünftletzt}
- \keeplig{fünftrang} % fünftrangig
- \keeplig{Fünftrang}
- \keeplig{fünftreichst}% fünftreichste
- \keeplig{Fünftreichst}
- \keeplig{Fünftlig} % Fünftligaspiel
- \keeplig{Fünftoper} % Fünftoperation
- \keeplig{Fünftrund} % Fünftrunden
- \keeplig{Fünftäon}
-
-\nolig{Golft}{Golf|t}
-\nolig{golft[hiruüy]}{golf|t}
- % Golfträume -turnier -typ -talent
-
-\nolig{Greift[eio]}{Greif|t}
- % Greiftest -tentakeln -tier -tor
-\nolig{Hanft}{Hanf|t}
- % Hanftaler Hanftau
-\nolig{Hoft[aäehioäruüy]}{Hof|t}
-\nolig{hoft[aähioöruü]}{hof|t}
- % Hoftor Klosterhoftor
-
-\nolig{Laufte}{Lauf|te}
- % Lauftermin Lauftest Lauftext
-\nolig{Prüft[aähioäruüy]}{Prüf|t}
-\nolig{prüft[aähioöruü]}{prüf|t}
- % Prüftheorie
-\nolig{Ruft[aäehioäruüy]}{Ruf|t}
- % Ruftaxi Rufterz Rufton Ruftöne
-
-\nolig{Schaftal}{Schaf|tal}
-\nolig{Schaftor}{Schaf|tor}
-\nolig{Schaftreib}{Schaf|treib}
-
-\nolig{Schlaft}{Schlaf|t}
-\nolig{schlaft[aähioäruüy]}{schlaf|t}
- % Schlaftablette
-\nolig{Schilft[äehiruüy]}{Schilf|t}
-\nolig{schilft[hiruüy]}{schilf|t}
- % Schilfteich Schlilftümpel
-\nolig{Senft[aäehioäruy]}{Senf|t}
- % Senftube
- \keeplig{Senftenberg}
-\nolig{Straft[aähioöruüy]}{Straf|t}
-\nolig{straft[aähioöruüy]}{straf|t}
- % (viele Fälle)
- \keeplig{straftheit} % Unbestraftheit
-\nolig{Sufft}{Suff|t}
- % Sufftest Sufftext
-\nolig{Surft[ähiöüy]}{Surf|t}
- % Surfthema Surftipp
-\nolig{Tarift}{Tarif|t}
-\nolig{tarift}{tarif|t}
- % Tarifthemen Tariftabelle
-\nolig{Tieft}{Tief|t}
- % Tieftänzer -träumen -tresor -tunnel
-\nolig{Torft}{Torf|t}
-\nolig{torft}{torf|t}
- % Torftabletten Torftaucher Torftoilette
-\nolig{Wurft}{Wurf|t}
-\nolig{wurft}{wurf|t}
- % Wurftalent Wurftaler
-
-\nolig{fft[aähioöruüy]}{ff|t}
- % Stofftasche Sauerstofftank Stofftheorie
- % Stofftier Stofftiger Stofftischtuch
- % Auspufftopf Kunststofftonne
- % Stofftradition Stofftrennung
- % Kunststofftube Stoffturnschuhe
- % Stofftäschchen Auspufftöpfe
- % Kunststofftöpfe Kunststofftüten
-
-%% Words that start with a capital letter
-%% and end in f-test
-\nolig{Abstreiftest}{Abstreif|test}
-\nolig{Ankauftest}{Ankauf|test}
-\nolig{Hörprüftest}{Hörprüf|test}
-\nolig{Hüpftest}{Hüpf|test}
-\nolig{Impftest}{Impf|test}
-\nolig{Kauftest}{Kauf|test}
-\nolig{Klopftest}{Klopf|test}
-\nolig{Kneiftest}{Kneif|test}
-\nolig{Lichtschweiftest}{Lichtschweif|test}
-\nolig{Rückruftest}{Rückruf|test}
-\nolig{Schnupftest}{Schnupf|test}
-\nolig{Sumpftest}{Sumpf|test}
-\nolig{Tropftest}{Tropf|test}
-\nolig{Wettkampftest}{Wettkampf|test}
-\nolig{tofftest}{toff|test}
- % Impfstofftest Treibstofftests
-
-
-
-\nolig{aftee}{af|tee}
- % Schlaftee
-\nolig{auftee}{auf|tee}
- % Kreislauftee
-\nolig{lauftest}{lauf|test}
- % Kreislauftest
-
-\nolig{eiftie}{eif|tie}
- % Greiftiefe Steiftier
-\nolig{eiftit}{eif|tit}
- % Eingreiftitel
-\nolig{eiftr}{eif|tr}
- % Eingreiftruppe Nadelstreifträger
- % Greiftrupp -tier -training
-\nolig{elieft}{elief|t}
- % Relieftäfelchen -tropfen -türme
-\nolig{enftei}{enf|tei}
- % Senfteig
-
-\nolig{ftabell}{f|tabell}
- % Ruftabelle
-\nolig{ftablett}{f|tablett}
- % Schlaftabletten
-\nolig{ftafel}{f|tafel}
- % Pfeiftafel
-\nolig{ftag}{f|tag}
- % Tauftag Fünftagewoche
- \keeplig{ftagent} % Luftagentur
-\nolig{ftäg}{f|täg}
- % fünftägig elfftägig zwölftägig
-\nolig{ftalsg}{f|talsg}
- % schaftalsgrundig
-\nolig{ftanz}{f|tanz}
- % Kampftanz Schilftanz
- \keeplig{ftanzahl} % Heftanzahl
- \keeplig{ftanzeig} % Luftanzeige
- \keeplig{ftanzieh} % Schwerkraftanziehung
- \keeplig{ftanzüg} % Haftanzüge
-\nolig{ftänz}{f|tänz}
- % Tieftänzer
-\nolig{ftari}{f|tari}
- % Anruftarif
- \keeplig{ftaristokr} % Zunftaristokratie
-\nolig{ftarn}{f|tarn}
- % Wegwerftarnungen
-\nolig{ftasse}{f|tasse}
- % Schürftasse
- \keeplig{ftassel} % Gruftasseln
-\nolig{ftatb}{f|tatb}
- % Straftatbestände
-\nolig{ftaten}{f|taten}
- % Kampftaten Straftaten
-\nolig{ftätig}{f|tätig}
- % Schürftätigkeit
-\nolig{ftauch}{f|tauch}
- % Beruftaucher Kreislauftauchgerät
-\nolig{ftaugl}{f|taugl}
- % prüftauglich
-\nolig{ftaume}{f|taume}
- % Nachruftaumel
-\nolig{ftax}{f|tax}
- % Ruftaxi
-
-\nolig{fteam}{f|team}
- % Jugendtreffteam Impfteam
- \keeplig{fteamt} % Streitkräfteamt
-\nolig{ftechn}{f|techn}
- % Stampftechnik schlaftechnisch
- % Kraftstofftechnologie Pfeiftechnik
-\nolig{ftedd}{f|tedd}
- % Schlafteddy
-\nolig{fteich}{f|teich}
- % Schilfteich Dorfteich
- \keeplig{nfteich} % Zunfteiche
- \keeplig{ifteich} % Schrifteiche
-\nolig{fteigw}{f|teigw}
- % Dampfteigwaren
-\nolig{fteil}{f|teil}
- % fünfteilig Friedhofteil
- % Raumschiffteil Riffteil Stoffteil
-\nolig{ftelef}{f|telef}
-\nolig{fteleph}{f|teleph} % old spelling...
- % Wegwerftelefon Notruftelefonnummern
-\nolig{fteller}{f|teller}
- % Schiefteller
-\nolig{ftempel}{f|tempel}
- % Kauftempel
-\nolig{ftemper}{f|temper}
- % Schlaftemperatur
-\nolig{ftempo}{f|tempo}
- % Dauerlauftempo
-\nolig{ftendenz}{f|tendenz}
- % Klassenkampftendenz
-\nolig{ftentak}{f|tentak}
- % Greiftentakeln
-\nolig{fteppi}{f|teppi}
- % Schaumstoffteppich Knüpfteppich
-\nolig{ftermin}{f|termin}
- % Anpfifftermin Passagierschiffterminal
- \keeplig{fterminder}
- % Gesellschafterminderheiten
-\nolig{ftermit}{f|termit}
- % Kampftermiten
- \keeplig{ftermitt} % Rauschgiftermittler
-\nolig{fterrain}{f|terrain}
- % Kampfterrain
-\nolig{fterrass}{f|terrass}
- % Tuffterrassen
-\nolig{fterrin}{f|terrin}
- % Kohlkopfterrine
-\nolig{fterror}{f|terror}
- % Schadstoffterror
-\nolig{ftestat}{f|testat}
- % Prüftestate
- \keeplig{ftestation}
- % Streitkräftestationierung
- \keeplig{ftestatist}
- % Lehrkräftestatistik
-\nolig{fteuf}{f|teuf}
- % Dorfteufel Saufteufel
-\nolig{ftext}{f|text}
- % Betrefftext Stofftextur Stegreiftexte
- \keeplig{ftextrakt} % Duftextrakt
-
-\nolig{ftheat}{f|theat}
- % Stegreiftheater
-\nolig{fthem}{f|them}
- % Wolfthema
- \keeplig{fthemm} % Wirtschafthemmnis
-\nolig{ftheor}{f|theor}
- % -f-theorie -f-theorien
-\nolig{ftherap}{f|therap}
- % Impftherapie Wurftherapie
- % Schröpftherapeut
-\nolig{ftick}{f|tick}
- % Rückruftickets Diskuswurfticket
-\nolig{ftief}{f|tief}
- % tieftief (?)
- \keeplig{ftiefigur} % Softiefigur
-\nolig{ftier}{f|tier}
- % Wegwerftier Huftier
- \keeplig{haftier} % inhaftieren
- \keeplig{Muftier} % Muftierben
-\nolig{ftipp}{f|tipp}
- % Surftipp
-\nolig{ftirad}{f|tirad}
- % Schimpftirade
-\nolig{ftisch}{f|tisch}
- % Schleiftisch
- \keeplig{stiftisch} % hochstiftisch
- \keeplig{ünftisch} % zünftisch
-
-\nolig{ftod}{f|tod}
- % Hanftod
- \keeplig{ftodem} % Giftodem
-\nolig{fton}{f|ton}
- % Pfeifton Zwölftonmusik Rufton
-\nolig{ftön}{f|tön}
- % Pfeiftöne Ruftöne
-\nolig{ftool}{f|tool}
- % Prüftool
-\nolig{ftopf}{f|topf}
- % Schleiftopf Dampf- Auspuff- Schöpf-
- \keeplig{ftopfer}
- % Duftopfer Gift- Haft-
-\nolig{ftöpf}{f|töpf}
- % Senftöpfchen Torftöpfchen
- % Kunststofftöpfe
-\nolig{ftorig}{f|torig}
- % schaftorig fünftorig
-\nolig{ftour}{f|tour}
- % Streiftour
-
-\nolig{ftrader}{f|trader}
- % Cheftrader
-\nolig{ftradition}{f|tradition}
- % Ruftraditionen
-\nolig{fträg}{f|träg}
- % Notrufträger
-\nolig{ftrain}{f|train}
- % Lauftrainer
-\nolig{ftränk}{f|tränk}
- % Rückruftränke Schaftränke
-\nolig{ftransp}{f|transp}
- % Hilftransport Schaftransport
-\nolig{fträume}{f|träume}
- % tiefträumend Tiefschlafträume
- \keeplig{afträume} % Einzelhafträumen
- \keeplig{äfträume} % Geschäfträumen
- \keeplig{rifträume}% Schrifträume
- \keeplig{ufträume} % Lufträumen
-\nolig{ftrauri}{f|traurig}
- % tieftraurig
-\nolig{ftreff}{f|treff}
- % Notruftreffen
-\nolig{ftresor}{f|tresor}
- % Tieftresor
- \keeplig{ftresorp} % Luftresorption
-\nolig{ftret}{f|tret}
- % Mieftreter
- \keeplig{ftrett} % Luftrettungsdienst
- \keeplig{ftreturn}% Softreturn
-\nolig{ftrick}{f|trick}
- % Rückruftricks
-\nolig{ftrieb}{f|trieb}
- % auftriebte schaftriebig
-\nolig{ftrief}{f|trief}
- % tieftriefend
-\nolig{ftrift}{f|trift}
- % schaftriftig Schaftrift
-\nolig{ftrimest}{f|trimest}
- % fünftrimestrig zwölftrimestrig
-\nolig{ftritt}{f|tritt}
- % Huftritte
- \keeplig{ftritter} % Kernkraftritter
- \keeplig{Luftritt}
-\nolig{ftrott}{f|trott}
- % Sauftrottel
-
-\nolig{ftrüb}{f|trüb}
- % tieftrübe
-\nolig{ftrunk}{f|trunk}
- % schlaftrunken
-\nolig{ftrupp}{f|trupp}
- % Prüftruppe
-
-\nolig{ftuch}{f|tuch}
- % Schnieftuch Kopftuch
-\nolig{ftüch}{f|tüch}
- % Schnieftücher
-\nolig{ftürk}{f|türk}
- % tieftürkis
-\nolig{fturm}{f|turm}
- % Wolfturm
-\nolig{ftürm}{f|türm}
- % Wolftürme
-
-\nolig{ftyp}{f|typ}
- % Schifftyp Stofftyp waldorftypisch
-\nolig{ftyr}{f|tyr}
- % Dorftyrann Hoftyrann
-\nolig{ftwist}{f|twist}
- % Kopftwister
-
-\nolig{graftum}{graf|tum}
- % Burggraftum Markgraftum
-\nolig{graftüm}{graf|tüm}
- % Markgraftümer
-
-\nolig{hoftest}{hof|test}
- % Schlachthoftest
-
-\nolig{iefta}{ief|ta}
- % Tieftaucher Brieftasche Brieftaube
-\nolig{iefto}{ief|to}
- % Stieftochter Tiefton
-\nolig{ieftö}{ief|tö}
- % Stieftöchter tieftönend
-\nolig{ieftra}{ief|tra}
- % Tieftraumphase
-
-\nolig{lfta}{lf|ta}
- % elftausend zwölftausend Golftasche
-\nolig{lfto}{lf|to}
- % Zwölftonmusik Elftonner Golftour
-\nolig{lftö}{lf|tö}
- % zwölftönend
-\nolig{lftum}{lf|tum}
- % Werwolftum
-
-\nolig{nftü}{nf|tü}
- % fünftürig Senftüte
- \keeplig{nftüb}
- % Vernunftüberlegung zunftüblich
- \nolig{nftübchen}{nf|tübchen}
- % Senftübchen
-
-\nolig{ölfte}{ölf|te}
- % zwölfte zwölftens
-
-\nolig{pft[aähioöruüy]}{pf|t}
- % Wettkampftag -trubel -tauglich -töne
- % Kampftaktik -truppe -tätigkeit -tänzer
- % Schnupftabak -tuch -tücher -tüchlein
- % Schimpftiraden Mehrkampftitel
- % Stapftiefe Zopfträger
- % Dampftopf Sumpftour Herzklopftöne
- % Kopftreffer -tuch -tücher
- % Impftabelle -tarif -tierarzt -tod
- \keeplig{pftheit}
- % Gedämpftheit Umkämpftheit
-\nolig{pftee}{pf|tee}
- % Schlumpftee (?!)
-\nolig{pfteig}{pf|teig}
- % Sumpfteig Hefetropfteig
-\nolig{pftender}{pf|tender}
- % Heißdampftenderlok
-
-%\nolig{rftrag}{rf|trag}
- % Wegwerftragtasche Dorftragödie
-
-\nolig{rftr}{rf|tr}
- % Wurftraining Surftrip Freiwurftreffer
- \keeplig{tdurftrö} % Notdurftröhre
- \keeplig{Werftr} % Werftreparatur
- \keeplig{werftr}
- \nolig{werftrage}{werf|trage}
- % Wegwerftragetasche
-\nolig{rftu}{rf|tu}
- % Wurftuch
- \keeplig{Werftu}
- \keeplig{werftu}
- % Werftumfeld Werftunternehmen
-
-\nolig{uftas}{uf|tas}
- % Ruftaste Vorlauftaste Kauftasche
- \keeplig{Duftas} % Duftaspekte
- \keeplig{duftas}
- \keeplig{Gruftas} % Gruftassel
- \keeplig{gruftas}
- \keeplig{Luftas} % Luftasket
- \keeplig{luftas}
- \keeplig{uftassoz}
- % Duftassoziationen Schuftassoziationen
-
-\nolig{urfta}{urf|ta}
- % Wurftalent Auswurftaste Surftalent
- \keeplig{tdurfta} % Notdurftanlage
-\nolig{urfto}{urf|to}
- % Freiwurftor Surftour
-
-\nolig{ünftor}{ünf|tor}
- % fünftorig Fünftore-Vorsprung
+\if@noftligs
+\else % suppress them selectively...
+ \nolig{Auft[aähioöruüy]}{Auf|t}
+ \nolig{auft[aähioöruüy]}{auf|t}
+ % (viele viele Fälle; aber: ft-Ligatur wird
+ % doch verwendet für "Auft.")
+
+ \nolig{Brieft}{Brief|t}
+ \nolig{brieft}{brief|t}
+ % Brieftasche Brieftaube
+ \nolig{Cheft}{Chef|t}
+ \nolig{cheft[a-z]}{chef|t}
+ % Cheftheoretiker Cheftrainer
+ \keeplig{omicheft[ceg]}
+ \nolig{Dorft}{Dorf|t}
+ \nolig{dorft}{dorf|t}
+ % Dorftrottel -tratsch -tümpel
+ \nolig{Elfte}{Elf|te}
+ \nolig{elfte}{elf|te}
+ % elfte elftens
+ \keeplig{elfterfolg} % elfterfolgreichste
+
+ \nolig{Fünft[aäeoöruy]}{Fünf|t} % Fünftagewoche ...
+ \nolig{fünft[aäeoöruy]}{fünf|t} % fünftens...
+ \keeplig{fünfterfolg} % fünfterfolgreichste
+ \keeplig{Fünfterfolg}
+ \keeplig{fünftrang} % fünftrangig
+ \keeplig{Fünftrang}
+ \keeplig{fünftreich} % fünftreichste
+ \keeplig{Fünftreich}
+ \keeplig{Fünftoper} % Fünftoperation
+ \keeplig{Fünftrund} % Fünftrunden
+ \keeplig{Fünftäon}
+ \keeplig{fünftältest}
+ \keeplig{Fünftältest}
+
+ \nolig{Golft}{Golf|t}
+ \nolig{golft[hiruüy]}{golf|t}
+ % Golfträume -turnier -typ -talent
+
+ \nolig{Greift[eio]}{Greif|t}
+ % Greiftest -tentakeln -tier -tor
+ \nolig{Hanft}{Hanf|t}
+ % Hanftaler Hanftau
+ \nolig{Hoft[aäehioäruüy]}{Hof|t}
+ \nolig{hoft[aähioöruü]}{hof|t}
+ % Hoftor Klosterhoftor
+
+ \nolig{Laufte}{Lauf|te}
+ % Lauftermin Lauftest Lauftext
+ \nolig{Prüft[aähioäruüy]}{Prüf|t}
+ \nolig{prüft[aähioöruü]}{prüf|t}
+ % Prüftheorie
+ \nolig{Ruft[aäehioäruüy]}{Ruf|t}
+ % Ruftaxi Rufterz Rufton Ruftöne
+
+ \nolig{Schaftal}{Schaf|tal}
+ \nolig{Schaftor}{Schaf|tor}
+ \nolig{Schaftreib}{Schaf|treib}
+
+ \nolig{Schlaft}{Schlaf|t}
+ \nolig{schlaft[aähioäruüy]}{schlaf|t}
+ % Schlaftablette
+ \nolig{Schilft[äehiruüy]}{Schilf|t}
+ \nolig{schilft[hiruüy]}{schilf|t}
+ % Schilfteich Schlilftümpel
+ \nolig{Senft[aäehioäruy]}{Senf|t}
+ % Senftube
+ \keeplig{Senftenberg}
+ \nolig{Straft[aähioöruüy]}{Straf|t}
+ \nolig{straft[aähioöruüy]}{straf|t}
+ % (viele Fälle)
+ \keeplig{straftheit} % Unbestraftheit
+ \nolig{Sufft}{Suff|t}
+ % Sufftest Sufftext
+ \nolig{Surft[ähiöüy]}{Surf|t}
+ % Surfthema Surftipp
+ \nolig{Tarift}{Tarif|t}
+ \nolig{tarift}{tarif|t}
+ % Tarifthemen Tariftabelle
+ \nolig{Tieft}{Tief|t}
+ % Tieftänzer -träumen -tresor -tunnel
+ \nolig{Torft}{Torf|t}
+ \nolig{torft}{torf|t}
+ % Torftabletten Torftaucher Torftoilette
+ \nolig{Wurft}{Wurf|t}
+ \nolig{wurft}{wurf|t}
+ % Wurftalent Wurftaler
+
+ \nolig{fft[aähioöruüy]}{ff|t}
+ % Stofftasche Sauerstofftank Stofftheorie
+ % Stofftier Stofftiger Stofftischtuch
+ % Auspufftopf Kunststofftonne
+ % Stofftradition Stofftrennung
+ % Kunststofftube Stoffturnschuhe
+ % Stofftäschchen Auspufftöpfe
+ % Kunststofftöpfe Kunststofftüten
+
+ %% Words that start with a capital letter
+ %% and end in f-test
+ \nolig{Abstreiftest}{Abstreif|test}
+ \nolig{Ankauftest}{Ankauf|test}
+ \nolig{Hörprüftest}{Hörprüf|test}
+ \nolig{Hüpftest}{Hüpf|test}
+ \nolig{Impftest}{Impf|test}
+ \nolig{Kauftest}{Kauf|test}
+ \nolig{Klopftest}{Klopf|test}
+ \nolig{Kneiftest}{Kneif|test}
+ \nolig{Lichtschweiftest}{Lichtschweif|test}
+ \nolig{Rückruftest}{Rückruf|test}
+ \nolig{Schnupftest}{Schnupf|test}
+ \nolig{Sumpftest}{Sumpf|test}
+ \nolig{Tropftest}{Tropf|test}
+ \nolig{Wettkampftest}{Wettkampf|test}
+ \nolig{tofftest}{toff|test}
+ % Impfstofftest Treibstofftests
+
+ \nolig{aftee}{af|tee}
+ % Schlaftee
+ \nolig{auftee}{auf|tee}
+ % Kreislauftee
+ \nolig{lauftest}{lauf|test}
+ % Kreislauftest
+
+ \nolig{eiftie}{eif|tie}
+ % Greiftiefe Steiftier
+ \nolig{eiftit}{eif|tit}
+ % Eingreiftitel
+ \nolig{eiftr}{eif|tr}
+ % Eingreiftruppe Nadelstreifträger
+ % Greiftrupp -tier -training
+ \nolig{elieft}{elief|t}
+ % Relieftäfelchen -tropfen -türme
+ \nolig{enftei}{enf|tei}
+ % Senfteig
+
+ \nolig{ftabell}{f|tabell}
+ % Ruftabelle
+ \nolig{ftablett}{f|tablett}
+ % Schlaftabletten
+ \nolig{ftafel}{f|tafel}
+ % Pfeiftafel
+ \nolig{ftag}{f|tag}
+ % Tauftag Fünftagewoche
+ \keeplig{ftagent} % Luftagentur
+ \nolig{ftäg}{f|täg}
+ % fünftägig elfftägig zwölftägig
+ \nolig{ftalsg}{f|talsg}
+ % schaftalsgrundig
+ \nolig{ftanz}{f|tanz}
+ % Kampftanz Schilftanz
+ \keeplig{ftanzahl} % Heftanzahl
+ \keeplig{ftanzeig} % Luftanzeige
+ \keeplig{ftanzieh} % Schwerkraftanziehung
+ \keeplig{ftanzüg} % Haftanzüge
+ \nolig{ftänz}{f|tänz}
+ % Tieftänzer
+ \nolig{ftari}{f|tari}
+ % Anruftarif
+ \keeplig{ftaristokr} % Zunftaristokratie
+ \nolig{ftarn}{f|tarn}
+ % Wegwerftarnungen
+ \nolig{ftasse}{f|tasse}
+ % Schürftasse
+ \keeplig{ftassel} % Gruftasseln
+ \nolig{ftatb}{f|tatb}
+ % Straftatbestände
+ \nolig{ftaten}{f|taten}
+ % Kampftaten Straftaten
+ \nolig{ftätig}{f|tätig}
+ % Schürftätigkeit
+ \nolig{ftauch}{f|tauch}
+ % Beruftaucher Kreislauftauchgerät
+ \nolig{ftaugl}{f|taugl}
+ % prüftauglich
+ \nolig{ftaume}{f|taume}
+ % Nachruftaumel
+ \nolig{ftax}{f|tax}
+ % Ruftaxi
+
+ \nolig{fteam}{f|team}
+ % Jugendtreffteam Impfteam
+ \keeplig{fteamt} % Streitkräfteamt
+ \nolig{ftechn}{f|techn}
+ % Stampftechnik schlaftechnisch
+ % Kraftstofftechnologie Pfeiftechnik
+ \nolig{ftedd}{f|tedd}
+ % Schlafteddy
+ \nolig{fteich}{f|teich}
+ % Schilfteich Dorfteich
+ \keeplig{nfteich} % Zunfteiche
+ \keeplig{ifteich} % Schrifteiche
+ \nolig{fteigw}{f|teigw}
+ % Dampfteigwaren
+ \nolig{fteil}{f|teil}
+ % fünfteilig Friedhofteil
+ % Raumschiffteil Riffteil Stoffteil
+ \nolig{ftelef}{f|telef}
+ \nolig{fteleph}{f|teleph} % old spelling...
+ % Wegwerftelefon Notruftelefonnummern
+ \nolig{fteller}{f|teller}
+ % Schiefteller
+ \nolig{ftempel}{f|tempel}
+ % Kauftempel
+ \nolig{ftemper}{f|temper}
+ % Schlaftemperatur
+ \nolig{ftempo}{f|tempo}
+ % Dauerlauftempo
+ \nolig{ftendenz}{f|tendenz}
+ % Klassenkampftendenz
+ \nolig{ftentak}{f|tentak}
+ % Greiftentakeln
+ \nolig{fteppi}{f|teppi}
+ % Schaumstoffteppich Knüpfteppich
+ \nolig{ftermin}{f|termin}
+ % Anpfifftermin Passagierschiffterminal
+ \keeplig{fterminder}
+ % Gesellschafterminderheiten
+ \nolig{ftermit}{f|termit}
+ % Kampftermiten
+ \keeplig{ftermitt} % Rauschgiftermittler
+ \nolig{fterrain}{f|terrain}
+ % Kampfterrain
+ \nolig{fterrass}{f|terrass}
+ % Tuffterrassen
+ \nolig{fterrin}{f|terrin}
+ % Kohlkopfterrine
+ \nolig{fterror}{f|terror}
+ % Schadstoffterror
+ \nolig{ftestat}{f|testat}
+ % Prüftestate
+ \keeplig{ftestation}
+ % Streitkräftestationierung
+ \keeplig{ftestatist}
+ % Lehrkräftestatistik
+ \nolig{fteuf}{f|teuf}
+ % Dorfteufel Saufteufel
+ \nolig{ftext}{f|text}
+ % Betrefftext Stofftextur Stegreiftexte
+ \keeplig{ftextrakt} % Duftextrakt
+
+ \nolig{ftheat}{f|theat}
+ % Stegreiftheater
+ \nolig{fthem}{f|them}
+ % Wolfthema
+ \keeplig{fthemm} % Wirtschafthemmnis
+ \nolig{ftheor}{f|theor}
+ % -f-theorie -f-theorien
+ \nolig{ftherap}{f|therap}
+ % Impftherapie Wurftherapie
+ % Schröpftherapeut
+ \nolig{ftick}{f|tick}
+ % Rückruftickets Diskuswurfticket
+ \nolig{ftief}{f|tief}
+ % tieftief (?)
+ \keeplig{ftiefigur} % Softiefigur
+ \nolig{ftier}{f|tier}
+ % Wegwerftier Huftier
+ \keeplig{haftier} % inhaftieren
+ \keeplig{Muftier} % Muftierben
+ \nolig{ftipp}{f|tipp}
+ % Surftipp
+ \nolig{ftirad}{f|tirad}
+ % Schimpftirade
+ \nolig{ftisch}{f|tisch}
+ % Schleiftisch
+ \keeplig{stiftisch} % hochstiftisch
+ \keeplig{ünftisch} % zünftisch
+
+ \nolig{ftod}{f|tod}
+ % Hanftod
+ \keeplig{ftodem} % Giftodem
+ \nolig{fton}{f|ton}
+ % Pfeifton Zwölftonmusik Rufton
+ \nolig{ftön}{f|tön}
+ % Pfeiftöne Ruftöne
+ \nolig{ftool}{f|tool}
+ % Prüftool
+ \nolig{ftopf}{f|topf}
+ % Schleiftopf Dampf- Auspuff- Schöpf-
+ \keeplig{ftopfer}
+ % Duftopfer Gift- Haft-
+ \nolig{ftöpf}{f|töpf}
+ % Senftöpfchen Torftöpfchen
+ % Kunststofftöpfe
+ \nolig{ftorig}{f|torig}
+ % schaftorig fünftorig
+ \nolig{ftour}{f|tour}
+ % Streiftour
+
+ \nolig{ftrader}{f|trader}
+ % Cheftrader
+ \nolig{ftradition}{f|tradition}
+ % Ruftraditionen
+ \nolig{fträg}{f|träg}
+ % Notrufträger
+ \nolig{ftrain}{f|train}
+ % Lauftrainer
+ \nolig{ftränk}{f|tränk}
+ % Rückruftränke Schaftränke
+ \nolig{ftransp}{f|transp}
+ % Hilftransport Schaftransport
+ \nolig{fträume}{f|träume}
+ % tiefträumend Tiefschlafträume
+ \keeplig{afträume} % Einzelhafträumen
+ \keeplig{äfträume} % Geschäfträumen
+ \keeplig{rifträume}% Schrifträume
+ \keeplig{ufträume} % Lufträumen
+ \nolig{ftrauri}{f|traurig}
+ % tieftraurig
+ \nolig{ftreff}{f|treff}
+ % Notruftreffen
+ \nolig{ftresor}{f|tresor}
+ % Tieftresor
+ \keeplig{ftresorp} % Luftresorption
+ \nolig{ftret}{f|tret}
+ % Mieftreter
+ \keeplig{ftrett} % Luftrettungsdienst
+ \keeplig{ftreturn}% Softreturn
+ \nolig{ftrick}{f|trick}
+ % Rückruftricks
+ \nolig{ftrieb}{f|trieb}
+ % auftriebte schaftriebig
+ \nolig{ftrief}{f|trief}
+ % tieftriefend
+ \nolig{ftrift}{f|trift}
+ % schaftriftig Schaftrift
+ \nolig{ftrimest}{f|trimest}
+ % fünftrimestrig zwölftrimestrig
+ \nolig{ftritt}{f|tritt}
+ % Huftritte
+ \keeplig{ftritter} % Kernkraftritter
+ \keeplig{Luftritt}
+ \nolig{ftrott}{f|trott}
+ % Sauftrottel
+
+ \nolig{ftrüb}{f|trüb}
+ % tieftrübe
+ \nolig{ftrunk}{f|trunk}
+ % schlaftrunken
+ \nolig{ftrupp}{f|trupp}
+ % Prüftruppe
+
+ \nolig{ftuch}{f|tuch}
+ % Schnieftuch Kopftuch
+ \nolig{ftüch}{f|tüch}
+ % Schnieftücher
+ \nolig{ftürk}{f|türk}
+ % tieftürkis
+ \nolig{fturm}{f|turm}
+ % Wolfturm
+ \nolig{ftürm}{f|türm}
+ % Wolftürme
+
+ \nolig{ftyp}{f|typ}
+ % Schifftyp Stofftyp waldorftypisch
+ \nolig{ftyr}{f|tyr}
+ % Dorftyrann Hoftyrann
+ \nolig{ftwist}{f|twist}
+ % Kopftwister
+
+ \nolig{graftum}{graf|tum}
+ % Burggraftum Markgraftum
+ \nolig{graftüm}{graf|tüm}
+ % Markgraftümer
+
+ \nolig{hoftest}{hof|test}
+ % Schlachthoftest
+
+ \nolig{iefta}{ief|ta}
+ % Tieftaucher Brieftasche Brieftaube
+ \nolig{iefto}{ief|to}
+ % Stieftochter Tiefton
+ \nolig{ieftö}{ief|tö}
+ % Stieftöchter tieftönend
+ \nolig{ieftra}{ief|tra}
+ % Tieftraumphase
+
+ \nolig{lfta}{lf|ta}
+ % elftausend zwölftausend Golftasche
+ \nolig{lfto}{lf|to}
+ % Zwölftonmusik Elftonner Golftour
+ \nolig{lftö}{lf|tö}
+ % zwölftönend
+ \nolig{lftum}{lf|tum}
+ % Werwolftum
+
+ \nolig{nftü}{nf|tü}
+ % fünftürig Senftüte
+ \keeplig{nftüb}
+ % Vernunftüberlegung zunftüblich
+ \nolig{nftübchen}{nf|tübchen}
+ % Senftübchen
+
+ \nolig{ölfte}{ölf|te}
+ % zwölfte zwölftens
+
+ \nolig{pft[aähioöruüy]}{pf|t}
+ % Wettkampftag -trubel -tauglich -töne
+ % Kampftaktik -truppe -tätigkeit -tänzer
+ % Schnupftabak -tuch -tücher -tüchlein
+ % Schimpftiraden Mehrkampftitel
+ % Stapftiefe Zopfträger
+ % Dampftopf Sumpftour Herzklopftöne
+ % Kopftreffer -tuch -tücher
+ % Impftabelle -tarif -tierarzt -tod
+ \keeplig{pftheit}
+ % Gedämpftheit Umkämpftheit
+ \nolig{pftee}{pf|tee}
+ % Schlumpftee (?!)
+ \nolig{pfteig}{pf|teig}
+ % Sumpfteig Hefetropfteig
+ \nolig{pftender}{pf|tender}
+ % Heißdampftenderlok
+
+ %\nolig{rftrag}{rf|trag}
+ % Wegwerftragtasche Dorftragödie
+
+ \nolig{rftr}{rf|tr}
+ % Wurftraining Surftrip Freiwurftreffer
+ \keeplig{tdurftrö} % Notdurftröhre
+ \keeplig{Werftr} % Werftreparatur
+ \keeplig{werftr}
+ \nolig{werftrage}{werf|trage}
+ % Wegwerftragetasche
+ \nolig{rftu}{rf|tu}
+ % Wurftuch
+ \keeplig{Werftu}
+ \keeplig{werftu}
+ % Werftumfeld Werftunternehmen
+
+ \nolig{uftas}{uf|tas}
+ % Ruftaste Vorlauftaste Kauftasche
+ \keeplig{Duftas} % Duftaspekte
+ \keeplig{duftas}
+ \keeplig{Gruftas} % Gruftassel
+ \keeplig{gruftas}
+ \keeplig{Luftas} % Luftasket
+ \keeplig{luftas}
+ \keeplig{uftassoz}
+ % Duftassoziationen Schuftassoziationen
+
+ \nolig{urfta}{urf|ta}
+ % Wurftalent Auswurftaste Surftalent
+ \keeplig{tdurfta} % Notdurftanlage
+ \nolig{urfto}{urf|to}
+ % Freiwurftor Surftour
+
+ \nolig{ünftor}{ünf|tor}
+ % fünftorig Fünftore-Vorsprung
+\fi % end of \if@noftligs condition
% 9. fb -> f-b, fh -> f-h, fk -> f-k
diff --git a/Master/texmf-dist/tex/lualatex/selnolig/selnolig.lua b/Master/texmf-dist/tex/lualatex/selnolig/selnolig.lua
index 02a265b4e62..f155b119020 100644
--- a/Master/texmf-dist/tex/lualatex/selnolig/selnolig.lua
+++ b/Master/texmf-dist/tex/lualatex/selnolig/selnolig.lua
@@ -15,31 +15,20 @@
selnolig = { }
selnolig.module = {
name = "selnolig",
- version = "0.218",
- date = "2013/05/28",
+ version = "0.221",
+ date = "2013/06/12",
description = "Selective suppression of typographic ligatures",
author = "Mico Loretan",
copyright = "Mico Loretan",
license = "LPPL 1.3 or later"
}
--- Define variables corresponding to various text nodes
--- (cf. section 8.1.2 of LuaTeX reference guide)
-local hlist = node.id('hlist')
-local vlist = node.id('vlist')
+-- Define variables corresponding to various text nodes;
+-- cf. sections 8.1.2 and 8.1.4 of LuaTeX reference guide
local rule = node.id('rule')
-local ins = node.id('ins')
-local mark = node.id('mark')
-local adjust = node.id('adjust')
-local disc = node.id('disc')
-local math = node.id('math')
local glue = node.id("glue") --
local kern = node.id('kern')
-local penalty = node.id('penalty')
local glyph = node.id('glyph') --
-local margin_kern = node.id('margin_kern')
-
--- see section 8.1.4 for whatsit nodes:
local whatsit = node.id("whatsit") --
local userdefined
@@ -51,7 +40,7 @@ end
local identifier = 123456 -- any unique identifier
local noliga={}
local keepliga={} -- String -> Boolean
-debug=false
+debug=true
function debug_info(s)
if debug then
@@ -63,6 +52,8 @@ local blocknode = node.new(whatsit, userdefined)
blocknode.type = 100
blocknode.user_id = identifier
+local suppression_on = true -- if false, process_ligatures won't do anything
+
local prefix_length = function(word, byte)
return unicode.utf8.len( string.sub(word,0,byte) )
end
@@ -91,6 +82,10 @@ local unicode_find = function(s, pattern, position)
end
function process_ligatures(nodes,tail)
+ if not suppression_on then
+ return -- suppression disabled
+ end
+
local s={}
local current_node=nodes
local build_liga_table = function(strlen,t)
@@ -136,9 +131,8 @@ function process_ligatures(nodes,tail)
for t in node.traverse(nodes) do
if t.id==glyph then
s[#s+1]=unicode.utf8.char(t.char)
- -- Up until version 0.215, the next instruction was
- -- coded simply as "elseif (t.id==glue) then"
- elseif ( t.id==glue or t.id==rule or t.id==kern ) then
+ end
+ if ( t.id==glue or t.next==nil or t.id==kern or t.id==rule ) then
local f=string.gsub(table.concat(s,""),"[\\?!,\\.]+","")
local throwliga={}
for k,v in pairs (noliga) do
@@ -186,6 +180,15 @@ function always_keep_liga(s)
keepliga[s] = true
end
+function enable_suppression(val)
+ suppression_on = val
+ if val then
+ debug_info("Turning ligature suppression on")
+ else
+ debug_info("Turning ligature suppression off")
+ end
+end
+
function enableselnolig()
luatexbase.add_to_callback( "ligaturing",
process_ligatures, "Suppress ligatures selectively", 1 )
diff --git a/Master/texmf-dist/tex/lualatex/selnolig/selnolig.sty b/Master/texmf-dist/tex/lualatex/selnolig/selnolig.sty
index 8a81edc28bc..a2a6045443c 100644
--- a/Master/texmf-dist/tex/lualatex/selnolig/selnolig.sty
+++ b/Master/texmf-dist/tex/lualatex/selnolig/selnolig.sty
@@ -13,8 +13,8 @@
% ---------------------
\def\selnoligpackagename{selnolig}
-\def\selnoligpackageversion{0.218}
-\def\selnoligpackagedate{2013/05/28}
+\def\selnoligpackageversion{0.221a}
+\def\selnoligpackagedate{2013/06/12}
% Announce who we are. Issue warning message if we're
% not running under LuaLaTeX.
@@ -40,7 +40,6 @@
\typeout{=========================================}
\fi
-
% If the 'fontspec' package isn't loaded by the time
% the '\begin{document}' directive is encoutered, issue
% an error message and exit.
@@ -127,15 +126,23 @@
\DeclareOption{noadditionalhyphenationpatterns}{\@addlhyphfalse}
-% The 'basic' option automatically sets the preceding Booleans
-% to 'false', even if historic and/or rare ligatures are enabled
+% The 'basic' option automatically sets the preceding
+% Booleans to 'false', even if historic and/or rare
+% ligatures are enabled
\DeclareOption{basic}{\@broadfsetfalse\@hdligsetfalse}
-% Last but not least, an option to set all Boolean
-% variables (other than '@addlhyph') to 'true'
-% simultaneously.
+% The option 'noftligs' serves to suppress ft and fft
+% ligatures *globally*; default value: 'false'.
+
+\newif\if@noftligs\@noftligsfalse
+\DeclareOption{noftligs}{\@noftligstrue}
+
+
+% Finally, an option to set most language-related
+% Boolean variables (other than '@addlhyph') to
+% 'true' simultaneously.
\DeclareOption{all}{%
\@englishtrue \@broadfsettrue \@hdligsettrue
@@ -144,6 +151,9 @@
% Finally, process all options
\ProcessOptions\relax
+\if@noftligs{% % suppress ft and fft ligatures globally
+ \AtBeginDocument{ \nolig{ft}{f|t} }
+\fi
% Part 2: Load the lua code and set up the user macros
@@ -154,16 +164,18 @@
\directlua{ require("selnolig.lua") }
% Commands to switch selnolig's routines on and off
- \newcommand\selnoligon{
- \directlua{ enableselnolig() }
+ \newcommand\selnoligon{%
+ \directlua{ enableselnolig() }%
}
- \newcommand\selnoligoff{
- \directlua{ disableselnolig() }
+
+ \newcommand\selnoligoff{%
+ \directlua{ disableselnolig() }%
}
% By default, selnolig's macros are switched on
\selnoligon
+
% Record operations of selnolig package to the log
% file: Enabled via '\debugon' command
\newcommand\debugon{%
@@ -190,11 +202,21 @@
}
}
+ % A third user macro turns ligature suppression
+ % off temporarily:
+ \newcommand\uselig[1]{%
+ \directlua{ enable_suppression(false) }%
+ \mbox{#1}%
+ \directlua{ enable_suppression(true) }%
+ }
+
+
\else
% If *not* running under LuaLaTeX, provide dummy
% definitions for package's user macros.
\newcommand{\nolig}[2]{}
\newcommand{\keeplig}[1]{}
+ \newcommand{\uselig}[1]{\mbox{#1}}
\let\selnoligon\relax
\let\selnoligoff\relax
\let\debugon\relax
@@ -202,7 +224,7 @@
\fi
-% A third user macro: '\breaklig'. This is hopefully
+% A fourth user macro: '\breaklig'. This is hopefully
% easier to remember than having to type "\-\hspace{0pt}".
% (It's defined outside the \ifluatex conditional since
% it doesn't use any lua code.)
@@ -210,7 +232,6 @@
\newcommand\breaklig{\-{\hspace{0pt}}}
-
% Part 3: What to do if the 'english' option is set
% -------------------------------------------------