Following up on this discussion,
How do people set up ijacute and IJacute?
They have Unicode values, and while Underware's Latin Plus encodes them in the private use area as U+E133 which I think is not a good idea, it seems clear that either way the glyphs may need to be created and relevant OpenType 'locl' features written.
0
Comments
So what we ended up implementing is a Dutch (NLD ) language system layout that includes precomposed glyphs for not only IJ/ij but the same with the acute accents, and maps these in the 'ccmp' feature for NLD, using both fully decomposed and partially decomposed input. In VOLT syntax, using human-friendly production names (final names in font CSS table are uniXXXX form, with mappings back to Brill's preferred encoding):
and a general (non-NLD-specific) 'ccmp' lookup for
Obviously, later there are smallcap substitutions requiring corresponding precomposed glyphs to map from these.
It should be noted that this implementation is tailored to Brill's preferred typography. I've heard that some Dutch users now prefer I+J/i+j to track independently, so obviously in that case one wouldn't want to precompose the combinations or, rather, might want to decompose them after first handling the situation of single combining acute applied to the precomposed digraphs in
i.e. something like
I wonder if there could be a more simple and straightforward way to implement a viable solution.
I also wonder: you code <I acutecomb>. What if people type in <acutecomb I>?
(I always type the accent first, and it works).
any more insights, good practice advice?
should be
in your example.
You're probably using a deadkey input mechanism that maps that series of key strokes to the precomposed í character. This is a different mechanism from using Unicode combining marks, which the standard specifies are always ordered after the base character to which they apply.
Remember, the relationship of what you hit on a keyboard to the encoded characters stored on the computer isn't necessarily one-to-one. It's even possible to make Keyman keyboards that enable you to key Unicode combining marks before bases as if they were deadkey input, but the resulting text is stored correctly, with the marks after the bases.
Though actually, I have several alternates for these characters for Recursive (a variable font with mono & italic alts), so I’ve extended the above with classes:
And these are used for i & j in the lock feature:
</code>feature locl { script latn; language NLD; # Dutch lookup LigatureIJ { sub I acutecomb J acutecomb by IJacute; sub I J by IJ; sub Iacute J acutecomb by IJacute; sub @i_for_ij acutecomb @j_for_ij acutecomb by ijacute; sub @i_for_ij @j_for_ij by ij; sub @iacute_for_ij @j_for_ij acutecomb by ijacute; } LigatureIJ; } locl;</span> </pre><div><br></div><div>And then, per John’s comment above, I’m also adding a ccmp feature:<br><br><pre class="CodeBlock"><code>
feature ccmp { sub IJ acutecomb by IJacute; sub ij acutecomb by ijacute; } ccmp;https://www.flickr.com/photos/underware/15841979861/in/photolist-q95vXx-q8UhFP-q8UhGv
The "G" looked weird when it was invented too. Same with shoes.