Я знаю, что преобразование --- в длинное тире — это постоянная проблема с lualatex. Но я не понимаю, почему использование греческого в одном шрифте должно (впоследствии) нарушить преобразование 3 дефисов в длинное тире в другом.
Вот мой код:
%!TEX encoding = UTF-8 Unicode
\documentclass{article}
\usepackage{fontspec}
\usepackage{ednotes}
\setmainfont[Ligatures=TeX]{Linux Libertine O}
\setsansfont[Ligatures=TeX,Scale=MatchLowercase]{TeX Gyre Heros}
\setmonofont[Scale=MatchLowercase]{Inconsolata}
\newfontfamily\myGk[Script=Greek,Scale=MatchUppercase,Ligatures=TeX]{Cambria}
%\newfontfamily\myGk[Script=Greek,Scale=MatchUppercase,Ligatures=TeX]{Linux Libertine O}
\newcommand\textgreek[1]{\myGk\emph{#1}}
\begin{document}
\fontsize{11.5}{13}\selectfont
This is a test---to see if dashes are being converted to emdashes.
\textgreek{Ἐν ἀρχῇ ἦν ὁ λόγος}
This is a test---to see if dashes are being converted to emdashes.
\end{document}
Для меня, если я запускаю код выше как есть, вторая фраза "This is a test..." выводится с тире вместо длинного тире. Если я использую шрифт Linux Libertine O для греческого, у меня нет этой проблемы.
Может кто-нибудь подскажет, как использовать шрифт Cambria Greek (который мне больше нравится), не нарушая тире в основном шрифте? Я использую TeXLive 2012 с Mac TeXShop.
решение1
сохраняем определение локально:
\newcommand\textgreek[1]{{\myGk\emph{#1}}}
% {{...}}
решение2
Я думаю, что решение довольно очевидно, поскольку это немного моя вина. (Извините!)
Когда я впервые опубликовал свой ответ на ваш предыдущий вопросздесь, я допустил небольшую ошибку, которую я позже исправил. Однако вы не использовали обновленную версию моего ответа. Эта ошибка, похоже, и является причиной вашей нынешней проблемы.
Вам нужно использовать это:
\newcommand{\textgreek}[1]{\bgroup\myGk\emph{#1}\egroup}
Видите ли, команды шрифта для греческого шрифта теперь заключены в bgroup ... egroup. Без этого греческий шрифт используетсядля остальной части документаи не только для нескольких греческих слов.
Поскольку тире не является частью вашего греческого шрифта, он его не набирает. В настоящее время я не могу проверить свое предположение, но я почти уверен, что это оно.
По сути, это очень похоже на решение Герберта, но — на мой взгляд — более элегантно и, возможно, в некоторых крайних случаях даже более безопасно в использовании.