I'd like to use the most modern version of the Computer Modern fonts for XeTeX [or anything newer, of course] with the FontSpec package. Currently, I'm using
\setromanfont{CMU Serif}
However, this produces odd results with certain characters, e.g. --
or '
in italic text (created with \emph
), e.g. ὔ
instead of '
. The problem isn't there when I use Latin Modern Roman or Linux Libertine O, but [with Latin Modern Roman] foreign characters don't show up.
(Sure, Linux Libertine is beautiful, but I want something a little less classy for normal documents :). )
I'm also using polyglossia, LyX, and a small script to remove LyX output errors, if it matters. I've looked at the TeX file and it seems fine.
Edit 1
Here's a minimal example, sorry for not providing this earlier.
\documentclass{article}
\usepackage{xunicode,fontspec,xltxtra}
\defaultfontfeatures{Mapping=tex-text,Scale=MatchLowercase}
\setromanfont{CMU Serif}
\setsansfont{CMU Sans Serif}
\setmonofont{CMU Typewriter Text}
\begin{document}
\emph{hello -- a'b}
\end{document}
The render I get using xelatex is this:
Edit 2
Files used are here, thanks for the help all.
Best Answer
Apparently this bug is caused by the
mapping=tex-text
option (and itsLigatures=TeX
equivalent), which translates things like--
into the en-dash, and so forth. I can't seem to find any related bugs using Google...