
我想使用包顯示代碼列表listings
。一切都很好,除非我有 fontenc T2A。當我這樣做時,清單將停止使用\ttfamily
字體顯示,並使用常規字體顯示。
一個MWE:
\documentclass{article}
\usepackage[T1,T2A]{fontenc} %T2A causes a problem...
\usepackage[utf8]{inputenc}
\usepackage{courier}
\usepackage{listings}
%\renewcommand*{\ttdefault}{pcr}
\lstset{
basicstyle=\ttfamily,breaklines=true,keepspaces=true,columns=flexible,
aboveskip=6pt,belowskip=6pt
}
\begin{document}
\begin{lstlisting}
GRD
/SUBJECTSPERGROUP equal = 1000
/WSFACTORS X (2)
/SCORES population = "RV.MVN({0,0}, {5**2,.99*5*5;.99*5*5,5**2})"
/CONTAMINANTS population = "RV.MVN({-5,5}, {1**2,-.01*1*1;-.01*1*1,1**2})" PROPORTION = .5.
\end{lstlisting}
\end{document}
刪除 fontenc 套件呼叫中的 T2A,一切正常。放上去,字體就不再是了\ttfamily
。我嘗試更新命令\ttdefault
(請參閱註釋行),但無濟於事。任何想法?
答案1
不支援T2A
字體編碼courier
,因此 LaTeX 將回退到 Computer Modern Roman。如果您不想使用不同的打字機字體,並且假設代碼清單不包含任何西里爾字母,則可以切換到T1
清單編碼:
\lstset{basicstyle=\fontencoding{T1}\ttfamily,
...
}