O seguinte MWE falha quando executado com TexLive 2019. Funciona com TeXLive 2017 e 2018.
\documentclass[english,sans]{moderncv}
\moderncvstyle{banking}
\usepackage[unicode]{hyperref}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{hebrew}
\firstname{J}
\lastname{D}
\title{T}
\newfontfamily\englishfont[Language=English,Script=Latin]{Latin Modern Sans}
\newfontfamily\hebrewfont[Language=Hebrew,Script=Hebrew]{DejaVu Sans}
\begin{document}
\makecvtitle{}{}
Lorem ipsum and such
\texthebrew{לורם איפסום}
\end{document}
Usando o mecanismo de verso (se isso for de alguma importância). O exemplo aqui é com DejaVu, mas o problema também surge (em 2019) usando David CLM
, Simple CLM
, ou Miriam Mono CLM
(funciona em 2018).
O erro que recebo é (não sei o quanto isso significa em Latex)
! Package polyglossia Error: The current latin font DejaVuSans(0) does not cont
ain the "Hebrew" script!
(polyglossia) Please define \hebrewfont with \newfontfamily comm
and.
See the polyglossia package documentation for explanation.
Type H <return> for immediate help.
...
Responder1
Parece que encontrei o problema: não é um bug, é um recurso. A poliglossia no TeXLive 2019 simplesmente funciona melhor.
A documentclass tem uma opção sans, mas nenhuma fonte sans está definida para o hebraico. Substituir \newfontfamily\hebrewfont{}
por \newfontfamily\hebrewfontsf{}
resolveu o "problema".
No TeXLive 2017 (e 2018), a documentclass
definição se aplica apenas à fonte padrão (inglês). Se \newfontfamily\hebrewfont{}
fosse definido e \texthebrew{}
o comando usado, então a fonte definida padrão seria de fato usada.
No TexLive 2019 desde que a opção sans foi declarada, quando \texthebrew{}
se chamava polyglossia procurou a fonte da família sans. Porque, conforme definido no documentclass
, o documento deve estar in sans, a menos que seja definido de outra forma.
O seguinte MWE demonstra a diferença.
\documentclass[english,sans]{article} %<--- The document default is defined as sans
\usepackage[unicode]{hyperref}
\usepackage{polyglossia}
\setdefaultlanguage{english}
\setotherlanguage{hebrew}
\newfontfamily\hebrewfont[Language=Hebrew,Script=Hebrew]{David CLM} %<--- notice David
\newfontfamily\hebrewfontsf[Language=Hebrew,Script=Hebrew]{DejaVu Sans}%<--- notice Sans
\begin{document}
Lorem ipsum and such
\textsf{\texthebrew{עברית בסנס}}
\texthebrew{עברית רגיל}
\end{document}
A saída com TexLive 2017 é a seguinte:
A saída com TexLive 2019 é esta:
O MWE na pergunta não tinha uma fonte sans definida, então recebi um erro.