我想知道是否有办法创建一个列表LaTeX
(我使用 TeXstudio),其中编号是希腊字母。
到目前为止我已经写了这个:
\begin{enumerate}
\item[($\alpha$)]
\item[($\beta$)]
\item[($\gamma$)]
\end{enumerate}
这是完成以希腊字母编号的列表的最佳方法吗?
我们$...$
在列表中使用数学环境吗?
谢谢。
答案1
这enumitem
很“容易”,但有必要建立一个新的输出格式\AddEnumerateCounter
。
\documentclass{article}
\usepackage{pgffor}
\usepackage{enumitem}
\usepackage{multicol}
\usepackage{textgreek}
\makeatletter
\newcommand{\greekalpha}[1]{\c@greekalpha{#1}}
\newcommand{\c@greekalpha}[1]{%
{%
\ifcase\number\value{#1} %
\or
\textalpha
\or
\textbeta
\or
\textgamma
\or
\textdelta
\or
\textepsilon
\or
\textzeta
\or
\texteta
\or
\texttheta % or \straighttheta
\or
\textiota
\or
\textkappa
\or
\textlambda
\or
\textmu
\or
\textnu
\or
\textxi
\or
\textomikron
\or
\textrho
\or
\textpi
\or
\textsigma
\or
\texttau
\or
\textupsilon
\or
\textphi
\or
\textchi
\or
\textpsi
\or
\textomega
\fi
}%
}
\newcommand{\Greekalpha}[1]{\c@Greekalpha{#1}}
\newcommand{\c@Greekalpha}[1]{%
{%
\ifcase\number\value{#1} %
\or
\textAlpha
\or
\textBeta
\or
\textGamma
\or
\textDelta
\or
\textEpsilon
\or
\textZeta
\or
\textEta
\or
\textTheta
\or
\textIota
\or
\textKappa
\or
\textLambda
\or
\textMu
\or
\textNu
\or
\textXi
\or
\textOmikron
\or
\textRho
\or
\textPi
\or
\textSigma
\or
\textTau
\or
\textUpsilon
\or
\textPhi
\or
\textChi
\or
\textPsi
\or
\textOmega
\fi
}%
}
\AddEnumerateCounter*{\greekalpha}{\c@greekalpha}{5}
\AddEnumerateCounter*{\Greekalpha}{\c@Greekalpha}{5}
\makeatother
\begin{document}
\begin{multicols}{2}
\begin{enumerate}[label={\greekalpha*)}]
\foreach \x in {1,...,24} {
\item \x
}
\end{enumerate}
\begin{enumerate}[label={\Greekalpha*)}]
\foreach \x in {1,...,24} {
\item \x
}
\end{enumerate}
\end{multicols}
\end{document}
答案2
@Christian 的答案的一个变体,利用了包已经提供从整数到希腊字母的映射这一事实chemgreek
,包括小写和大写字母。这也增加了一点灵活性:它可以在不textgreek
使用标准斜体数学希腊字母或使用许多其他提供直立希腊字母版本的包的情况下工作。另一个好处是:如果超过 24 个项目,您不必担心:
\documentclass{article}
\usepackage{chemgreek,textgreek,enumitem}
\makeatletter
% commands to format a counter value as Greek letter to be used like
% \arabic or \roman:
\newcommand*\alphgreek[1]{\expandafter\@alphgreek\csname c@#1\endcsname}
\newcommand*\@alphgreek[1]{\csname chemgreek_int_to_greek:n\endcsname{#1}}
\newcommand*\Alphgreek[1]{\expandafter\@Alphgreek\csname c@#1\endcsname}
\newcommand*\@Alphgreek[1]{\csname chemgreek_int_to_Greek:n\endcsname{#1}}
% register new counter formats to enumitem:
\AddEnumerateCounter*{\alphgreek}{\@alphgreek}{\chemalpha}
\AddEnumerateCounter*{\Alphgreek}{\@Alphgreek}{\chemAlpha}
\makeatother
\begin{document}
\twocolumn
\begin{enumerate}[label=(\alphgreek*)]
\loop\item \arabic{enumi}
\ifnum\value{enumi}<28
\repeat
\end{enumerate}
\newpage
\begin{enumerate}[label=(\Alphgreek*)]
\loop\item \arabic{enumi}
\ifnum\value{enumi}<28
\repeat
\end{enumerate}
\end{document}
答案3
有一个现成的 LaTeX 包可用于此目的,名为 greekctr.sty。它定义了新的计数器样式\greek
和\Greek
(用于小写和大写希腊字母)。它可以计数到 24(类似于\alph
计数到 26 的计数器样式)。
答案4
嗯,使用实际的希腊数字你可以写
\documentclass{article}
\usepackage[greek,english]{babel}
\usepackage{enumerate}
\usepackage{multicol}
\begin{document}
\begin{multicols}{5}
\begin{enumerate}[\begin{otherlanguage}{greek}(A)\end{otherlanguage}]
\loop
\ifnum\value{enumi}<2000
\item \arabic{enumi}
\repeat
\end{enumerate}
\end{multicols}
\end{document}
但是,希腊数字在希腊以外并不那么流行,并且吸引力有限。