Re: [NTG-context] Fallback fails for Linux Libertine O to Junicode over private area, debugging?

2022-01-08 Thread Hans Hagen via ntg-context

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?

2022-01-07 Thread J .  P . Ascher via ntg-context
> 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?

2022-01-07 Thread Hans Hagen via ntg-context

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?

2022-01-07 Thread J .  P . Ascher via ntg-context
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?

2022-01-07 Thread J .  P . Ascher via ntg-context
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?

2022-01-07 Thread Hans Hagen via ntg-context

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?

2022-01-07 Thread Hans Hagen via ntg-context

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?

2022-01-07 Thread Hans Hagen via ntg-context

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?

2022-01-07 Thread J .  P . Ascher via ntg-context
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?

2022-01-07 Thread Youssef Cherem via ntg-context
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
___