次の MWE は、TexLive 2019 で実行すると失敗します。TeXLive 2017 および 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}
Overleaf エンジンを使用する (それが重要である場合)。ここでの例は DejaVu を使用していますが、 (2019 年) David CLM
、、Simple CLM
またはMiriam Mono CLM
(2018 年では動作します) を使用した場合にも問題が発生します。
私が受け取ったエラーは(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.
...
答え1
問題を見つけたようです。これはバグではなく、機能です。TeXLive 2019 の Polyglossia は単純に動作が優れています。
ドキュメントクラスには sans オプションがありますが、ヘブライ語には sans フォントが定義されていません。\newfontfamily\hebrewfont{}
を に置き換えると、 \newfontfamily\hebrewfontsf{}
「問題」は解決しました。
TeXLive 2017 (および 2018) では、documentclass
定義はデフォルト (英語) フォントにのみ適用されました。 が\newfontfamily\hebrewfont{}
定義されてから\texthebrew{}
コマンドが使用されると、デフォルトで定義されたフォントが実際に使用されます。
TexLive 2019 では、sans オプションが宣言されて以来、\texthebrew{}
が呼び出されると、polyglossia は sans ファミリー フォントを探しました。 で定義されているように、documentclass
特に定義されていない限り、ドキュメントは sans でなければならないためです。
次の MWE はその違いを示しています。
\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}
TexLive 2017 による出力は次のとおりです。
TexLive 2019 の出力は次のようになります。
質問の MWE には sans フォントが定義されていなかったため、エラーが発生しました。