I’ve just installed TeX Live 2012. As mentioned elsewhere on this site, the release history explains that “the parameter \XeTeXdashbreakstate is set to 1 by default, for both xetex and xelatex. This allows line breaks after em-dashes and en-dashes, which has always been the behavior of plain TEX, LATEX, LuaTEX, etc.”
I rarely use xetex; I’ve worked almost exclusively with luatex since the release of TeX Live 2011. The only frequent problem I had was that I did not get line breaks after em-dashes, and now in 2012 I’m still not getting them, unless I refrain from using the Unicode character — which certainly seems against the spirit of luatex.
Consider this example, where the same paragraph is typed 3 times, with the em-dashes entered differently in each:
\documentclass[11pt,a5paper]{book}
\usepackage{fontspec,microtype}
\setmainfont[Ligatures=TeX,RawFeature={protrusion=default}]{TeX Gyre Termes}
\pdfprotrudechars=2
\usepackage[showframe]{geometry}
% Will Robertson’s macro from https://tex.stackexchange.com/questions/34608/
\DeclareRobustCommand\dash{%
\unskip\nobreak\thinspace\textemdash\allowbreak\thinspace\ignorespaces}
\pdfpagewidth=\paperwidth
\pdfpageheight=\paperheight
\pdfinfo{/Title (Jeeves Takes Charge) /Author (P.G. Wodehouse)}
\begin{document}
% using ---
Now, touching this business of old Jeeves---my man, you know---how do we
stand? Lots of people think I’m much too dependent on him. My Aunt
Agatha, in fact, has even gone so far as to call him my keeper. Well,
what I say is: Why not? The man’s a genius. From the collar upward he
stands alone.
% typing the em-dash (easy in utf-8 locale with compose key)
Now, touching this business of old Jeeves—my man, you know—how do we
stand? Lots of people think I’m much too dependent on him. My Aunt
Agatha, in fact, has even gone so far as to call him my keeper. Well,
what I say is: Why not? The man’s a genius. From the collar upward he
stands alone.
% using Will Robertson’s macro
Now, touching this business of old Jeeves\dash my man, you know\dash how do we
stand? Lots of people think I’m much too dependent on him. My Aunt
Agatha, in fact, has even gone so far as to call him my keeper. Well,
what I say is: Why not? The man’s a genius. From the collar upward he
stands alone.
\end{document}
The result looks like this:
I’ve experimented with various free and commercial fonts, always with the same result.
Is there some luatex equivalent to \XeTeXdashbreakstate which I could set?
---
it is treated as a ligature of hyphens and thus have line breaks like hyphen, but not with the Unicode character. In XeTeX---
was being mapped to the Unicode character, so there was no breaks in both cases.---
as a mere convenience, as a way to get an em-dash even if stuck in an ASCII environment. I didn’t realize that---
was a sort of super-em-dash, an em-dash plus other nice features which don’t belong to em-dashes as such.---
is merely a side effect of the way it is implemented in TeX; a ligature of hyphens, try entering it directly in legacy TeX (\char124
with Computer Modern), no line breaks.