Переопределение команд в новой среде

Два вопроса:

  • Предоставляет ли LaTeX возможность (re) определять команды в \newenvironment? Я пробовал использовать \renewcommand, \newcommand и \def в объявлении перед этим, но безрезультатно.

  • Как было бы переопределить \item при создании новой среды списка?

Я создал новый тип среды списка с нуля с помощью \newenvironment, используя для этого другой токен вместо \item, но мне бы очень хотелось, чтобы все было согласовано с помощью \list и переопределения \item.

Ответ 1

Конечно; трудно понять, что пошло не так, не видя свой код. Как ответ на ваши два вопроса, посмотрите, помогает ли это:

\documentclass{article}
\begin{document}
\newenvironment{myitemize}{%
  \begin{list}{}{}% whatever you want the list to be
  \let\olditem\item
  \renewcommand\item{\olditem ITEM: }
}{%
  \end{list}
}  
\begin{myitemize}
\item one \item two
\end{myitemize}
\end{document}

Ответ 2

Слишком поздно, возможно, но может быть полезно для кого-то другого

\newenvironment{coolitemize}{%
\let\olditem\item% 
\renewcommand\item[2][]{\olditem \textbf{##1}\\[0.3\baselineskip]##2}%
\begin{itemize}}{\end{itemize}%
}

и используйте его

\begin{coolitemize}
\item[Title of my first item] Text of my 1st item.
\item[Second one] And some text here.
\end{coolitemize}