diff options
author | Karl Berry <karl@freefriends.org> | 2013-06-27 16:32:47 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2013-06-27 16:32:47 +0000 |
commit | 5d0a78fa69eddaec28febee79e47b450d57ada3f (patch) | |
tree | 22a451886d6dc95a71429a132b13e2357ec8266a /Master/texmf-dist/tex | |
parent | 6b1d2a3aee8e3f5b29fe828e0b963d43cf3a6298 (diff) |
selnolig (16jun13)
git-svn-id: svn://tug.org/texlive/trunk@30982 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/tex')
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 % ------------------------------------------------- |