
Я пишу лекции по математике, используя для определений свою собственную среду:
\newenvironment{mydefs}
{\begin{asparaenum}[\P\slshape\thesection.a]}
{\end{asparaenum}}
Таким образом, каждое определение нумеруется как «номер_раздела.буква» (например, 3.а)
Но тогда у меня проблемы со ссылками на определения. Неважно, какой это раздел,
\begin{mydefs}
\item
\label{123}
Something
\end{mydefs}
....
\ref{123}
Я получаю "1.letter" вместо "section_number.letter" (например, 1.b вместо 3.b). Надеюсь, вы поможете мне с этим справиться
P.S. Мне бы очень хотелось сохранить этот стиль нумерации (раздел.буква), если это возможно.
Спасибо
решение1
Я предлагаю enumitem
вместо довольно негибкого paralist
.
\documentclass{article}
\usepackage{enumitem}
\newenvironment{mydefs}
{\begin{enumerate}[
nosep,
label=\P\slshape\thesection.\alph*\ ,
ref=\thesection.\alph*,
leftmargin=0pt,labelwidth=0pt,align=left,itemindent=\parindent,labelsep=0pt
]}
{\end{enumerate}}
\begin{document}
\section{title}
\begin{mydefs}
\item\label{1}
Something
\item\label{2}
Something
\item\label{3}
Something
\end{mydefs}
\section{Another}
\begin{mydefs}
\item\label{11}
Something
\item\label{22}
Something
\item\label{33}
Something
\end{mydefs}
1: \ref{1}
2: \ref{2}
3: \ref{3}
11: \ref{11}
22: \ref{22}
33: \ref{33}
\end{document}
Наклонное число действительно ужасно.
решение2
Окружающую среду asparaenum
можно эмулироватьenumitem
упаковка.
Опцияwide
эмулируетэлементы как абзацыи компактные списки с опциями noitemsep
и nosep
.
\newlist
создает настраиваемые списки на основе itemize
, enumerate
и description
.
Пример
\documentclass{article}
\usepackage{enumitem}
\newlist{mydefs}{enumerate}{1}
\setlist[mydefs]{label=\P\slshape\thesection.\alph*,wide,noitemsep,nosep}
\begin{document}
\begin{mydefs}
\item\label{123}
Something
\item B
\end{mydefs}
As in \ref{123} we ...
\end{document}