我想列举书中某些练习的答案。练习的名称采用“CHAPTER.ExerciseNumber.ExerciseSubNumber”格式,例如:
1.1)a) b) c)
1.2)
1.3)
2.1)
...
我已经对其他书籍(没有子编号)使用了以下代码样式:
\documentclass[a4paper, 11pt]{article}
\usepackage[a4paper,left=3cm,right=3cm,top=3cm,bottom=3cm]{geometry}
\usepackage{array}
\usepackage{enumitem}
\usepackage{etoolbox}
\usepackage{fancyhdr}
\usepackage{float}
\usepackage[T1]{fontenc}
\usepackage[Export]{adjustbox}
\usepackage[utf8]{inputenc}
\usepackage{latexsym}
\usepackage{lmodern}
\usepackage{mdframed}
\usepackage{pifont}
\usepackage{pgf}
\usepackage{ragged2e}
\usepackage{tcolorbox}
\usepackage{tikz}
\usepackage[absolute,overlay]{textpos}
\usepackage{ulsy}
\usepackage{xcolor}
\pagestyle{fancy}
\fancyhf{}
\renewcommand{\headrulewidth}{0pt}
\fancyfoot[LE,RO]{\thepage}
\renewcommand{\familydefault}{\sfdefault}
\newcounter{mycount} \renewcommand{\themycount}{\arabic{mycount}}
\setlist[enumerate]{label=\themycount.\arabic*,
ref=\themycount.\arabic*),
before=\refstepcounter{mycount}}
\setcounter{mycount}{0}
\begin{document}
\begin{enumerate}
\item \begin{enumerate}[label=\alph*)]
\item
\item
\item
\end{enumerate}
\item
\item
\end{enumerate}
\begin{enumerate}
\item
\end{enumerate}
\end{document}
但是,此代码不适用于子枚举(章节号错误地增加了 1)。有什么方法可以解决这个问题吗?
答案1
但是,此代码不适用于子枚举——章节号 [错误地] 加一。有什么方法可以解决这个问题吗?
你需要改变
\setlist[enumerate]{..., before=...}
到
\setlist[enumerate,1]{..., before=...}
确保该before
选项不是在 2 级环境启动时enumerate
也执行。
一个单独的问题:您还需要交换1 级项目的label
和选项的分配。ref
enumerate
\documentclass[a4paper, 11pt]{article}
\usepackage[margin=3cm]{geometry}
%% I've commented out all instructions that
%% aren't needed for the example at hand.
%\usepackage{array}
\usepackage{enumitem}
%\usepackage{etoolbox}
%\usepackage{fancyhdr}
%\usepackage{float}
%\usepackage[T1]{fontenc}
%\usepackage[Export]{adjustbox}
%\usepackage[utf8]{inputenc}
%\usepackage{latexsym}
%\usepackage{lmodern}
%\usepackage{mdframed}
%\usepackage{pifont}
%\usepackage{pgf}
%\usepackage{ragged2e}
%\usepackage{tcolorbox}
%\usepackage{tikz}
%\usepackage[absolute,overlay]{textpos}
%%%%\usepackage{ulsy}
%\usepackage{xcolor}
%\pagestyle{fancy}
%\fancyhf{}
%\renewcommand{\headrulewidth}{0pt}
%\fancyfoot[LE,RO]{\thepage}
\renewcommand{\familydefault}{\sfdefault}
\newcounter{mycount}
%\setcounter{mycount}{0} % that's the default
%\renewcommand{\themycount}{\arabic{mycount}} % that's the default
\setlist[enumerate,1]{%
label =\themycount.\arabic*) ,
ref =\themycount.\arabic* ,
before=\refstepcounter{mycount}}
\begin{document}
\begin{enumerate}
\item \begin{enumerate}[label=\alph*)]
\item
\item
\item
\end{enumerate}
\item
\item
\end{enumerate}
\begin{enumerate}
\item
\end{enumerate}
\end{document}