# What is the LaTeX command for “em dash” (—)?

I am trying to insert the symbol in the title of the question, which I copied from a PDF article, but it appears as space in the output file. What is the corresponding LaTeX command?

• Probably the input encoding does not have the em dash configured. I'd suggest to use the solution by Keks Dose. – topskip Apr 26 '12 at 10:58
• Also see How to look up a symbol? – Caramdir Apr 26 '12 at 20:51
• If my typographer's memory serves me, the first item in the list above is not known as a hyphen but as a tee dash. (Or was it simply a matter of tee spaces, en spaces, and em spaces?) Gosh, I used to all know this back when I did actual physical typography... – John Laudun Jan 9 '13 at 3:45

The LaTeX command for such a line are three small ones: `---`

• Alternatively `\textemdash`. – Torbjørn T. Apr 26 '12 at 15:20
• Or use Xe/LuaLaTeX and just type `—`. – Caramdir Apr 26 '12 at 20:48
• @Caramdir: You don't even have to use Xe/LuaLaTeX; pdfLaTeX with `\usepackage[utf8]{inputenc}\usepackage[T1]{fontenc}` works fine for directly inputting an em dash `—`. – doncherry Apr 28 '12 at 9:54
• This is not a LaTeX command and it doesn't work universally: scripts.sil.org/cms/scripts/page.php?item_id=xetex_faq#ligs – Roman Cheplyaka Feb 14 '13 at 9:41
• If you're using Unicode fonts (i.e. you're using XeTeX or LuaTeX), just add `Ligatures = TeX` as a font option. You need that for any of the typical TeX conversions such as `````, `'`, `--` etc. – Sverre Sep 25 '13 at 15:08

• Hyphen: `-`
• En-dash: `--`
• Em-dash: `---`
• To avoid misunderstandings, I like to call the first one (`-`) a hyphen, because it's usually not used as a dash. In Unicode it's called Minus-hyphen, that's the one normal keyboards enter. (Unicode also has a symbol called Hyphen. – doncherry May 1 '12 at 13:13
• Donald Knuth, for completeness, adds the fourth one, the mathematical minus sign, \$-\$. (The TEXbook, page 4.) – Pål GD May 15 '13 at 14:57
• Using xelatex (`XeTeX, Version 3.1415926-2.4-0.9998 (MiKTeX 2.9)`) this does not work. Two hyphens just come out as two hyphens. – Marcin Sep 10 '13 at 21:01
• @Marcin Add `Ligatures = TeX` as an option when you load your font. – Sverre Sep 25 '13 at 15:09
• @Sverre Did you get that from my answer? – Marcin Sep 25 '13 at 17:00

The latex commands are:

• Hyphen: `-`
• En-dash: `\textendash`
• Em-dash: `\textemdash`

With the latter two, you will likely want to append `{}`, because they swallow following space.

If you want to use the ligatures `--` and `---` with standard unicode fonts, use:

``````\usepackage{fontspec}
\defaultfontfeatures{Mapping=tex-text}
• It's preferable to use the `Ligatures=TeX` version, which works both with XeLaTeX and LuaLaTeX, while the other (older) version can't be interpreted by LuaLaTeX. The option can also be used when defining a specific font with `\setmainfont`, `\newfontfamily` and similar commands; it's not necessary to use `\defaultfontfeatures`. If one uses it, probably a declaration `\setmonofont` should go before `\defaultfontfeatures{Ligatures=TeX}`. – egreg Sep 25 '13 at 16:03
• Question to anyone following this thread. Are there any known package clashes? I have `\usepackage{fontspec}` with `\defaultfontfeatures{Ligatures=TeX}` with `\usepackage{libertine}` and I compile with `XeLaTeX` and I don't get the `---` emdash effect at all. I'm considering asking a separate question, but perhaps I'm overlooking something obvious. – PatrickT Apr 30 '16 at 12:06
• package clash with `\usepackage{xesearch}` apparently... – PatrickT Apr 30 '16 at 13:14
In some contexts it is appropriate to put thin spaces around an em dash, e.g., `\,---\,`. I defer to the Chicago Manual of Style and Bringhurst on typography for more.
• I use full on spaces, like `{ }---{ }`. – hatmatrix Dec 24 '17 at 21:21