リスト (lstlisting) とそれを囲むテキストの間のスペースを設定するにはどうすればよいでしょうか? ドキュメントの先頭に設定して、これを制御するパラメーターはありますか? 試してみましたがframesep
、フレーム ボックスが膨らむだけです。
編集:
text
\addvspace\medskipamount
\begin{lstlisting}
...
\end{lstlisting}
\addvspace
必要なことはすべて実行できます。これをすべてのリストに手動で追加しなくても済むように、ドキュメントの先頭でこれを設定するにはどうすればよいですか?
編集:
私は次のようなリストを使用します:
\begin{lstlisting}[caption={cap},label=lbl]
...
\end{lstlisting}
とcap
はlbl
異なるキャプション/ラベルであるため、すべてのリストで一定ではありません。
答え1
\lstset
コマンドとそのaboveskip
キーを使用しますbelowskip
。詳細については、マニュアルのセクション 4.3 を参照してください。
\documentclass{article}
\usepackage{listings}
\lstset{aboveskip=20pt,belowskip=20pt}
\usepackage{lipsum}
\begin{document}
\lipsum[1]
\begin{lstlisting}[caption={A listing}]
(Listing contents)
\end{lstlisting}
\lipsum[2]
\end{document}
答え2
次を使用できます\newcommand
:
\newcommand{\myconfiguredlisting}[1]{%
\addvspace\medskipamount %
\begin{lstlisting}[caption={cap},label=lbl]
{#1}
\end{lstlisting}}
次に、次の形式で使用します。
\myconfiguredlisting{content of listing goes in here}
または
\newenvironment{mylst}
{\addvspace\medskipamount %
\begin{lstlisting}[caption={cap},label=lbl]}
{\end{lstlisting}}
上記を次のように使用します。
\begin{mylst}
....... % lst content goes here.
\end{mylst}