AFDKO bug(?): Localization breaks Contextual Alternates feature

yanone's picture

Hi friends,

I'm developing a script font that relies on Contextual Alternates for the script connections.

After I've added a

# Latin
script latn;
# Dutch
language NLD;
sub i j by ij; # Dutch ij

to the font, the Contextual Alternates feature is not applied anymore when the language in InDesign 7.0.4 is set to Dutch.
The other languages work as expected.
The Contextual Alternates features does not contain any Script/Language tags, only default Script/Language substituations.

Does anyone have experience with this?
Thank you.

yanone's picture

UPDATE: FORGET ABOUT IT!
All my fault. Was too quick to post.
I forgot the languagesystem tags.

daverowland's picture

I might be wrong, but I thought the ij for Dutch is a separate character on their keyboards, and therefore a ligature substitution isn't needed. There are words Dutch people will need to write with i and j as separate letters. Fiji, for example.

R.'s picture

I might be wrong, but I thought the ij for Dutch is a separate character on their keyboards

You are ;-) If Dutch people need ij, they type i and then j. In ‘Fiji’ and in ‘pijn’.

hrant's picture

They might [have to] type them separately, but they mean it as one thing.

hhp

Michel Boyer's picture

I would not presume what people mean. More and more rely on spell checkers and I would expect the spell checker to do better job than a blind substitution at the font level.

hrant's picture

It's more paying attention than presumption.

They mean it so much they don't mind when it makes things ugly/uglier:
http://www.flickr.com/photos/albert-jan_pool/8038443339/

hhp

Michel Boyer's picture

Your sample is not statistically significant, and certainly not random. (LOL)

hrant's picture

Sorry, I can't spend a month writing a thesis on this for you.

But there is this that I can quickly point out:
http://www.flickr.com/groups/ij/pool

See also:
http://www.typophile.com/node/34111?from=0&comments_per_page=5000#commen...
BTW that thread contains some attempts at "platonic ligation" :-) by yours truly.

The Anglo keyboard not having enough keys is not a feature, it's a bug.

hhp

Michel Boyer's picture

My keyboard is the French Canadian keyboard (I mean what is printed on the keys corresponds to the Canadian French CSA layout) but I have to switch all the time between layouts because the position for the characters used in LaTeX are not handy with the Canadian French CSA layout; I also use the US extended keyboard layout (I thus need to know where the characters are because they are not printed on the keys). So I am well aware of the limitations of keyboards. I also have layouts I made for myself with SIL Ukelele.

On the other hand, the Canadian French CSA keyboard does not contain the oe ligature(*) and, so far as I know, people rely on the spell checker for it and, in my opinion, it does a good job.

Whether the Dutch spell checker is as useful with ij ligatures, I don't know. I just downloaded the OpenOffice nl_NL dictionary and it contains more than 9700 entries with the ij ligature. I am not saying that adding an ij character on the keyboard could not be beneficial but I fail to see how it could improve much the final text, whether printed or for the screen.

(*) On the mac, you need to type ALT q to get œ.

John Hudson's picture

IJ/ij was a separate key on Dutch typewriters, and it is only since the advent of computers and hardware based on US models that it has not been readily available for input as a separate character. That doesn't stop some Dutch publishers from routinely replacing all occurences of i+j in Dutch texts with the Unicode ij digraph character. Why do they do this? Because in Dutch orthography this digraph has behaviours in casing, spacing and accentuation that differ from the i and j as independent letters. There are means to apply these behaviours to i+j, but it is much easier to do so with the ij character.

hrant's picture

I'm not sure there's any unused room in the Dutch layout, and I am pretty sure people hate learning new things that seem trivial (like a new key on a keyboard).* But my own point was that "IJ"/"ij" exists as a unity, and it's better to have a smarter font than a dumber one (even if a spell-checker can sometimes help).

* Although a nice "behind-the-scenes" [Shift-]Alt-something should work well.

Also, I personally don't trust spell-checkers too much; I have a problem with Word's English spell-checker about once a week, nevermind something cheesy somebody might be using for a less-supported language.

hhp

Michel Boyer's picture

it's better to have a smarter font than a dumber one

If you have a "smart font" that automatically replaces ij by the digraph, then what do you do when you don't want the ligature? With LaTeX, I know how to prevent "automatic ligatures". With opentype fonts, is it easy to put a zero width non breaking character between the i and the j? Is there other tools available? With the babel package in LaTeX, I could also switch from Dutch to English for the corresponding word; can that be done in standard text editors so that Fiji would not be written with a ligature?

In any case, if I use for Dutch the same rules I use for French, if the input file does not comply with the Dutch dictionary, it is simply erroneous, even if the font makes the output look right.

John Hudson's picture

I could also switch from Dutch to English for the corresponding word; can that be done in standard text editors so that Fiji would not be written with a ligature?

I think it's a pretty safe bet that any text processor that enables you to set the language as Dutch is going to let you set the language to something else. Language tagging is pretty standard in text processing these days, because spellchecking, hyphenation etc. all rely on it.

My Leiden client, Brill, regularly use the Unicode IJ/ij digraph characters, but in the fonts I made for them they also wanted the kind of Dutch-specific ligation proposed in this thread.

yanone's picture

At least the lowercase »ij« needs to be replaced as much as professional fonts replace a Turkish version of the lowercase »i« in the locl-feature, because otherwise shortly thereafter those »i«s will get replaced by an »fi«-ligature for instance or some small caps or whatever which might break some semantics.

daverowland's picture

I made a Dutch specific replacement of ij in Gelato Script. I had come to think that this was bad practice, and haven't done it since, even though some of my ij glyphs have been different from a standard i and j together. From now on I'll start putting the language specific replacement in, and I've found proof that it's a good move:

R.'s picture

I was just wondering what a ‘Jiji’ is (apart from the fact that the ligature seems confusing in this word, as ‘ij’ doesn’t form the Dutch digraph ‘ij’).

Té Rowan's picture

It's Kiki's cat in "Kiki's Delivery Service".

Syndicate content Syndicate content