On 12/5/2013 3:42 PM, Johan Vromans wrote:
Hans Hagen
writes: On 12/5/2013 1:23 PM, Johan Vromans wrote:
Hans Hagen
writes: de '' `` input is eigenlijk een pseudo ligatuur, net als -- en ---, en
[citation needed]
why? if you key in --- and get an 'emdash' that means that some magic is going on in tex and as - is not an active character it has to be font magic ... fl ff fi ffl ffi fff ij ae oe ... these are considered ligatures but -- --- `` '' use the same mechanism ... you can see this kind of mapping with:
Excuus voor de mogelijke verwarringg, mijn vraag was typografisch van aard. Vanuit de typesettingliteratuur is mij namelijk niets bekend dat ” een ligatuur zou zijn voor ’’, etc. Leergierig als ik ben wilde ik daar even meer van weten.
daarom noem ik het ook een *pseudo* ligatuur: er wordt gebruik gemaakt van tex's ligatuurmechanisme om de invoer te tranformeren
Eerlijk gezegd twijfel ik ook een beetje aan je antwoord, wat ik gezien jouw grondige kennis van zaken niet snel doe. Ik hoop althans dat *TeX de mapping van naastelkaargelegen f en l naar ligatuur fl toch op een ander niveau (fontniveau) afhandelt dan de omzetting van '' naar ” (inputniveau).
nee, dat gebeurt op hetzelfde niveau: invoer '' -> 2 char nodes -> 1 lig (glyph node) invoer --- -> 3 char nodes -> 1 lig node (endash) + 1 char node -> 1 lig node (emdash) invoer ffi -> 3 char nodes -> 1 lig node (ff) + 1 char node (f) -> 1 lig node (ffi) tex heeft geen input translatie (omega wel) ... evt kan men ' actief maken (een macro dus die vooruit kijkt) en een vorm van invoer translatie doen in traditioneel tex vindt dit process vroeg plaats, dus vermengd met de expansie van macros en translatie in een node list; een complicatie is dat soms ligature decomposition plaatsvindt (unboxed content); verder is er natuurlijk de nodige interferentie met afbreken (discretionaries); een voorbeeld van beinvloeding van dit proces is f{}i wat een ligatuur verhindert hoewel in een later stadium (afhanlijk van wat men met boxes doet) die ligatuur toch weer kan opduiken in luatex is hyphenation, ligature building, kerning strikt gescheiden
Ligatuur impliceert vormverandering. Als ik het woord "fiets" wijder spatieer verwacht ik "f i e t s" en niet "fi e t s". Maar een wijder gespatieerd "“hoi”" wordt (hopelijk) toch echt "“ h o i ”" en niet "‘ ‘ h o i ’ ’".
dat is inderdaad een ander verhaal ... overigens, de wide engines (xetex en luatex) gebruiken opentype fonts en die hebben die '' ligatuur hacks niet; echter, in die fonts wordt weer op andere manieren het concept ligatuur misbruikt, omdat het een n -> 1 mapping is (hoewel sommige fonts gewoon 1 -> 1 mappen); bovendien is daar een wat geavanceerder mechanisms mogelijk zodat "fijn" niet "fi j n" wordt maar "f ij n" hoewel voor zover ik weet alleen latin modern dat ondersteunt Hans ----------------------------------------------------------------- Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | voip: 087 875 68 74 | www.pragma-ade.com | www.pragma-pod.nl -----------------------------------------------------------------