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.– topskipApr 26, 2012 at 10:58
-
6Also see How to look up a symbol?– CaramdirApr 26, 2012 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 LaudunJan 9, 2013 at 3:45
-
1Just came here for an answer, since the em dash looked like a space in the PDF previewer I was using. Turns out the font just had a very thin line for a dash. I embiggened the previewer, and voila!--there were the em dashes! In case someone else has the same issue.– Mike MaxwellNov 8, 2021 at 21:50
5 Answers
The LaTeX command for such a line are three small ones: ---
-
133
-
13
-
10@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—
. Apr 28, 2012 at 9:54 -
5This is not a LaTeX command and it doesn't work universally: scripts.sil.org/cms/scripts/page.php?item_id=xetex_faq#ligs Feb 14, 2013 at 9:41
-
11If 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.– SverreSep 25, 2013 at 15:08
The question has already been answered, but for completeness' sake:
- Hyphen:
-
- En-dash:
--
- Em-dash:
---
-
15
-
22Donald Knuth, for completeness, adds the fourth one, the mathematical minus sign, $-$. (The TEXbook, page 4.)– Pål GDMay 15, 2013 at 14:57
-
3Using xelatex (
XeTeX, Version 3.1415926-2.4-0.9998 (MiKTeX 2.9)
) this does not work. Two hyphens just come out as two hyphens.– MarcinSep 10, 2013 at 21:01 -
4
-
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}
% and/or - see comments
\defaultfontfeatures{Ligatures=TeX}
This will emulate substitution of unicode characters for certain "latex standard" ligatures which are present as ordinary unicode characters in modern fonts.
-
5It'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}
.– egregSep 25, 2013 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 withXeLaTeX
and I don't get the---
emdash effect at all. I'm considering asking a separate question, but perhaps I'm overlooking something obvious.– PatrickTApr 30, 2016 at 12:06 -
1
-
-
! Fatal Package fontspec Error: The fontspec package requires either XeTeX or LuaTeX.
- FWIW– i336_Mar 25, 2021 at 7:51
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 used the command to achieve long dash
\textemdash
For example:
2021 \textemdash \ The Capability of Wavelet Convolutional Neural Network for Detecting Cyber Attack of Distributed Denial of Service in Smart Grid, ICCWAMTIP, (EI)
-
2