I created a CALT (related to a simply substitution) which, for French and Latin, replaces quoteright with quoteright.fr; in truth, I have never understood the reason for having a different bearing for French and Italian than for other languages, except for the different function of the apostrophe, which in French and Italian indicates elision.
I similarly created a CALT that should replace quoteright.sc with quoteright.frsc, but it doesn't work in this case.
In fact, in the respective lookups that FontForge creates, I find the correct syntax in the first case:
========================================================================
lookup caltContextualAlternatesinLatinlookup40 {
lookupflag 0;
sub [\A \B \C \D \E \F \G \H \I \J \K \L \M \N \O \P \Q \R \S \U \V \W \X \Y \Z \a \b \c \d \e \f \g \h \i \j \k
\l \m \n \o \p \q \r \s \t \u \v \w \x \y \z ] [\quoteright ]' by [\quoteright.fr ];
} caltContextualAlternatesinLatinlookup40;
========================================================================
In the second case, however, I find a confused (incorrect) syntax, which I can't decipher:
========================================================================
lookup SingleSubstitutionlookup46 {
lookupflag 0;
sub \quoteright.sc by \quoteright.frsc ;
} SingleSubstitutionlookup46;
lookup caltContextualAlternatesinLatinlookup41 {
lookupflag 0;
sub [\a.sc \b.sc \c.sc \d.sc \e.sc \f.sc \g.sc \h.sc \i.sc \j.sc \k.sc \l.sc \m.sc \n.sc
\o.sc \p.sc \q.sc \r.sc \s.sc \t.sc \u.sc \v.sc \w.sc \x.sc \y.sc \z.sc ] [\quoteright.sc ]'lookup SingleSubstitutionlookup46 ;
} caltContextualAlternatesinLatinlookup41;
========================================================================
Or perhaps the transition from quoteright to quoteright.sc and then to quoteright.frsc needs to be done differently?
Thank you
m
Comments
> [\quoteright.sc ]'lookup SingleSubstitutionlookup46 ;
should be
> [\quoteright.sc ]' lookup SingleSubstitutionlookup46 ;