명령을 사용하여 새 환경 정의

명령을 사용하여 새 환경 정의

나는 다음과 같은 일을 할 수 있을 것입니다:

다음을 사용하는 대신 동일한 코드를 여러 번 반복합니다.

\documentclass{article}
\usepackage{enumerate}
\newenvironment{enum1}{\begin{enumerate}[1.]}{\end{enumerate}}
\newenvironment{enuma}{\begin{enumerate}[a.]}{\end{enumerate}}
...

나는 그것을 어느 정도 "자동화"할 수 있기를 원합니다. 예:

\documentclass{article}
\newcommand{\newEnum}[1]{\newenvironment{enum#1}{\begin{enumerate}[#1.]}{\end{enumerate}}
\newEnum{1}
\newEnum{a}
...

물론 이것은 컴파일되지 않습니다. 그렇지 않으면 여기서 묻지 않을 것입니다.

이를 수행할 수 있는 방법이 있습니까? 아니면 복사 및 붙여넣기 및 필요한 변경 작업이 계속 진행되고 있습니까?

답변1

enumitem목록의 경우 패키지를 사용하고 newlist내장된 기능을 사용하는 것이 좋습니다 .

여기에 이미지 설명을 입력하세요

이 중 많은 것이 있으면 사용할 수 있습니다.

\newcommand{\DefineNewList}[3]{%
    % #1 = name
    % #2 = max depth
    % #3 = label
    \newlist{#1}{enumerate}{#2}
    \setlist[#1]{label*=#3}
}%

하지만 나는 그것에 큰 가치가 없다고 생각합니다.

암호:

\documentclass{article}
\usepackage{enumitem}

\newlist{enumOne}{enumerate}{2}
\setlist[enumOne]{label*=\arabic*.}

\newlist{enumA}{enumerate}{2}
\setlist[enumA]{label*=\alph*.}

\begin{document} 

\begin{enumOne}
    \item First item in enumOne
    \item Second item in enumOne
\end{enumOne}

\begin{enumA}
    \item First item in enumA
    \item Second item in enumA
\end{enumA}

\end{document} 

코드 Repeated Usage:

\documentclass{article}
\usepackage{enumitem}

\newcommand{\DefineNewList}[3]{%
    % #1 = name
    % #2 = max depth
    % #3 = label
    \newlist{#1}{enumerate}{#2}
    \setlist[#1]{label*=#3}
}%

\DefineNewList{enumOne}{2}{\arabic*.}
\DefineNewList{enumA}{2}{\alph*.}

\begin{document} 

\begin{enumOne}
    \item First item in enumOne
    \item Second item in enumOne
\end{enumOne}

\begin{enumA}
    \item First item in enumA
    \item Second item in enumA
\end{enumA}

\end{document} 

답변2

\documentclass{article}
\usepackage{enumerate}
\newcommand\newEnum[1]{%
  \newenvironment{enum#1}{\enumerate[#1.]}{\endenumerate}}
\newEnum{1}
\newEnum{a}
\begin{document}

\begin{enumerate}
\item foo
\item bar
\end{enumerate}

\begin{enum1}
\item foo
\item bar
\end{enum1}

\begin{enuma}
\item foo
\item bar
\end{enuma}

\end{document}

그러나 패키지를 사용하면 enumitem더 많은 가능성이 있습니다.

관련 정보