我使用\lstset
来在文档中创建带有文字的框。在这些框中,我使用了很多双破折号 ( --
) 和很多 at 符号 ( @
)。我试图进行更改basicstyle
以确保两个符号 ( --
, @
) 都能很好地显示出来。我找不到 s 的列表basicstyle
,而且我尝试过的所有方法要么@
看起来很奇怪,难以阅读,要么每个破折号之间的空间--
太小,看起来像一个长破折号。
\documentclass[a4paper,11pt,oneside]{book}
\usepackage[DIV=14,BCOR=2mm,headinclude=true,footinclude=false]{typearea}
\usepackage{listings}
\usepackage[T1]{fontenc}
\usepackage{xcolor}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\lstset{backgroundcolor = \color{backcolour}, breaklines=true, language=bash,basicstyle=\rmfamily}
\begin{document}
\chapter*{Test}
% Okay-ish at symbol but the double dash is ugly
\begin{lstlisting}[language=bash]
--PN 4 @
\end{lstlisting}
\lstset{backgroundcolor = \color{backcolour}, breaklines=true, language=bash,basicstyle=\sffamily}
% Both the double dash and the at symbol look ugly
\begin{lstlisting}[language=bash]
--PN 4 @
\end{lstlisting}
\lstset{backgroundcolor = \color{backcolour}, breaklines=true, language=bash,basicstyle=\ttfamily}
% Good looking double dash but the at symbol is ugly
\begin{lstlisting}[language=bash]
--PN 4 @
\end{lstlisting}
\end{document}
你能帮助我吗?
答案1
您的问题很大程度上是基于观点的,因为现在还没有办法告诉您什么是好看的。
我不会回答这个无法回答的问题,而是会告诉你在哪里可以找到字体,以及如何使用它们。
您应该使用等宽字体来编写代码。您可以在LaTeX 字体目录。通常您只需从示例页面复制代码即可:
\documentclass[a4paper,11pt,oneside]{book}
\usepackage{listings}
\usepackage{DejaVuSansMono}
%% Another possibility is
%% \usepackage{dejavu}
%% which loads the DejaVu Serif and DejaVu Sans fonts as well
\renewcommand*\familydefault{\ttdefault} %% Only if the base font of the document is to be typewriter style
\usepackage[T1]{fontenc}
\usepackage{xcolor}
\definecolor{backcolour}{rgb}{0.95,0.95,0.92}
\lstset{backgroundcolor = \color{backcolour}, breaklines=true, language=bash,}
\begin{document}
\begin{lstlisting}[language=bash]
--PN 4 @
\end{lstlisting}
\end{document}
看起来怎么样?
您现在正在使用 DejaVuSansMono 来列出您的列表:
name type encoding emb sub uni object ID
------------------------------------ ----------------- ---------------- --- --- --- ---------
UFFTXN+DejaVuSansMono Type 1 Custom yes yes no 4 0