我想要这样的东西。
- 评论 1. blablabla
- 回应 1. blablabla
- 评论2。blablabla
- 回应2. blablabla
我需要的项目符号为评论 1.、回复 1. 等等。
我的尝试是这样的。
\documentclass[onecolumn, 12pt]{article}
\usepackage{enumitem}
\newcounter{count}
\begin{document}
\begin{enumerate}[label={Comment \arabic*.}]
\item \textit{blablabla.}\\~\\
\begin{enumerate}[label={Response \arabic*.}]
\item blablabla
\setcounter{count}{\theenumi}
\end{enumerate}
\item \textit{blablabla.}\\~\\
\begin{enumerate}[label={Response \arabic*.}]
\setcounter{enumi}{\thecount}
\item blablabla
\end{enumerate}
\end{enumerate}
\end{document}
这给了我这个错误:
! Missing number, treated as zero.
<to be read again>
{
l.10 \setcounter{count}{\theenumi}
答案1
这是一种快捷方法,使用start=...
内部列表的选项。我会尝试更新更好的方法。
主要问题是,这\theenumi
不只是输出 1 或 2,而是输出1.
和2.
,即末尾有一个点。这不能进入\setcounter{...}{...}
命令,因为计数器值必须是整数,而不是字母数字值。
\documentclass[onecolumn, 12pt]{article}
\usepackage{enumitem}
\begin{document}
\begin{enumerate}[label={Comment \arabic*.}]
\item \textit{blablabla.}%\\~\\
\begin{enumerate}[label={Response \arabic*.}]
\item blablabla
\end{enumerate}
\item \textit{blablabla.}%\\~\\
\begin{enumerate}[label={Response \arabic*.},start={\value{enumi}}]
\item blablabla
\end{enumerate}
\end{enumerate}
\end{document}
更新附有特殊列表:
定义特殊列表,例如comments
和responses
,两者都只有深度1
,并将的起始responses
始终设置为的当前值commentsi
,这是由 then 定义的计数器\newlist
。更深的嵌套将定义commentsii
、commentsiii
和commentsiv
。
\documentclass[onecolumn, 12pt]{article}
\usepackage{enumitem}
\newlist{comments}{enumerate}{1}
\setlist[comments,1]{label={Comment \arabic*.}}
\newlist{responses}{enumerate}{1}
\setlist[responses,1]{label={Response \arabic*.}, start={\value{commentsi}}}
\begin{document}
\begin{comments}
\item \textit{blablabla.}
\begin{responses}
\item blablabla
\end{responses}
\item \textit{blablabla.}
\begin{responses}
\item blablabla
\end{responses}
\end{comments}
\end{document}