GFS + 枚举问题

GFS + 枚举问题

我正在尝试嵌套两个枚举环境,第二个枚举位于第一个枚举内。我正在使用 xgreek 包,它将第二个枚举生成为 (α')、(β')、(γ') 等。但是,当使用 2 种 GFS 字体(Elpis 和 Heraklit)时,我遇到了枚举中 ' 的问题。

因为我有超过 50 个带有嵌套枚举的 .tex 文件,所以我更愿意使用自动方式来执行此操作,而不必像上面所述那样为每个嵌套枚举添加标签这个帖子

在此处输入图片描述

梅威瑟:

\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 希腊数字符号的字形,事实上,你得到的

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;!

当这些字体正在使用时,第二级枚举中的每个项目。

您可以使用具有字形的字体提供后备,在下面的代码中我采用了 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}

顺便说一句,不要同时加载enumerateenumitem,因为它们会互相冲突。仅加载后者。

在此处输入图片描述

相关内容