11

Consider the following MWE:

\documentclass{minimal}

\begin{document}

Which kerning do you prefer?


\bigskip


\emph{well willow wallow wellington} %
\verb+  <--- Version 1, default kerning+


\bigskip


\newcommand{\donothing}{\hspace{0pt}}

\emph{wel\donothing l wil\donothing low wal\donothing low wel\donothing lington} %
\verb+  <--- Version 2, Double-lowercase-L's are different+

\end{document}

On my system (MiKTeX 24.4 + TeXWorks 0.6.9, Windows 11, using LuaLaTeX) the two versions give noticeably different output. The line marked "Version 1" has much wider spacing between the double "Italic lowercase-L" characters, than we see in "Version 2". Here is an image of my output:

screenshot of the output

And, a second image where we zoom in on the italic part:

Zoomed in version

Personally I prefer the output in Version 2: it makes the "ill" and "lli" combinations more consistent, plus it just "looks better" to my eye, though I am no expert.

(Adding the \donothing macro in other places, like between the "w" and the "e", has no effect. It's only between the "adjacent l"s that it affects the output. I can also use the same \donothing macro to break ligatures in other examples, like \emph{dif\donothing ferent waf\donothing f\donothing les}, though in that example I would certainly prefer to leave the ligatures intact.)

Questions:

  1. Is "double-italic-lowercase-L" a ligature? I never see it included in lists of ligatures, and it seems that it is not so easy to check.
  2. If it is a ligature, does it mean that the default kerning ("Version 1") was an intentional design choice? Is it considered "better" than Version 2?
  3. If it is not a ligature, why does the \donothing macro alter the output?
2
  • 1
    Short answer: no. I know of no font where “ll” is a ligature.
    – egreg
    Commented Jul 9 at 17:08
  • 5
    @egreg - EB Garamond and Garamond Premier Pro are two OpenType fonts that provide an ll-ligature -- but only in the italic font shape, and only if the font is loaded with the Ligature=Rare option.
    – Mico
    Commented Jul 9 at 19:42

3 Answers 3

13

This a postscript on egreg's answer.

You're confusing ligatures with kerning pairs.

A ligature is a single character1 which automatically replaces a consecutive series of two or more input characters.

  • f+f -> the single character ff
  • ff+i -> the single character ffi
  • -+- -> the single character used to indicate a range of numbers
  • --+- -> the single character used for the longer dash sometimes used to set a clause apart, for example (but -- is also used for this).

Here's an entry for f_f (which is the name of ff in the postscript font) from an intermediate file used in creating a TeX font:

   (STOP)
   (LABEL D 27) (COMMENT f_f)
   (LIG D 105 D 30) (COMMENT i f_f_i)
   (LIG D 108 D 31) (COMMENT l f_f_l)
   (STOP)

A kerning pair is a pair of discrete characters in a font for which some adjustment to horizontal spacing is specified. This might be positive or negative. Kerning pairs are highly font dependent, although certain combinations are more common than others.

  • V+a commonly gets a negative adjustment as the lowercase a can nestle under the arm of the uppercase V to reduce the otherwise gappy-looking space.

Here's an entry from the same file for a kerning pair:

   (STOP)
   (LABEL D 108) (COMMENT l)
   (KRN D 118 R -0.019) (COMMENT v)
   (STOP)

So we have a negative kern specified for a single letter combination for l, though other characters have far more extensive listings.

\donothing prevents both ligature formation and kerning. So the results typeset the ll differently not because this is a ligature, but because \donothing blocks the usual adjustment specified for the kerning pair l+l.

The 'standard' way (I think) to stop the formation of a ligature is to insert \/ as in shelf\/ful where the f+f ought not be replaced by ff.

1As far as TeX is concerned. It doesn't actually have to be a single character because it may be constructed from two or more other characters or in some other way.

6
  • 2
    If you look at a texbook (after the first couple of editions) you will see a footnote warning {} doesn't always work and recommending \/ : "In fact, the latter idea---to insert an ^{italic correction}---is preferable because \TeX\ will ^^|\/| reinsert the ff ligature by itself after ^{hyphenating} |shelf{}ful|. " Commented Jul 9 at 18:06
  • @DavidCarlisle corrected. thanks.
    – cfr
    Commented Jul 9 at 19:18
  • 1
    Another way to suppress a ligature "on the fly" is to insert \kern0pt between the letters in question.
    – Mico
    Commented Jul 9 at 20:08
  • @DavidCarlisle Apparently I need 2 edits to change 4 characters ....
    – cfr
    Commented Jul 9 at 21:03
  • 1
    In your first two bullet points, is there some reason that you are using ff to represent the single character , and likewise ffi for ? Commented Jul 11 at 7:34
8

No, there is no “ll” ligature. The font designer (D. Knuth) decided to add some positive kerning between consecutive l's in cmti10:

(CHARACTER C l
   (CHARWD R 0.255554)
   (CHARHT R 0.694445)
   (CHARIC R 0.103334)
   (COMMENT
      (KRN C l R 0.051111)
      )
   )

Personal opinion: I find your unkerned version really bad. Not that I particularly like Computer Modern Italic, though.

Why \donothing suppresses kerning? Because of TeX rules: after the first l you insert a zero width glob of glue. Glue or explicit kerns will disallow implicit kerning defined in the font.

8

The only fonts I know of that provide an ll-ligature are EB Garamond and Garamond Premier Pro -- but only in the italic font shape, and only if the Ligature=Rare option is employed in a suitable \setxxxxfont directive. (Garamond Premier Pro is distributed automatically with MacOS; I don't know if it's distributed with other operating systems.)

I believe ll is used as a digraph in Spanish, in words such as llamar and pollo. (In Mexican Spanish, and possibly other Spanish variants, the ll digraph is pronounced like a voiced y in English -- as in yes and yellow. See @egreg's comment below for further pronunciation possibilties.)

enter image description here

% !TEX TS-program = lualatex
\documentclass{article}

\usepackage[spanish]{babel} % optional
\usepackage{fontspec} % for '\setmainfont' directive
\setmainfont{EB Garamond}[Ligatures={Common,Rare}]

\begin{document}
se llamar 

\textit{se llamar, se l\kern0pt lamar}
\end{document}
6
  • 6
    Interesting. By the way, the pronunciation of the digraph “ll” in Spanish depends on the dialect. The traditional Castilian pronunciation should be /ʎ/ like in Italian foglia (we use the trigraph “gli” or the digraph “gl” if a pronounced “i” follows), called lleísmo. But in other Spanish dialects it can be /ʝ/ or /j/, called yeísmo, or /ʒ/ (zheísmo) or also /ʃ/ (sheísmo).
    – egreg
    Commented Jul 9 at 20:08
  • @egreg - Thanks for this follow-up. I'll edit my answer to reflect that I was thinking mainly of the Mexican-Spanish pronunciation variant. :-)
    – Mico
    Commented Jul 9 at 20:11
  • 1
    Yes, in Mexico yeísmo is more common; Argentina and Uruguay go mostly with zheísmo or (recently) sheísmo.
    – egreg
    Commented Jul 9 at 20:20
  • 4
    In Welsh, ll is a single letter (cc. @egreg). In terms of sound, it's the one English speakers seem to struggle most with. Which renders the Welsh for 'England' unpronouncable by the English ;).
    – cfr
    Commented Jul 10 at 0:17
  • @cfr a clever trick to confuse us when you're talking about our homeland? (Dw i'n Saesneg ond dw i'n dysgu Cymraeg)
    – Chris H
    Commented Jul 10 at 20:45

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .