새로운 \newenviroment에서 \begin{collect*} 사용하기

새로운 \newenviroment에서 \begin{collect*} 사용하기

나는 라텍스에 대한 경험이 별로 없으며 \begin{collect*} 명령을 자체 환경에 사용되는 몇 가지 일반적인 인수로 마무리하려고 시도하고 있지만 전체 작업을 수행하는 데 어려움을 겪고 있습니다. 이 문제는 사용자 지정 환경 내에서만 나타납니다. 이 예를 보여주는 최소 예는 다음과 같습니다.

\documentclass[11pt,english]{article}

\usepackage{xparse}
\usepackage{collect}


\DeclareDocumentEnvironment{dup}{ m }
  {  \begin{collect*}{#1dupcollection}{}{}{}{}
  }
  {
  \end{collect*}
  }

\begin{document}

\begin{dup}{atest}
content...
\end{dup}

\end{document}

내가 받고 있는 오류는 다음과 같습니다: \@tempa 사용을 검색하는 동안 파일이 종료되었습니다.

나는 해결책을 찾으려고 노력했지만 해결책을 찾지 못했습니다. 여기 누군가가 도와줄 수 있을 거라 확신해요.

답변1

에서패키지 문서(PDF):

\documentclass[11pt,english]{article}

\usepackage{collect}

\makeatletter
\newenvironment{dup}[1]{%
  \definecollection{#1dupcollection}%
  \@nameuse{collect*}{#1dupcollection}{}{}{}{}%
}{%
  \@nameuse{endcollect*}%
}
\makeatother

\begin{document}

\begin{dup}{atest}
content...
\end{dup}

\end{document}

관련 정보