Stressed ij digraph — Best practice?
Kent Lew
Posts: 934
A question, primarily for our Dutch friends:
Is every instance where í is followed by j in Dutch going to necessarily be a stressed ij digraph?
Is there a preferred solution for deploying a special precomposed glyph with double accents for the stressed digraph?
Or is it best to just count on the user to input /iacute/j/acutecmb if they specifically want a properly stressed ij (and handle it with a contextual decomposition of the j and subsequent mark positioning of the /jdotless/acutecmb sequence)?
Any thoughts about best practice are welcome.
Is every instance where í is followed by j in Dutch going to necessarily be a stressed ij digraph?
Is there a preferred solution for deploying a special precomposed glyph with double accents for the stressed digraph?
Or is it best to just count on the user to input /iacute/j/acutecmb if they specifically want a properly stressed ij (and handle it with a contextual decomposition of the j and subsequent mark positioning of the /jdotless/acutecmb sequence)?
Any thoughts about best practice are welcome.
1
Comments
-
Is every instance where í is followed by j in Dutch going to necessarily be a stressed ijdigraph?
No, but it is extremely rare if you can assume that the language indeed is Dutch. The one example that is being repeated is ‘Fúji? Nee, Fíji.’ IIRC, Dutch orthography requires the hyphenation of i-j at borders of composed words if it is not the lange ij, e.g., safari-jeep or gummi-jas.
As for the preferred solution, I implement both. It should certainly be inserted in the ‘Unicode-correct’ way, no doubt. But there is no comfortable way for most users to enter the correct Unicode sequence, and some environments do not support ccmp and/or mark position properly. So, the precomposed digraph (/iacute_j.NLD) is more compatible for the way people will use it.
There also is another option, preferred by some, namely to add a precomposed /jacute, and replace /j with it after an /iacute. This makes tracking possible. But personally, I prefer the /iacute_j.NLD solution, exactly because it does not track (and I think most people will agree that it shouldn’t).1 -
There also is another option, preferred by some, namely to add a precomposed /jacute, and replace /j with it after an /iacute. This makes tracking possible. But personally, I prefer the /iacute_j.NLD solution, exactly because it does not track (and I think most people will agree that it shouldn’t).
Or you could call the glyph /j.acute instead of /jacute, in which case it still counts as a /j but looks right.
1 -
But personally, I prefer the /iacute_j.NLD solution, exactly because it does not track (and I think most people will agree that it shouldn’t).4
-
More Dutch chiming in: I agree with Albert-Jan. The few cases where IJ/ij should be a deliberate ligature are in signpainting, vertically stacked settings, and as a purely stylistic choice. It’s far from the default. By default, tracking is preferred.1
-
Recent versions of FF DIN support jacute though. Officially, there is no need for a jacute either. Especially because in bolder weights and in tightly spaced headlines, the combination iacute j suffers from the acute on the i cluttering with the dot on the j, I decided that it would be a good idea to add the jacute. It is supported through a feature.0
-
But personally, I prefer the /iacute_j.NLD solution, exactly because it does not track (and I think most people will agree that it shouldn’t).
And I’m someone Dutch who actually does agree with that. ;-) If one makes a i_j ligature I would slightly negatively kern the space in between the elements, to make it more or less one letter. For instance Thomas Milo is convinced that the ij is the 27th letter of the Dutch alphabet.
1 -
Thanks, everyone, for commenting.
No, but it is extremely rare if you can assume that the language indeed is Dutch. The one example that is being repeated is ‘Fúji? Nee, Fíji.’
Given this, would it make sense to not put any such rules in {locl} — which is usually not turn-offable — and instead register it as language-specific within the {calt} or {liga} (depending upon which strategy one adopts)?
That way, in the rare case where the general assumption about the digraph is not accurate, there is at least the option for the user to override.
For example:feature calt {
script latn;
language NLD;
sub Iacute J' by J.acute;
sub iacute j' by j.acute;
} calt;And in this jacute paradigm, I would also include a lookup in {ccmp}:
feature ccmp {
This {ccmp} would have to precede the {calt} so that in the case of the /iacute/j/acutecmb input sequence, the j.acute substitution intercepts the j before it gets targeted by the contextual substitution (which would leave an orphaned acutecmb visible in the rendered text).
sub J acutecmb by J.acute;
sub j acutecmb by j.acute;
} ccmp;
And, I suppose, if there is a preceding {ccmp} rule to decompose j followed by marksAbove, then the {ccmp} substitution would need to account for dotlessj acutecmb also or instead.
Thoughts?
0 -
If one makes a i_j ligature I would slightly negatively kern the space in between the elements, to make it more or less one letter. For instance Thomas Milo is convinced that the ij is the 27th letter of the Dutch alphabet.
4 -
The solution I'm currently using in Cormorant is this:
— In loclNLD, replace i and j by i.loclNLD and j.loclNLD in LOCL. This blocks /fi ligatures and the likes and primes these letters for what's to come.
— In CALT, replace j.loclNLD after iacute by j.acute. This only happens when loclNLD is active, since j.loclNLD doesn't occur otherwise.
— In DLIG, replace iacute j.acute by the iacute_jacute ligature (for those who like ligatures).
This should work correctly out of the box for most situations. For Fíji, one can simply deactivate CALT on that word. The ligature only appears when you deliberately switch it on.
0 -
This is not an exclusively Dutch issue. Consider the use of æ in Danish, for instance.
It seems to me that tracking/letterspacing is a circumstance which clarifies best practice.
Which is best, 2, 3, or 4?
0 -
I recently looked to follow this, but without the hard coded exceptions. Leaving that responsibility to the user.
http://www.underware.nl/blog/2014/10/typesetting-the-dutch-ij/
0 -
Christian — That is a clever approach to intercepting the f_i ligation. Not unlike the i.TRK solution. The downside is the preponderance of duplicated “dummy” glyphs. Worthy of contemplation, though. Thanks.
0 -
For instance Thomas Milo is convinced that the ij is the 27th letter of the Dutch alphabet.0
-
Maybe put a single acute in the middle?0
-
If it were, why would it have two acutes when stressed?
It is actually allowed (mainly for technical reasons –although it looks better too IMHO) to put an acute only on the i: https://onzetaal.nl/taaladvies/advies/klemtoonteken-nadrukteken
0 -
What exactly is the best method is mostly depending on the design of the typeface, and for instance also the (restrictions of the) system it was made for initially. A capital J that is (more or less) standing on the baseline will require a different treatment than a J that has a descending part below the baseline. In the illustration below you’ll find DTL Haarlemmer (on the left) and Times.
In the first, second, and fourth row there is the default spacing. In the third row the space between the i and j has been reduced by 10/1000 units. The type in the fifth row has been tracked with 100/1000 units. In the sixth row no tracking only for the I_J and in the seventh row I applied some optical corrections on the I_J and E_N combinations.
1 -
I think there are two issues in this discussion that get mixed up:
- The shape and/or preferred spacing of the /IJ and /ij digraph on unicode positions 0x0132 and 0x0133.
- How to apply the Dutch rules of emphasis on the ij combination. Whether it is encoded as a digraph or not.
Point 1 has been discussed at length already at other places, and as demonstrated in this thread there is no consensus among Dutch type designers and typographers about the ideal shape or spacing. Depending on the design of the typeface I might decide to draw a special uppercase /IJ digraph. In some cases I might even add a dedicated shape for the lowercase /ij digraph although that has been quite rare.
On the other hand in almost all typefaces so far I’ve put a dedicated kerning pair for the /i/j combination to put them it a little bit tighter.
With regard to point 2 – the rules for emphasis are very clear and explained on https://onzetaal.nl/taaladvies/advies/klemtoonteken-nadrukteken. Vowels that consist of more than one letter will have an accent on each letter: dóé, gewóón, úít, nóú.
Therefore the /i/j combination shall not be treated any differently.
2 -
Thanks Rob and Albert Jan, I stand corrected. The handful of Dutch typographers I know have been communicating it this way to me, and from these conversations, I have had the impression that the people who prefer tracking in this case were a small minority.0
-
Christian inadvertently brought up a third point about the ij digraph (and I’m talking about unstressed now) that I had not previously considered, and I’d welcome any additional thoughts about the matter — f-ligation and the Dutch ij combination.
Do any of the rest of you make a localized effort to intercept ligation with the i when it is part of a Dutch /i/j sequence?
I think the issue would be fairly straightforward in the case where the encoded ij has been entered into the text stream intentionally. At that point it is easy to target and becomes more of a design question than a feature-coding challenge.
But otherwise, . . . ? Should the i.NLD become a regular strategy, like the i.TRK?
Is there a consensus on just how terrible it is to have an f_i ligature getting into what should otherwise be an ij digraph? Or has the average Dutch reader just come to accept that nowadays and it’s not worth jumping through hoops to prevent. Should we be leaving it to the typographer to enter an encoded digraph if she wants to reliably avoid the ligation? (And then address the fitting of the /f/ij combination either with a contextual alternate or kerning.)
0 -
I have never, as a native reader, misread a collation of /f/i and /i/j as anything else than ‘fij’. I think the significant difference with the Turkish i is ignored here: we don’t have a dotless i, so ligating /f/i is not that ‘dangerous’. And for sensibility’s sake, I think most people (should) have an alternate /f when paired to /iacute and other diacritics. Or, if you’re wary of support for contextual alternates, the inverse.2
-
Should the i.NLD become a regular strategy, like the i.TRK?
You mean the j.NLD?0 -
No, in this case I meant i.NLD to provide a potential target to prevent ligation. For example,
feature locl {
Which could then prevent f-ligation with ij digraph when entered as /i/j sequence. (But, of course, also when not intended as digraph — e.g., bijoux.)
script latn;
language NLD;
sub i' j by i.NLD;
} locl;
I’m not necessarily advocating. I was just asking, since it came up in Christian’s example.
Rob says that he doesn’t feel that the f-ligation with ij digraph needs to be avoided. I’d be interested to hear other opinions (or see more Agree flags on Rob’s post).
0
Categories
- All Categories
- 40 Introductions
- 3.7K Typeface Design
- 796 Font Technology
- 1K Technique and Theory
- 615 Type Business
- 444 Type Design Critiques
- 539 Type Design Software
- 30 Punchcutting
- 136 Lettering and Calligraphy
- 83 Technique and Theory
- 53 Lettering Critiques
- 482 Typography
- 301 History of Typography
- 114 Education
- 67 Resources
- 495 Announcements
- 79 Events
- 105 Job Postings
- 148 Type Releases
- 162 Miscellaneous News
- 269 About TypeDrawers
- 53 TypeDrawers Announcements
- 116 Suggestions and Bug Reports