使用 xparse 定义新的 minipage 环境 - 错误:紧急停止

使用 xparse 定义新的 minipage 环境 - 错误:紧急停止

我希望能够更轻松地编写图形、表格、列表等,同时确保所有标题与相应的文档元素保持在同一页面上。我使用 xparse 尝试了以下操作:

\documentclass{article}

\usepackage{xparse}
\usepackage{listings}
\usepackage{caption}

\NewDocumentEnvironment{minitopcapt}{O{\textwidth}mm}{
  \minipage{#1}
    \centering
    \captionsetup{type=#2}
    \captionof{#2}{#3}
    \begin{#2}
}{
    \end{#2}
  \endminipage
}

\begin{document}

% This should produce a minipage-enclosed lstlisting environment
% with a caption on top of it.
\begin{minitopcapt}{lstlisting}{A caption here}

  Text

  Some more text

\end{minitopcapt}

\end{document}

这样我收到两个错误:

Emergency stop.
<*> /path/to/main/document

 ==> Fatal error occurred, no output PDF file produced!SyncTeX written on main.synctex.gz.

第二个信息量不大,但第一个可能有用。我只是不知道如何解释它。我怎样才能得到我想要的结果,即在迷你页面内列出列表并在顶部添加标题?

相关内容