
나는 다음과 같은 환경을 가지고 있습니다.
\newenvironment{myenv}[0]{%
\begin{enumerate}[label = {My Label}]%
}{
\end{enumerate}
}
나는 갖고 싶다선택 과목이에 대한 인수는 환경 myenv
에 전달된 옵션 목록입니다 enumerate
.
예를 들어,
\begin{myenv}{noitemsep, nolistsep, label = {New Label}}
...
\end{myenv}
생산할 것이다,
\begin{enumerate}[label = {New Label}, noitemsep, nolistsep]
...
\end{enumerate}
이 기능은 label
재정의되었지만 이 기능은 필요하지 않습니다.
이런 일이 가능합니까?
답변1
이것은 확실히 가능합니다. 를 사용하고 있으므로 enumerate
고정 label
된 My Label
. 수행 방법은 다음과 같습니다.
\documentclass{article}
\usepackage{enumitem}
\newenvironment{myenv}[1][]{%
\begin{enumerate}[
label=\arabic*.,ref=\arabic*,% Default enumerate options
#1% Any additional content (could override default options)
]
}{%
\end{enumerate}
}
\begin{document}
Some content before \verb|myenv| (no optional parameter).
\begin{myenv}
\item First
\end{myenv}
Some content after \verb|myenv|.
Some content before \verb|myenv| (with an optional parameter).
\begin{myenv}[noitemsep, nolistsep, label={N\arabic*.}, ref={N\arabic*}]
\item First
\end{myenv}
Some content after \verb|myenv|.
\end{document}
새 목록을 통해 기본적으로 이 작업을 수행할 수도 있습니다.
\usepackage{enumitem}
\newlist{myenv}{enumerate}{1}
\setlist[myenv,1]{% Default options for myenv
label=\arabic*.,
ref=\arabic*
}