![リスト内のオプションのキャプション (listoflistings 用)](https://rvso.com/image/286340/%E3%83%AA%E3%82%B9%E3%83%88%E5%86%85%E3%81%AE%E3%82%AA%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%E3%81%AE%E3%82%AD%E3%83%A3%E3%83%97%E3%82%B7%E3%83%A7%E3%83%B3%20(listoflistings%20%E7%94%A8).png)
キャプションに引用文献がいくつかあります。しかし、図表やリストの表には表示したくありません。図の場合は、次のように別のキャプションを表示することができました。
\begin{figure}
\centering
\includegraphics[width=0.55\linewidth]{images/FIPA_Message-Transport-Reference-Model}
\caption[FIPA Message Transport Reference Model]{FIPA Message Transport Reference Model (\cite{FIPA2000}).}
\label{fig:FIPA_Message-Transport-Reference-Model}
\end{figure}
しかし、lstlisting では、キャプションがリストのオプションであり、オプションのキャプション ラベルがないように見えるため、いくつか問題が発生します。
\begin{lstlisting}[ language=Scala,
label={lst:Publisher},
caption={Publisher notify\cite{Zenger2013}}]
protected def publish(event: Evt) {
filters.keys.foreach(sub =>
if (!suspended.contains(sub) && filters.entryExists(sub, p => p(event)))
sub.notify(self, event)
)
}
\end{lstlisting}
これを解決する方法はありますか? よろしくお願いします!
答え1
これについては、listings
ドキュメント; 使用することができます
caption={[short caption]long caption}
以下に、完全な MWE を示します。
% arara: pdflatex
% !arara: indent: {overwrite: yes}
\documentclass{article}
\usepackage{listings}
\begin{document}
\lstlistoflistings
\begin{lstlisting}[
label={lst:Publisher},
caption={[caption for lol]Publisher notify\cite{Zenger2013}}]
protected def publish(event: Evt) {
filters.keys.foreach(sub =>
if (!suspended.contains(sub) && filters.entryExists(sub, p => p(event)))
sub.notify(self, event)
)
}
\end{lstlisting}
\end{document}