Fallback fails for Linux Libertine O to Junicode over private area, debugging?
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-FFFFF][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
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-FFFFF][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
___________________________________________________________________________________
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
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-FFFFF][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 ___________________________________________________________________________________
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 1/7/2022 5:59 PM, J. P. Ascher via ntg-context wrote: 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 -----------------------------------------------------------------
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-FFFFF][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 -----------------------------------------------------------------
On Fri, Jan 07 2022, 18:10:39 +01 Hans Hagen
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
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 -----------------------------------------------------------------
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!
Hello ! Sorry for this newbie question : I’ve just uploaded CTX on my new MacOS (High Sierra), and when I pass the command mtxrun —generate or any other option with mtxrun, I get this : -bash: mtxrun: command not found I did that before : echo "export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH" >> ~/.bashrc What I am missing ? JP
Hi Jean-Pierre, In which directory (or « folder », speaking MacOS…) have you installed the ConTeXt tree ? For instance, on my machine, I have installed the ConTeXt LMTX tree in /Applications/context-osx-arm64/ and then if for example I need to execute the mtxrun coming with this tree, I can say /Applications/context-osx-arm64/tex/texmf-osx-64/bin/mtxrun - -generate (beware the « - - generate » should be actually two successive « - » dashes without a space between them… I am using Mail.app on my Mac and it replaces the two dashes with a longer n-dash « — »). Of course the best would be to create an alias for /Applications/context-osx-arm64/tex/texmf-osx-64/bin/mtxrun in your .bashrc, if you use bash. Best regards: Otared K.
On 7 Jan 2022, at 23:01, Jean-Pierre Delange via ntg-context
wrote: Hello ! Sorry for this newbie question : I’ve just uploaded CTX on my new MacOS (High Sierra), and when I pass the command mtxrun —generate or any other option with mtxrun, I get this : -bash: mtxrun: command not found
I did that before : echo "export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH" >> ~/.bashrc
What I am missing ? 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 ___________________________________________________________________________________
The instructions for MacOS are the same as for Unix, but note that: - MacOS versions from Catalina (10.15) and newer use *Zsh* by default. - MacOS versions before Catalina use *Bash* by default. https://wiki.contextgarden.net/Installation fre. 7. jan. 2022 kl. 19:02 skrev Jean-Pierre Delange via ntg-context < ntg-context@ntg.nl>:
Hello ! Sorry for this newbie question : I’ve just uploaded CTX on my new MacOS (High Sierra), and when I pass the command mtxrun —generate or any other option with mtxrun, I get this : -bash: mtxrun: command not found
I did that before : echo "export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH" >> ~/.bashrc
What I am missing ? 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
___________________________________________________________________________________
Thank you Otared and Youssef ! As you know MacOS High Sierra is the version before Catalina and works with Bash and the command I’ve given shows where I have installed context : echo 'export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH' >> ~/.bashrc As I am new on MacOS and since what works on Unix works nearly the same on MacOS, no matter if you install context where you want (in /Documents or in /Applications). With the command . setuptex in the folder /home/user/context/tex one could load context and its other commands like mtxrun. I don’t understand what I forget to do !
Le 8 janv. 2022 à 00:00, Youssef Cherem via ntg-context
a écrit : The instructions for MacOS are the same as for Unix, but note that:
MacOS versions from Catalina (10.15) and newer use Zsh by default. MacOS versions before Catalina use Bash by default. https://wiki.contextgarden.net/Installation https://wiki.contextgarden.net/Installation fre. 7. jan. 2022 kl. 19:02 skrev Jean-Pierre Delange via ntg-context
mailto:ntg-context@ntg.nl>: Hello ! Sorry for this newbie question : I’ve just uploaded CTX on my new MacOS (High Sierra), and when I pass the command mtxrun —generate or any other option with mtxrun, I get this : -bash: mtxrun: command not found I did that before : echo "export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH" >> ~/.bashrc
What I am missing ? JP ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl mailto:ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl http://www.pragma-ade.nl/ / http://context.aanhet.net http://context.aanhet.net/ archive : https://bitbucket.org/phg/context-mirror/commits/ https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net 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 ___________________________________________________________________________________
I’ve made a stupid error : I’ve passed this command echo 'export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH' >> ~/.bashrc instead of export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH >> ~/.bashrc. Sorry for the noise !
Le 8 janv. 2022 à 01:42, Jean-Pierre Delange via ntg-context
a écrit : Thank you Otared and Youssef ! As you know MacOS High Sierra is the version before Catalina and works with Bash and the command I’ve given shows where I have installed context : echo 'export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH' >> ~/.bashrc
As I am new on MacOS and since what works on Unix works nearly the same on MacOS, no matter if you install context where you want (in /Documents or in /Applications). With the command . setuptex in the folder /home/user/context/tex one could load context and its other commands like mtxrun. I don’t understand what I forget to do !
Le 8 janv. 2022 à 00:00, Youssef Cherem via ntg-context
mailto:ntg-context@ntg.nl> a écrit : The instructions for MacOS are the same as for Unix, but note that:
MacOS versions from Catalina (10.15) and newer use Zsh by default. MacOS versions before Catalina use Bash by default. https://wiki.contextgarden.net/Installation https://wiki.contextgarden.net/Installation fre. 7. jan. 2022 kl. 19:02 skrev Jean-Pierre Delange via ntg-context
mailto:ntg-context@ntg.nl>: Hello ! Sorry for this newbie question : I’ve just uploaded CTX on my new MacOS (High Sierra), and when I pass the command mtxrun —generate or any other option with mtxrun, I get this : -bash: mtxrun: command not found I did that before : echo "export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH" >> ~/.bashrc
What I am missing ? JP ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl mailto:ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl http://www.pragma-ade.nl/ / http://context.aanhet.net http://context.aanhet.net/ archive : https://bitbucket.org/phg/context-mirror/commits/ https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net 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 mailto:ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl http://www.pragma-ade.nl/ / http://context.aanhet.net http://context.aanhet.net/ archive : https://bitbucket.org/phg/context-mirror/commits/ https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net 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 ___________________________________________________________________________________
I’ve founded what was wrong in my .bashrc file : it was only an error of syntax !
Le 8 janv. 2022 à 00:00, Youssef Cherem via ntg-context
a écrit : The instructions for MacOS are the same as for Unix, but note that:
MacOS versions from Catalina (10.15) and newer use Zsh by default. MacOS versions before Catalina use Bash by default. https://wiki.contextgarden.net/Installation https://wiki.contextgarden.net/Installation fre. 7. jan. 2022 kl. 19:02 skrev Jean-Pierre Delange via ntg-context
mailto:ntg-context@ntg.nl>: Hello ! Sorry for this newbie question : I’ve just uploaded CTX on my new MacOS (High Sierra), and when I pass the command mtxrun —generate or any other option with mtxrun, I get this : -bash: mtxrun: command not found I did that before : echo "export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH" >> ~/.bashrc
What I am missing ? JP ___________________________________________________________________________________ If your question is of interest to others as well, please add an entry to the Wiki!
maillist : ntg-context@ntg.nl mailto:ntg-context@ntg.nl / http://www.ntg.nl/mailman/listinfo/ntg-context http://www.ntg.nl/mailman/listinfo/ntg-context webpage : http://www.pragma-ade.nl http://www.pragma-ade.nl/ / http://context.aanhet.net http://context.aanhet.net/ archive : https://bitbucket.org/phg/context-mirror/commits/ https://bitbucket.org/phg/context-mirror/commits/ wiki : http://contextgarden.net 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 ___________________________________________________________________________________
Am Freitag, dem 07.01.2022 um 23:01 +0100 schrieb Jean-Pierre Delange via ntg-context:
Hello ! Sorry for this newbie question : I’ve just uploaded CTX on my new MacOS (High Sierra), and when I pass the command mtxrun —generate or any other option with mtxrun, I get this : -bash: mtxrun: command not found
I did that before : echo "export PATH=/Users/adeimantos/Documents/context/tex/texmf-osx-64/bin:$PATH"
~/.bashrc
What I am missing ?
Have you sourced .bashrc source ~/.bashrc juh
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
On 1/7/2022 10:39 PM, J. P. Ascher wrote: 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 -----------------------------------------------------------------
% 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
On 1/7/2022 4:18 PM, J. P. Ascher via ntg-context wrote: 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 -----------------------------------------------------------------
On Fri, Jan 07 2022, 19:23:18 +01 Hans Hagen
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!
participants (6)
-
Hans Hagen
-
J. P. Ascher
-
Jean-Pierre Delange
-
juh
-
Otared Kavian
-
Youssef Cherem