TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

Using XeLaTex and OpenType font Goudy Bookletter 1911, the command \ldots{} produces ❏ (without shadow).

My question is: why XeLaTeX does not find automatically a substitute ?

I guess that this square is meant to replace a character not present in font. With fontmatrix I can verify that the character U+2026 (ellipsis) is not present.

Here is the test case:

\setromanfont{Goudy Bookletter 1911}


Trois petits points \ldots{}


Now (epilogue question), I modify the test case to use the package babel.

Insert this line after the first:


and the three dots are produced correctly. Hopefully this is the behavior expected. But, why this difference ?

share|improve this question
up vote 3 down vote accepted

The difference is that xunicode (that's loaded by the fontspec package, in the up-to-date TeX distributions, so it doesn't need to be loaded explicitly) defines \ldots to be


in text mode, while the french module for babel defines it to give


which sets the three dots "by hand", rather than relying on a particular glyph.

You can solve the problem of the missing character by saying


in the document preamble (which is what french does). Then

Three little dots~\ldots

will give what's wanted.

share|improve this answer
Thank you for this info. Your workaround works well when [french]{babel} is not used. For any font. – Couannette Dec 7 '12 at 10:11

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

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