平均能量损失

平均能量损失

在下面的例子中,该句子{\bfseries Please move me to the very end of the mainentry environment?}位于环境定义的最底部mainentry

然而,该句子并没有放在该环境发出命令的最后面。如你所见,subentry1该环境内发出的子命令(例如)都输出在句子之后。

我希望将这个句子放在该环境发布的最后。也就是说:输出这个句子之前\end{mainentry}

平均能量损失

% !TEX TS-program = lualatexmk

\documentclass{scrreprt}

\usepackage{xparse}
\ExplSyntaxOn
\cs_set_eq:NN\IfEmptyTF\tl_if_blank:nTF
\cs_set_eq:NN\Trim\tl_trim_spaces:n
\ExplSyntaxOff

\newenvironment {mainentry} {\mainentryA}{}
\def\mainentryA#1#2{%
%
   \def\subentryone##1{%
##1
  }%
%
  \IfEmptyTF{#2}{%
#1
  }{
#1 #2
  }
%
{\bfseries Please move me to the very end of the mainentry environment?}
%
}

\begin{document}

\begin{mainentry}{main1}{main2} \subentryone{subentry1} \subentryone{subentry2} \end{mainentry} \endgraf
\begin{mainentry}{main1}{} \subentryone{subentry1} \end{mainentry}

\end{document}

答案1

\newenvironment{<env>}{<begin>}{<end>}<end>通过调用来执行,因此将您想要在定义的该组件中\end{<env>}显示在末尾的文本放在:<env>

在此处输入图片描述

\documentclass{article}

\usepackage{xparse}
\ExplSyntaxOn
\cs_set_eq:NN\IfEmptyTF\tl_if_blank:nTF
\cs_set_eq:NN\Trim\tl_trim_spaces:n
\ExplSyntaxOff

\newenvironment{mainentry}
  {\mainentryA}
  {{\bfseries Please move me to the very end of the mainentry environment?}}
\def\mainentryA#1#2{%
%
   \def\subentryone##1{%
##1
  }%
%
  \IfEmptyTF{#2}{%
#1
  }{
#1 #2
  }
}

\begin{document}

\begin{mainentry}{main1}{main2}
  \subentryone{subentry1}
  \subentryone{subentry2}
\end{mainentry}

\begin{mainentry}{main1}{}
  \subentryone{subentry1}
\end{mainentry}

\end{document}

相关内容