我正在使用Beamer
并lstlisting
在演示文稿中放入一些代码。
我觉得字符间距有点太宽了。可以减小吗?我尝试在这个 SE 上搜索,但似乎看不到任何明显的变化。
编辑:
这看起来微不足道,但是:
\begin{frame}[fragile]
\frametitle{A frame}
\begin{lstlisting}
the letters are too far apart
\end{lstlisting}
\end{frame}
答案1
的默认设置listings
是将每个字符放在一个框中,以确保模拟终端输出的垂直对齐。
但是,当默认字体按比例间隔时,这可能不太好。有两种解决方案(实际上是一种):
\lstset{columns=fullflexible}
文档序言中的文字将以普通字符框排版。但是,列表通常使用等宽字体排版,因此
\lstset{columns=fullflexible,basicfamily=\ttfamily}
将进行这两项设置。
还可以在本地指定键值对:
\begin{lstlisting}[columns=fullflexible,basicfamily=\ttfamily]
将仅将设置应用于该lstlisting
环境。
该键keepspaces
还可以避免将两个空间合并为一个。