LaTeX - 在枚举中为单个标签添加前缀

LaTeX - 在枚举中为单个标签添加前缀

使用以下代码,我可以打印多项选择题测试的一个问题。

\documentclass[]{article}
\usepackage[czech]{babel}
\usepackage[shortlabels]{enumitem}

\begin{document}
  \begin{enumerate}
    \item Which of the following words begins with s?
    \begin{enumerate}[a)]
      \item Earth
      \item Brown
      \item Saturday
    \end{enumerate}
  \end{enumerate}
\end{document}

我想在正确答案的标签前加上一个字符(并且可能加上几个空格来分隔字符和标签)。

结果应如下所示:

1. Which of the following words begins with s?
   a) Earth
   b) Brown
-  c) Saturday

理想情况下,我希望使用类似的东西\prefixeditem来做出正确的选择,而不是\item实现这一点。

我知道可以完全用 替换标签\item [-],但我无法找到如何添加前缀的方法。

我也尝试使用包考试,但不幸的是它不允许修改标签。

答案1

欢迎来到 TeX.SE!

\documentclass{article}
\usepackage[shortlabels]{enumitem}
\newcommand{\prefixeditem}{\item\makebox[0pt][r]{$-$\hspace*{1cm}}}
\begin{document}
  Which of the following words begins with s?
  \begin{enumerate}[a)]
    \item Earth
    \item Brown
    \prefixeditem Saturday
  \end{enumerate}
\end{document}

在此处输入图片描述

答案2

我刚刚找到了一个次优解决方案。这里已经有一个更好的答案,但有人可能会觉得这个有用:

\documentclass[]{article}
\usepackage[czech]{babel}
\usepackage{scrextend}

\begin{document}
  \begin{enumerate}
    \item Which of the following words begins with s?
    \begin{labeling}{~~~a)}
      \item[~~~a)] Earth
      \item[~~~b)] Brown
      \item[-~~c)] Saturday
    \end{labeling}
  \end{enumerate}
\end{document}

相关内容