
2 つの列挙環境をネストしようとしています。2 つ目の環境を 1 つ目の環境の中に入れています。xgreek パッケージを使用しており、2 つ目の列挙を (α')、(β')、(γ') などとして生成します。ただし、2 つの GFS フォント (Elpis と Heraklit) を使用すると、列挙内の ' に関する問題が発生します。
ネストされた列挙を含む.texファイルが50個以上あるため、自動的な方法で実行し、ネストされた列挙ごとにラベルを追加する必要がないようにしたいと考えています。この郵便受け。
MWE:
\documentclass[12pt]{article}
\usepackage{enumerate, enumitem, moreenum}
\usepackage{multicol}
\usepackage{fontspec,xgreek, polyglossia}
\defaultfontfeatures{Mapping=tex-text}
\setmainfont[Mapping=tex-text]{CMU Serif}
\setdefaultlanguage{english}
\newfontfamily\myfontfirst{GFS Elpis}
\newfontfamily\myfontsecond{GFS Artemisia}
\newfontfamily\myfontthird{GFS Heraklit}
\begin{document}
\begin{multicols}{2}
CMU Serif
\begin{enumerate}
\item
\begin{enumerate}
\item
\item
\item
\item
\item
\item
\end{enumerate}
\item
\end{enumerate}
{\myfontfirst
GFS Elpis
\begin{enumerate}
\item
\begin{enumerate}
\item
\item
\item
\item
\item
\item
\end{enumerate}
\item
\end{enumerate}
}
\end{multicols}
\begin{multicols}{2}
{\myfontsecond
GFS Artemisia
\begin{enumerate}
\item
\begin{enumerate}
\item
\item
\item
\item
\item
\item
\end{enumerate}
\item
\end{enumerate}
}
{\myfontthird
GFS Heraklit
\begin{enumerate}
\item
\begin{enumerate}
\item
\item
\item
\item
\item
\item
\end{enumerate}
\item
\end{enumerate}
}
\end{multicols}
\end{document}
答え1
GFS ElpisとGFS HeraklitフォントにはU+0374 GREEK NUMERAL SIGNのグリフがないので、
Missing character: There is no ʹ in font GFS Elpis/OT:script=latn;language=dflt;!
Missing character: There is no ʹ in font GFS Heraklit-Regular/OT:script=latn;language=dflt;!
これらのフォントが使用されている場合、第 2 レベルの列挙の各項目に対して。
グリフを持つフォントを使用してフォールバックを提供することができます。以下のコードでは、GFS Artemisia を採用しました。
\documentclass[12pt]{article}
\usepackage{fontspec}
\usepackage{xgreek}
\usepackage{enumitem,moreenum}
\usepackage{multicol}
\setmainfont{CMU Serif}
\newfontfamily\myfontfirst{GFS Elpis}
\newfontfamily\myfontsecond{GFS Artemisia}
\newfontfamily\myfontthird{GFS Heraklit}
\makeatletter
%%% avoid so many spurious warnings
\protected\def\anw@false{\protected\def\anw@print{}}
\protected\def\anw@true{\protected\def\anw@print{\numer@lsign}}
%%% provide a fall back for U+0374 GREEK NUMERAL SIGN
\protected\def\numer@lsign{\iffontchar\font`ʹ ʹ\else{\myfontsecond ʹ}\fi}
\makeatother
\begin{document}
\begin{multicols}{2}
CMU Serif
\begin{enumerate}
\item
\begin{enumerate}
\item
\item
\item
\item
\item
\item
\end{enumerate}
\item
\end{enumerate}
{\myfontfirst
GFS Elpis
\begin{enumerate}
\item
\begin{enumerate}
\item
\item
\item
\item
\item
\item
\end{enumerate}
\item
\end{enumerate}
}
\end{multicols}
\begin{multicols}{2}
{\myfontsecond
GFS Artemisia
\begin{enumerate}
\item
\begin{enumerate}
\item
\item
\item
\item
\item
\item
\end{enumerate}
\item
\end{enumerate}
}
{\myfontthird
GFS Heraklit
\begin{enumerate}
\item
\begin{enumerate}
\item
\item
\item
\item
\item
\item
\end{enumerate}
\item
\end{enumerate}
}
\end{multicols}
\end{document}
ちなみに、enumerate
とenumitem
は互いに競合するため、一緒にロードしないでください。 後者のみをロードしてください。