I'm designing a display typeface and having some trouble deciding how to implement the uppercase Dutch digraph "IJ". I have designed a ligature that combines the "I" and "J" to form what looks like a broken "U".

Here is a comparison of my "IJ" ligature against the distinct "I" and "J" glyphs:

enter image description here

According to Wikipedia, an "I" followed by a "J" doesn't always form a digraph; would the ligature still be acceptable in those cases, or would that be considered incorrect?

I'm going to include the ligature in the font, there is no question there, my only problem is how to implement it and make it available to users through OpenType features and the use of the IJ Unicode character. How should I consider the language/locale of the user? Should the ligature be the default;

  • e.g. used for the "IJ" character and as a standard ligature (OpenType feature liga) for "I"+"J"?

Or an optional stylistic alternative;

  • e.g. stylistic alternate (OpenType feature salt) for the "IJ" character and a discretionary ligature (OpenType feature dlig) for "I"+"J"?

Note, I'm asking about the technical implementation (through OpenType features) here; For critique of the ligature design itself see Is this Dutch IJ ligature suitable and readable to native speakers?.

  • 1
    I don't know dutch so can't help you with that. Only suggestion would be to maybe try making the I taller and the hook of the J shorter to balance them out a bit more. Right now the J is dominant.
    – DA01
    Dec 30, 2016 at 0:47
  • I did that to a degree as you can see, everything in the typeface aligns to a few grid lines so it was a choice between what it is now or (almost) no hook. I felt that was the best option but it's certainly something to think about again, thanks!
    – Cai
    Dec 30, 2016 at 0:59
  • @Wrzlprmft I've made some edits to focus more on the implementation, I'll take your suggestion and ask another question to critique the suitability of the ligature itself
    – Cai
    Dec 30, 2016 at 10:28
  • I see that you indeed did what @DA01 suggested but i would take it one step further and make it even more pronounced. maybe push it fluch with teh nding hook?
    – joojaa
    Dec 30, 2016 at 10:37
  • 1
    @joojaa your comment would be more appropriate here :)
    – Cai
    Dec 30, 2016 at 11:00

1 Answer 1


Assuming that your IJ glyph is appropriate to the Dutch eye (which I cannot tell), it should be used as a ligature for I+J by default for Dutch texts.

While you can restrict every OpenType feature to specific locales, the arguably best way to do this would be via the feature locl, which is specifically reserved for such purposes. The OpenType cookbook uses this very case as an example:

feature locl {

    script latn;

        language NLD exclude_dflt;
            lookup DutchIJ {
                sub I J by IJ.dutch;
            } DutchIJ;

} locl;

If the user properly sets the locale of the text, this should ensure that the ligature is used in Dutch text, but not for any other language. (Sidenote: It should not be activated for Afrikaans, as the absence of IJ is one of the distinguishing features of Afrikaans orthography.)

I do not see any reason to not use your ligature for the IJ Unicode character (U+0132), as there is no legitimate use of this character outside the Dutch language and in Dutch it should not be used for the exceptions.

According to Wikipedia, an "I" followed by a "J" doesn't always form a digraph; would the ligature still be acceptable in those cases, or would that be considered incorrect?

It would be considered incorrect, but such cases are the exception. Also such exception exist for almost every ligature. E.g., in German, you would not have the typical ligatures involving the letter f in the composite words such as Auffahrt or Kaufleute.

There are two ways to deal with this:

  • The user has to use a zero-width non-joiner (ZWNJ) to suppress the ligature in cases, where it’s not intended, i.e., write FI|JI instead of FIJI (with | indicating the ZWNJ). If you expect your fonts to be used by non-professionals, you should arguably instruct them on this.

  • The exceptions are hard-coded into the font. Given that exceptions are rare in this case, this is rather feasible. In this article (which is a great source on the IJ in general, by the way), the Dutch type foundry Underware states that this is what they are doing. While such a hard-coding may capture the vast majority of exceptions, it cannot be perfect, e.g., it cannot possibly cover all proper names in the world.

    Also, this is arguably nothing that should be handled by font features, but by dictionaries and the end user.

  • Surely Underware's "In Dutch the ij is a digraph, or – if you prefer – a ligature..." is wrong? A ligature is a pure presentational form. No room for preferences; in orthographic terms it's a digraph ("a pair of characters used in the orthography of a language to write [..] a single phoneme (distinct sound)" (source). As a character, it is more than just another ligature, and it's just like the æ is "originally a ligature representing a Latin diphthong" (source), a full Character of its own.
    – Jongware
    Dec 31, 2016 at 0:21
  • 2
    @RadLexus: Well, there are inevitable grey zones and overlaps between character, ligature, and digraph. E.g., nothing switches from being treated as two separate characters to being treated as a single character over night – such a process usually takes several centuries. The ij is somewhere in between. It sometimes has a specific shape (ligature), but often doesn’t; it is treated as a single character in many respects but as two separate characters in others. Anyway, what does this have to do with the answer?
    – Wrzlprmft
    Dec 31, 2016 at 8:51
  • 2
    Ah, it was just a tangent on your excellent answer! The article is very good and covers the potential problems well.
    – Jongware
    Dec 31, 2016 at 10:43
  • sub IJ by IJ.dutch by itself doesn't make sense because IJ is not used in actual Dutch texts, I followed by J is typed – I assume this is in addition to a ligature substitution? Oct 13, 2020 at 6:36
  • @AdamJagosz: Yeah, that’s weird. Of course you could theoretically have one IJ ligature for normal use and one special IJ ligature for Dutch, but I rather guess that there’s a space missing here. See my edit.
    – Wrzlprmft
    Oct 13, 2020 at 8:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.