Tengo un espacio horizontal limitado para enumerar algún código:
\documentclass[]{article}
\usepackage{xcolor}
\usepackage{listings}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\lstdefinestyle{mystyle}{
backgroundcolor=\color{backcolour},
language=bash,
basicstyle=\footnotesize\ttfamily,
keepspaces=true,
}
\lstset{style=mystyle}
\begin{document}
\begin{lstlisting}
C_10 := elementwise.range_check(C_4,S_5,S_6)
\end{lstlisting}
\end{document}
y quiero apretarlo un poco horizontalmente. (Sí, sé que en este ejemplo se extiende hasta el final de la línea; pero tal vez lo tenga en una minipágina o en un documento de varias columnas, etc.)
Ahora no quiero irme \tiny
, solo un poco de presión horizontal. Si no estuviera en un lstlistings
entorno, podríausa algo como una caja de escala, o quizástextls
, pero realmente no tengo esa flexibilidad (creo) dentro de un entorno de listas. Supongo que debe haber algo que deba poner en el basicstyle
parámetro del paquete en \lstset
; ¿pero que?
Respuesta1
El latín moderno, por ejemplo, tiene un tt ligero que es un poco más delgado y un tt condensado que es mucho más delgado.
\documentclass[]{article}
\usepackage{xcolor}
\usepackage{listings}
\makeatletter
\def\lmtt@use@light@as@normal{}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\lstdefinestyle{mystyle3}{
backgroundcolor=\color{backcolour},
language=bash,
basicstyle=\fontencoding{T1}\footnotesize\fontfamily{lmtt}\fontseries{c}\selectfont,
keepspaces=true,
}
\lstdefinestyle{mystyle2}{
backgroundcolor=\color{backcolour},
language=bash,
basicstyle=\fontencoding{T1}\footnotesize\fontfamily{lmtt}\fontseries{m}\selectfont,
keepspaces=true,
}
\lstdefinestyle{mystyle}{
backgroundcolor=\color{backcolour},
language=bash,
basicstyle=\footnotesize,
keepspaces=true,
}
\lstset{style=mystyle}
\begin{document}
\begin{lstlisting}
C_10 := elementwise.range_check(C_4,S_5,S_6)
\end{lstlisting}
\lstset{style=mystyle2}
\begin{lstlisting}
C_10 := elementwise.range_check(C_4,S_5,S_6)
\end{lstlisting}
\lstset{style=mystyle3}
\begin{lstlisting}
C_10 := elementwise.range_check(C_4,S_5,S_6)
\end{lstlisting}
\end{document}
Respuesta2
Aquí hay una manera, con una fuente más estrecha, concretamente URW Letter Gothic (disponible enCTAN:
\documentclass[]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{xcolor}
\usepackage{listings}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\lstdefinestyle{mystyle}{
backgroundcolor=\color{backcolour},
language=bash,
basicstyle=\footnotesize\ttfamily,
keepspaces=true,
}
\lstset{style=mystyle}
\usepackage{etoolbox}
\AtBeginEnvironment{lstlisting}{\renewcommand\ttfamily{\fontfamily{ulg}\selectfont}}
\begin{document}
\noindent\verb|C_10 := elementwise.range_check(C_4,S_5,S_6)|
\begin{lstlisting}
C_10 := elementwise.range_check(C_4,S_5,S_6)
\end{lstlisting}
\begin{lstlisting}[basicstyle=\scriptsize\ttfamily]
C_10 := elementwise.range_check(C_4,S_5,S_6)
\end{lstlisting}
\end{document}