Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
On 1/7/2022 10:39 PM, J. P. Ascher wrote: in that case you can best use a rather bare font i.e. no features at all apart from kerning and use dynamic features grouped in lmtx there are other tricks too \noleftligaturing \norightligaturing \noligaturing and other conbtrols like \noleftkerning etc This is very useful. I'm thinking of writing an environment that switches: I like keeping the ease of typing normal characters, rather than getting glyphs directly, because it's easier to proof on screen in the editor. writing about reproduced in my work and thus now can in the historical item itself. one aspect is how ligatures are made: some fonts have single shapes, others use replacements and kerning of (then) multiple shapes I think you wrote about this somewhere else and it got me interested in physical type from my period: it looks like some printers did some of the same things, sometimes! You might have a box of pre-composed ligatures, or not; you might take a knife to some letters to tweak them for specific uses, or not; you might even shave wrong-sized letters to fit them in where they don't belong. Those shaved down letters could end up back with their siblings, now shifting around during printing, or they could be tossed. The pre-composed ligatures might most often be made on matrices struck with the same punches as for the non-ligatured glyphs, but typefounders might re-strike matries now and then, so you might end up with slightly different pre-composed ligatures in different, or even the same, fount of type. It's nuts! Fred Smeijers writes about this a little bit in *Counterpunch*, but I had already started thinking about it because of ConTeXt. I wouldn't have known to look if it weren't for the typographical education you and your colleagues pass around; so, thank you again! One problem with writing about things related to fonts is that when a font changes rendering changes 9this is a pain for manuals or articles that then no longer show examplex right) for that reason one needs to - save a font, best rename it - define fonts by filename - make sure that font specific manipulations are also saved Fonts more and more have become like programs. In the past a font never changed (even expensive fonts had no update policy like programs do) but with open type fonts became way less stable especially free ones (vendors still freeze and then just sell them). Add to that forking, abandoning etc. With complex features being used, and features not always being applied consistently (bascially we have 1-1, 1-many, many-1, many-many mapping plus contextual lookups) we can expect bugs and they get fixed or not. It also depends on views of designer, programs being used to make them, programs used to test them, all of which can change over time, so in a way fonts have become less stable (a bit like hyphenation patterns as more fluid resource). At some point we can expect bug(let)s or imperfections to stay and adapt to that (as we do with math now). (This is not new: for a long time tex users had to deal with computer modern fonts with basically only proper kerning for english.) Add to that evolving technologies (color fonts, image based ones e.g. emoji, variable fonts) that show up, then need fonts, where often the first ones are not okay, so bug show up, features changes, specs become better (or worse), bugs become features when programs compensate for issues, often a side effect of release before maturing (the haste of/on the web) but all that can settle after a decade (because in the tex world we talk decades anyway). In context so far we managed to keep up with e.g. color fonts, variables fonts pretty early (we were one of the first to actually typeset with variable fonts) but that of course also comes a price of later adaptation (when fonts show up, specs become clear). Here definitely a longer time scale matters so using such fonts in a project is more tricky for various reasons. The best would be if we had a repository for context where we put fonts (clean file names, maybe with normalized version/date in file name) that we can then trust to stay the same. In that case a typescript and lua extensions can check for versions reliable. (We might do that for math to start with.) Hans - Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl - ___ 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 :
Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
> in that case you can best use a rather bare font i.e. no features at > all apart from kerning and use dynamic features grouped > > in lmtx there are other tricks too > > \noleftligaturing > \norightligaturing > \noligaturing > > and other conbtrols like > > \noleftkerning > etc This is very useful. I'm thinking of writing an environment that switches: I like keeping the ease of typing normal characters, rather than getting glyphs directly, because it's easier to proof on screen in the editor. >> writing about reproduced in my work and thus now can in the historical >> item itself. > > one aspect is how ligatures are made: some fonts have single shapes, > others use replacements and kerning of (then) multiple shapes I think you wrote about this somewhere else and it got me interested in physical type from my period: it looks like some printers did some of the same things, sometimes! You might have a box of pre-composed ligatures, or not; you might take a knife to some letters to tweak them for specific uses, or not; you might even shave wrong-sized letters to fit them in where they don't belong. Those shaved down letters could end up back with their siblings, now shifting around during printing, or they could be tossed. The pre-composed ligatures might most often be made on matrices struck with the same punches as for the non-ligatured glyphs, but typefounders might re-strike matries now and then, so you might end up with slightly different pre-composed ligatures in different, or even the same, fount of type. It's nuts! Fred Smeijers writes about this a little bit in *Counterpunch*, but I had already started thinking about it because of ConTeXt. I wouldn't have known to look if it weren't for the typographical education you and your colleagues pass around; so, thank you again! ___ 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 ___
Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
On 1/7/2022 7:55 PM, J. P. Ascher wrote: On Fri, Jan 07 2022, 18:10:39 +01 Hans Hagen wrote: On 1/7/2022 4:18 PM, J. P. Ascher via ntg-context wrote: Hi, all, I'm a long time lurker (on gmane), first time poster. First, thank [...] Any ideas? when you use a complex font (in this case with lots of ligatures) doing a fallback can interfere with these features especially when they have been put in the private areas which are basically 'undefined' you're accessing an st ligature directly but normally you will do that by enabling a font feature Thank you Hans, for your response, and your years of hard work on many great manuals and code! I'm doing that deliberately, but for my own peculiar reason: I'm working on transcribing 17c texts in terms of the typographical sorts available in the physical founts of their print shop. I.e. I usually disable all ligatures and only manually put in a ligature when the physical type was a ligatured one, as best I can tell. Not every shop had the same founts and not every compositor used every available ligature in the same shop. in that case you can best access the shapes by name (which is possible in context), assuming that they have one (often they do or they have standard locations like a few ligatures have) My bigger technical problem is that I need to combine paragraphs of normally typeset prose with other paragraphs where I don't want the typesetting engine to change a single glyph, or too much of the spacing. in that case you can best use a rather bare font i.e. no features at all apart from kerning and use dynamic features grouped in lmtx there are other tricks too \noleftligaturing \norightligaturing \noligaturing and other conbtrols like \noleftkerning etc I pulled it off for my dissertation with a bunch of hacks, like the above, which proved to me that it could actually work. From the readers I've had, it seems that as you read more of the prose, you start noticing that the description is different in subtle ways and eventually--I hope--learn to see the evidence of typesetting that I'm writing about reproduced in my work and thus now can in the historical item itself. one aspect is how ligatures are made: some fonts have single shapes, others use replacements and kerning of (then) multiple shapes But, I think that the actual solution is a real font for this. I'm just making hacks between appointments--I can afford the time away from the treadmill of applications to do it correctly right now. Sometimes, I wonder if a monospace, like DejaVu's, with the extra glyphs would make the distinction between prose and description clearer, but I'll have to wait until I have an occasion to try that too. I'd be curious if anyone else has seen someone trying something similar. yrs, -jp -- - Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl - ___ 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 ___
Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
On Fri, Jan 07 2022, 19:23:18 +01 Hans Hagen wrote: > On 1/7/2022 4:18 PM, J. P. Ascher via ntg-context wrote: > >> % Libertine with a Junicode fallback, lib-fb-jun > looks like there is some beta junicode two (i tried the variable font [...] > anyway ... these fonts are probably to beta to be useful now although > one needs users like you to test them and feedback > > Hans Thank you very much for this approach! Lua seems like a good way to go, since I can be explicit about what I'm doing. On Junicode Two, I chatted with Peter Baker the other day. He had been writing his first version in a raw UFO file with Emacs, but recently switched to Glyphs, I think. I'll reach out to him and see what's happening. Thank you, too, for that suggestion! ___ 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 ___
Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
On Fri, Jan 07 2022, 18:10:39 +01 Hans Hagen wrote: > On 1/7/2022 4:18 PM, J. P. Ascher via ntg-context wrote: >> Hi, all, >> I'm a long time lurker (on gmane), first time poster. First, thank [...] >> Any ideas? > when you use a complex font (in this case with lots of ligatures) > doing a fallback can interfere with these features especially when > they have been put in the private areas which are basically > 'undefined' > > you're accessing an st ligature directly but normally you will do that > by enabling a font feature Thank you Hans, for your response, and your years of hard work on many great manuals and code! I'm doing that deliberately, but for my own peculiar reason: I'm working on transcribing 17c texts in terms of the typographical sorts available in the physical founts of their print shop. I.e. I usually disable all ligatures and only manually put in a ligature when the physical type was a ligatured one, as best I can tell. Not every shop had the same founts and not every compositor used every available ligature in the same shop. My bigger technical problem is that I need to combine paragraphs of normally typeset prose with other paragraphs where I don't want the typesetting engine to change a single glyph, or too much of the spacing. I pulled it off for my dissertation with a bunch of hacks, like the above, which proved to me that it could actually work. From the readers I've had, it seems that as you read more of the prose, you start noticing that the description is different in subtle ways and eventually--I hope--learn to see the evidence of typesetting that I'm writing about reproduced in my work and thus now can in the historical item itself. But, I think that the actual solution is a real font for this. I'm just making hacks between appointments--I can afford the time away from the treadmill of applications to do it correctly right now. Sometimes, I wonder if a monospace, like DejaVu's, with the extra glyphs would make the distinction between prose and description clearer, but I'll have to wait until I have an occasion to try that too. I'd be curious if anyone else has seen someone trying something similar. yrs, -jp ___ 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 ___
Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
On 1/7/2022 5:59 PM, J. P. Ascher via ntg-context wrote: Thanks for asking! It's just my example. I maintain JunicodeRX (...with Restoration Typographical Extensions) which includes yet more non-standard code points and which I continue to add to. In my actual work, I also add in Symbola for additional fallbacks. Some fonts have better language coverage (Libertine) and others have some custom glyphs I want (JunicodeRX and Symbola). If I had a bit more time, I suspect maintaining a stand-alone Libertine+JunicodeRX+Symbola.otf would be the best approach, but that's a bit beyond me these days. the complication in mixing fonts is that one cannot really mix the features arbitrary Hans - Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl - ___ 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 ___
Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
On 1/7/2022 4:18 PM, J. P. Ascher via ntg-context wrote: % Libertine with a Junicode fallback, lib-fb-jun looks like there is some beta junicode two (i tried the variable font but the ttf crashes (no hvar table) and the otf also has issues so probably a bit too beta) .. maybe that font will cover what libertine has? - ttf variable : crash (probably due to missing hvar or invalid deltas) - otf variable : issues - otf normal : crash on italic due to stem problem - ttf normal : seems to work (it makes no sense to add all kind of sanity checks for fonts with issues) the font has a fi ligature but not as feature so you need to add it: \startluacode fonts.handlers.otf.addfeature { name = "xlig", type = "ligature", data = { [64257] = { "f", "i" }, } } \stopluacode \definefontfeature[default][default][xlig=yes,dlig=yes] % is dflt defined ? \setupbodyfont[junicode] \starttext % fi ligature in \char 64257 but not in liga feature Ik fiets op de stoep en dat mag niet. \blank {\it Ik fiets op de stoep en dat mag niet.}\blank {\bf Ik fiets op de stoep en dat mag niet.}\blank {\bi Ik fiets op de stoep en dat mag niet.}\blank \stoptext attached a possible typescript file (patched from ws 2011 version) anyway ... these fonts are probably to beta to be useful now although one needs users like you to test them and feedback Hans - Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl -%D \module %D [ file=type-junicode, %D version=2011.09.18, %Dtitle=\CONTEXT\ Typescript Macros, %D subtitle=Junicode Font Definitions, %D author=Wolfgang Schuster, %D date=\currentdate, %Dcopyright=Wolfgang Schuster, %D license=GNU General Public License] % adapted by hh \usetypescriptfile[texgyre] \usetypescriptfile[dejavu] \starttypescriptcollection [junicode] % crash on data points / hvar inconsistency % % \definefontfeature[junicodebold][default] % % \definefontsynonym[junicoderegular][\s!file:junicodetwobetavf-roman.ttf] % \definefontsynonym[junicodeitalic] [\s!file:junicodetwobetavf-italic.ttf] % % \starttypescript [\s!serif] [junicode] % \definefontsynonym [Junicode-Regular] [junicoderegular][\s!features=default] % \definefontsynonym [Junicode-Italic] [junicodeitalic] [\s!features=default] % \definefontsynonym [Junicode-Bold] [junicoderegular][\s!features={default,junicodebold}] % \definefontsynonym [Junicode-BoldItalic] [junicodeitalic] [\s!features={default,junicodebold}] % \stoptypescript % italic crashes on stems in cff % % \starttypescript [\s!serif] [junicode] % \definefontsynonym [Junicode-Regular] [\s!file:junicodetwobeta-regular.otf] [\s!features=\s!default] % \definefontsynonym [Junicode-Italic] [\s!file:junicodetwobeta-italic.otf][\s!features=\s!default] % \definefontsynonym [Junicode-Bold] [\s!file:junicodetwobeta-bold.otf] [\s!features=\s!default] % \definefontsynonym [Junicode-BoldItalic] [\s!file:junicodetwobeta-bolditalic.otf][\s!features=\s!default] % \stoptypescript \starttypescript [\s!serif] [junicode] \definefontsynonym [Junicode-Regular] [\s!file:junicodetwobeta-regular.ttf] [\s!features=\s!default] \definefontsynonym [Junicode-Italic] [\s!file:junicodetwobeta-italic.ttf][\s!features=\s!default] \definefontsynonym [Junicode-Bold] [\s!file:junicodetwobeta-bold.ttf] [\s!features=\s!default] \definefontsynonym [Junicode-BoldItalic] [\s!file:junicodetwobeta-bolditalic.ttf][\s!features=\s!default] \stoptypescript \starttypescript [\s!serif] [junicode] \setups[\s!font:\s!fallback:\s!serif] \definefontsynonym [\s!Serif] [Junicode-Regular] [\s!features=\s!default] \definefontsynonym [\s!SerifItalic] [Junicode-Italic] [\s!features=\s!default] \definefontsynonym [\s!SerifBold] [Junicode-Bold] [\s!features=\s!default] \definefontsynonym [\s!SerifBoldItalic] [Junicode-BoldItalic][\s!features=\s!default] \stoptypescript \starttypescript [junicode] \definetypeface [junicode] [rm] [\s!serif] [junicode] [\s!default] \definetypeface [junicode] [tt] [\s!mono] [dejavu] [\s!default] \definetypeface [junicode] [mm] [\s!math] [pagella] [\s!default] \quittypescriptscanning \stoptypescript \stoptypescriptcollection \endinput ___ 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 /
Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
On 1/7/2022 4:18 PM, J. P. Ascher via ntg-context wrote: Hi, all, I'm a long time lurker (on gmane), first time poster. First, thank you all, very much, for your excellent work and superb community. ConTeXt has become a critical part of my academic writing and integral to my research. I'm not exaggerating when I say it changed how I thought about texts and became a major source for my dissertation work. Thank you! I'm trying to get a typescript for setting a text in Libertine with Junicode fallbacks for characters in MUFI, in the private use area. For some reason Libertine roman will not fallback no matter what I do. However Libertine italic will. I can also work around it by using Junicode as a base and forcing fallback to Libertine. My question is: why? What's wrong with Libertine roman? Or my approach? My hypothesis is that there's something about `LinLibertine_R.otf` that's not quite right. I looked in FontForge, but couldn't spot anything. Does anyone have a suggestion as to another place to look? Or something I'm overlooking? Minimal example (attached too, if it comes through): ``` \definefontfeature[default][default][script=latn] % Libertine with a Junicode fallback, lib-fb-jun \definefontfallback[junicodefallback][name:Junicode][privateusearea][check=yes,force=no] \starttypescript [serif] [lib-fb-jun] \definefontsynonym [Libertine-Roman] [file:linlibertiner] \definefontsynonym [Libertine-Slanted] [file:linlibertineri] % works fine \stoptypescript \starttypescript [serif] [lib-fb-jun] [name] \definefontsynonym [Serif][Libertine-Roman] [features=default,fallbacks=junicodefallback] \definefontsynonym [SerifSlanted] [Libertine-Slanted] [features=default,fallbacks=junicodefallback] \stoptypescript \starttypescript [lib-fb-jun] \definetypeface [lib-fb-jun] [rm] [serif] [lib-fb-jun] [default] \stoptypescript % Junicode with Libertine as a fallback, preferring Libertine, jun-pr-lib % this hack does what I want the above to do \definefontfallback[preferlibertine][name:linlibertineo][0-F][check=yes,force=yes] \starttypescript[serif] [jun-pr-lib] \definefontsynonym [JunicodeRoman] [name:Junicode] \stoptypescript \starttypescript[serif] [jun-pr-lib] [name] \definefontsynonym [Serif] [JunicodeRoman] [fallbacks=preferlibertine] \stoptypescript \starttypescript [jun-pr-lib] \definetypeface [jun-pr-lib] [rm] [serif] [jun-pr-lib] [default] \stoptypescript % some tracking stuff \enabletrackers[fonts.missing=replace] \enabledirectives[logs.errors] % text, we use lib-fb-jun first, then jun-pr-lib \starttext \setupbodyfont[lib-fb-jun] {\em emph. lib-fb-jun: \Uchar61125 \char64259 \utfchar{"eec5} (three glyphs)} lib-fb-jun: \Uchar61125 \char64259 \utfchar{"eec5} (three glyphs) % <- fallback fails here \switchtobodyfont[jun-pr-lib] jun-pr-lib: \Uchar61125 \char64259 \utfchar{"eec5} (three glyphs) % <- works \stoptext ``` Any ideas? when you use a complex font (in this case with lots of ligatures) doing a fallback can interfere with these features especially when they have been put in the private areas which are basically 'undefined' you're accessing an st ligature directly but normally you will do that by enabling a font feature Hans - Hans Hagen | PRAGMA ADE Ridderstraat 27 | 8061 GH Hasselt | The Netherlands tel: 038 477 53 69 | www.pragma-ade.nl | www.pragma-pod.nl - ___ 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 ___
Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
Thanks for asking! It's just my example. I maintain JunicodeRX (...with Restoration Typographical Extensions) which includes yet more non-standard code points and which I continue to add to. In my actual work, I also add in Symbola for additional fallbacks. Some fonts have better language coverage (Libertine) and others have some custom glyphs I want (JunicodeRX and Symbola). If I had a bit more time, I suspect maintaining a stand-alone Libertine+JunicodeRX+Symbola.otf would be the best approach, but that's a bit beyond me these days. On Fri, Jan 07 2022, 13:52:05 -03 Youssef Cherem wrote: > Is it just your example, or do you really just want those ligatures? > > fre. 7. jan. 2022 kl. 12:33 skrev J. P. Ascher via ntg-context > : > > Hi, all, > > I'm a long time lurker (on gmane), first time poster. First, thank you > all, very much, for your excellent work and superb community. > ConTeXt has become a critical part of my academic writing and integral > to my research. I'm not exaggerating when I say it changed how > I thought about texts and became a major source for my dissertation > work. Thank you! > > I'm trying to get a typescript for setting a text in Libertine with > Junicode fallbacks for characters in MUFI, in the private use area. > For some reason Libertine roman will not fallback no matter what > I do. However Libertine italic will. I can also work around it by using > Junicode as a base and forcing fallback to Libertine. > > My question is: why? What's wrong with Libertine roman? Or my approach? > > My hypothesis is that there's something about `LinLibertine_R.otf` > that's not quite right. I looked in FontForge, but couldn't > spot anything. > > Does anyone have a suggestion as to another place to look? Or something > I'm overlooking? > > Minimal example (attached too, if it comes through): > > ``` > \definefontfeature[default][default][script=latn] > > % Libertine with a Junicode fallback, lib-fb-jun > > > \definefontfallback[junicodefallback][name:Junicode][privateusearea][check=yes,force=no] > > \starttypescript [serif] [lib-fb-jun] >\definefontsynonym [Libertine-Roman] [file:linlibertiner] >\definefontsynonym [Libertine-Slanted] [file:linlibertineri] % works fine > \stoptypescript > > \starttypescript [serif] [lib-fb-jun] [name] >\definefontsynonym [Serif][Libertine-Roman] > [features=default,fallbacks=junicodefallback] >\definefontsynonym [SerifSlanted] [Libertine-Slanted] > [features=default,fallbacks=junicodefallback] > \stoptypescript > > \starttypescript [lib-fb-jun] >\definetypeface [lib-fb-jun] [rm] [serif] [lib-fb-jun] [default] > \stoptypescript > > % Junicode with Libertine as a fallback, preferring Libertine, jun-pr-lib > % this hack does what I want the above to do > > > \definefontfallback[preferlibertine][name:linlibertineo][0-F][check=yes,force=yes] > > \starttypescript[serif] [jun-pr-lib] > \definefontsynonym [JunicodeRoman] [name:Junicode] > \stoptypescript > > \starttypescript[serif] [jun-pr-lib] [name] > \definefontsynonym [Serif] [JunicodeRoman] [fallbacks=preferlibertine] > \stoptypescript > > \starttypescript [jun-pr-lib] >\definetypeface [jun-pr-lib] [rm] [serif] [jun-pr-lib] [default] > \stoptypescript > > % some tracking stuff > > \enabletrackers[fonts.missing=replace] > \enabledirectives[logs.errors] > > % text, we use lib-fb-jun first, then jun-pr-lib > > \starttext > \setupbodyfont[lib-fb-jun] > > {\em emph. lib-fb-jun: \Uchar61125 \char64259 \utfchar{"eec5} (three glyphs)} > > lib-fb-jun: \Uchar61125 \char64259 \utfchar{"eec5} (three glyphs) % <- > fallback fails here > > \switchtobodyfont[jun-pr-lib] > > jun-pr-lib: \Uchar61125 \char64259 \utfchar{"eec5} (three glyphs) % <- works > > \stoptext > ``` > > Any ideas? > > Most warmly, > -jp > > -- > J. P. Ascher > Preceding: https://doi.org/10.18130/jqpe-zc65 > Current: http://www.bibsoc.org.uk/content/2020-2021-0 > > > ___ > 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 > > ___ ___ 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
Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?
Is it just your example, or do you really just want those ligatures? fre. 7. jan. 2022 kl. 12:33 skrev J. P. Ascher via ntg-context < ntg-context@ntg.nl>: > Hi, all, > > I'm a long time lurker (on gmane), first time poster. First, thank you > all, very much, for your excellent work and superb community. > ConTeXt has become a critical part of my academic writing and integral > to my research. I'm not exaggerating when I say it changed how > I thought about texts and became a major source for my dissertation > work. Thank you! > > I'm trying to get a typescript for setting a text in Libertine with > Junicode fallbacks for characters in MUFI, in the private use area. > For some reason Libertine roman will not fallback no matter what > I do. However Libertine italic will. I can also work around it by using > Junicode as a base and forcing fallback to Libertine. > > My question is: why? What's wrong with Libertine roman? Or my approach? > > My hypothesis is that there's something about `LinLibertine_R.otf` > that's not quite right. I looked in FontForge, but couldn't > spot anything. > > Does anyone have a suggestion as to another place to look? Or something > I'm overlooking? > > Minimal example (attached too, if it comes through): > > ``` > \definefontfeature[default][default][script=latn] > > > % Libertine with a Junicode fallback, lib-fb-jun > > > \definefontfallback[junicodefallback][name:Junicode][privateusearea][check=yes,force=no] > > \starttypescript [serif] [lib-fb-jun] > \definefontsynonym [Libertine-Roman] [file:linlibertiner] > \definefontsynonym [Libertine-Slanted] [file:linlibertineri] % works > fine > \stoptypescript > > \starttypescript [serif] [lib-fb-jun] [name] > \definefontsynonym [Serif][Libertine-Roman] > [features=default,fallbacks=junicodefallback] > \definefontsynonym [SerifSlanted] [Libertine-Slanted] > [features=default,fallbacks=junicodefallback] > \stoptypescript > > \starttypescript [lib-fb-jun] > \definetypeface [lib-fb-jun] [rm] [serif] [lib-fb-jun] [default] > \stoptypescript > > > % Junicode with Libertine as a fallback, preferring Libertine, jun-pr-lib > % this hack does what I want the above to do > > > \definefontfallback[preferlibertine][name:linlibertineo][0-F][check=yes,force=yes] > > \starttypescript[serif] [jun-pr-lib] >\definefontsynonym [JunicodeRoman] [name:Junicode] > \stoptypescript > > \starttypescript[serif] [jun-pr-lib] [name] >\definefontsynonym [Serif] [JunicodeRoman] [fallbacks=preferlibertine] > \stoptypescript > > \starttypescript [jun-pr-lib] > \definetypeface [jun-pr-lib] [rm] [serif] [jun-pr-lib] [default] > \stoptypescript > > > % some tracking stuff > > \enabletrackers[fonts.missing=replace] > \enabledirectives[logs.errors] > > > % text, we use lib-fb-jun first, then jun-pr-lib > > \starttext > \setupbodyfont[lib-fb-jun] > > {\em emph. lib-fb-jun: \Uchar61125 \char64259 \utfchar{"eec5} (three > glyphs)} > > lib-fb-jun: \Uchar61125 \char64259 \utfchar{"eec5} (three glyphs) % <- > fallback fails here > > \switchtobodyfont[jun-pr-lib] > > jun-pr-lib: \Uchar61125 \char64259 \utfchar{"eec5} (three glyphs) % <- > works > > \stoptext > ``` > > Any ideas? > > Most warmly, > -jp > > -- > J. P. Ascher > Preceding: https://doi.org/10.18130/jqpe-zc65 > Current: http://www.bibsoc.org.uk/content/2020-2021-0 > > > ___ > 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 > > ___ > ___ 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 ___