現在、quote 環境と footcite コマンドを使用して、quote 環境の最後に引用脚注を表示しています。quote 環境を次のように修正して引用符を追加しました。
\documentclass[a4paper]{article}
\usepackage[ngerman]{babel}
\usepackage{lipsum}
\usepackage{needspace}
\renewenvironment{quote}
{
\list{\Large\glqq\hspace{-0.4em} \normalsize}
{\rightmargin\leftmargin}%
\item\relax\small\sl\ignorespaces
\needspace{4\baselineskip}
}
{\Large\grqq\normalsize \endlist}
\begin{document}
\lipsum[1]
\begin{quote}
\lipsum[1]\footnote{citationsreference}
\end{quote}
\lipsum[1]
\end{document}
引用ブロックは次のようになります。
これで、引用符環境の再定義で追加した引用符の中に脚注が入りました。手動ですべてのインスタンスを調べずに、脚注が引用符の外側、つまり右側になるように変更する方法をご存知の方はいらっしゃいますか? どんな雑然としたアイデアでも歓迎します。
答え1
次のようなかなり乱雑なアイデアを検討してください。直接印刷するのではなく、内容を保存し、元のコマンドの名前を変更したコピーを使用した\footnote
後に脚注を表示するようにローカルで再定義することができます。\grqq
\footnote
定義は 内で行うことができますが、引数は環境の引数ではなく、環境内で定義されたコマンドの引数であるため、\renewenvironment
double が必要であることに注意してください。##
脚注がない場合には、追加の考慮が必要です。保存されたコンテンツを表示するコマンドをデフォルトで何もしないように定義し、 が\footnote
使用される場合はそれを再定義することもできます (乱雑なことに注意してください...)。
ムウェ
\documentclass[a4paper]{article}
\usepackage[ngerman]{babel}
\usepackage{lipsum}
\usepackage{needspace}
\let\origfootnote\footnote
\renewenvironment{quote}
{
\list{\Large\glqq\hspace{-0.4em} \normalsize}
{\rightmargin\leftmargin}%
\item\relax\small\sl\ignorespaces
\needspace{4\baselineskip}%
\gdef\fnshowcontents{\relax}%
\def\footnote##1{\gdef\fnstoredcontents{##1}\gdef\fnshowcontents{\origfootnote{\fnstoredcontents}}}%
}
{\Large\grqq\normalsize\fnshowcontents\endlist}
\begin{document}
\lipsum[1]
\begin{quote}
\lipsum[1]\footnote{citationsreference}
\end{quote}
Regular footnote\footnote{printed immediately} as before.
\begin{quote}
\lipsum[2]
\end{quote}
\lipsum[1]
\end{document}
結果: