將 lstlisting 與 T2A 結合使用

將 lstlisting 與 T2A 結合使用

我想使用包顯示代碼列表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,
        ...
       }

相關內容