Я определил очень простую пользовательскую среду для домашних заданий, которая по сути проста, enumerate
но без отступов:
\newcounter{hwprob}
\newenvironment{hwprob}{\refstepcounter{hwprob} \textbf{\thehwprob.} ~ }{}
Если я открою реальную enumerate
среду внутри hwprob
, произойдет следующее:
\begin{hwprob}
\begin{enumerate}
\item Some text.
\item Some other text.
\end{enumerate}
\end{hwprob}
Я не уверен, почему первый пункт 1. не начинается на той же строке, что и1.Я пробовал убрать тильду, но безуспешно. Что меня озадачивает, так это то, что я знаю, что при использовании enumerate
внутри proof
среды первый элемент будет в той же строке, что иДоказательство., с правильным отступом и всем остальным.
Что я могу сделать, чтобы это исправить? Это результат того, как я определил hwprob
, или это присуще enumerate
?
решение1
Вот часть «как»: определить hwprob
как среду списка и автоматически вставить \item
в начало hwprob
.
\documentclass{article}
\usepackage{enumitem}
\newlist{hwprob}{enumerate}{1}
\setlist[hwprob]{label=\textbf{\arabic*.}, first*=\item}
\begin{document}
\begin{hwprob}
\begin{enumerate}
\item Some text.
\item Some other text.
\end{enumerate}
\end{hwprob}
\end{document}
Что касается части «почему», я полагаю, это как-то связано с \trivlist
(возможно, с \parshape
), которая является общей базой, используемой как средами списков, так и средами теорем.
решение2
Форматирование, которого вы хотите добиться (чтобы первый элемент в списке enumerate
начинался с текущей строки, а не после переноса строки), происходит, если enumerate
среда запускается внутри одной из сред LaTeX list
или trivlist
.
Чтобы достичь цели форматирования, я предлагаю вам загрузить пакет enumitem и использовать его \newlist
макросы \setlist
для создания специальной среды списка, похожей на перечисление, под названием hwprob
.
\documentclass{article}
\usepackage{enumitem}
\newlist{hwprob}{enumerate}{1}
\setlist[hwprob,1]{label=\bfseries\arabic*.,left=0pt}
\begin{document}
\begin{hwprob}
\item
\begin{enumerate}
\item Some text.
\item Some other text.
\end{enumerate}
\end{hwprob}
\end{document}