我在段落中使用 Inconsolata 编写代码,也想在 verbatim 环境中使用它编写代码。我曾尝试使用 fancyvrb 的 Verbatim 环境来执行此操作,但无法获得除 Courier 之外的任何字体。我的文档开头如下:
\documentclass{book}
\usepackage{fancyvrb}
\usepackage{inconsolata}
\DefineVerbatimEnvironment{VerbOut}{Verbatim}{fontfamily=courier}
\begin{document}
Normal paragraph with \texttt{code using texttt}.
\begin{VerbOut}
VerbOut environment.
\end{VerbOut}
\end{document}
- 如果我将
fontfamily
定义中的更改VerbOut
为inconsolata
,则逐字块将显示正常(Times Roman)字体。 - 如果我将其更改为
\sffamily
,则会收到错误:! Missing \endcsname inserted.
{\sffamily}
使用、\protect\sffamily
和其他变体时,我遇到了同样的错误。
问题:
- 将字体更改为 Inconsolata 的正确方法是什么?
- 将其更改为正在使用的内容的正确方法是什么
\texttt
(以防我们再次改变对字体的看法)?
答案1
字体系列inconsolata
实际上是zi4
:
\documentclass{book}
\usepackage{fancyvrb}
\usepackage{inconsolata}
\DefineVerbatimEnvironment{VerbOutA}{Verbatim}{fontfamily=courier}% Courier
\DefineVerbatimEnvironment{VerbOutB}{Verbatim}{fontfamily=cmtt}% Computer Modern Typewriter
\DefineVerbatimEnvironment{VerbOutC}{Verbatim}{fontfamily=zi4}% Inconsolata
\begin{document}
Normal paragraph with \texttt{code using texttt}.
\begin{VerbOutA}
VerbOut environment.
\end{VerbOutA}
\begin{VerbOutB}
VerbOut environment.
\end{VerbOutB}
\begin{VerbOutC}
VerbOut environment.
\end{VerbOutC}
\end{document}
这是我的\listfiles
:
*File List*
book.cls 2007/10/19 v1.4h Standard LaTeX document class
bk10.clo 2007/10/19 v1.4h Standard LaTeX file (size option)
fancyvrb.sty 2008/02/07
keyval.sty 1999/03/16 v1.13 key=value parser (DPC)
inconsolata.sty 2013/06/09 zi4a
textcomp.sty 2005/09/27 v1.99g Standard LaTeX package
ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file
ts1cmr.fd 1999/05/25 v2.5h Standard LaTeX font definitions
upquote.sty 2012/04/19 v1.3 upright-quote and grave-accent glyphs in verbat
im
ot1zi4.fd 2013/06/09 OT1/zi4 (Inconsolata)
ot1pcr.fd 2001/06/04 font definitions for OT1/pcr.
***********
答案2
跑步
\listfiles
\documentclass{book}
\usepackage[T1]{fontenc}% always a good idea
\usepackage{inconsolata}
\usepackage{fancyvrb}
\DefineVerbatimEnvironment{VerbOut}{Verbatim}{fontfamily=courier}
\begin{document}
Normal paragraph with \texttt{code using texttt}.
\begin{VerbOut}
VerbOut environment.
\end{VerbOut}
\end{document}
并查看文件列表(在日志文件的末尾。它在末尾显示了 Inconsolata 的内部系列名称:
*File List*
book.cls 2007/10/19 v1.4h Standard LaTeX document class
bk10.clo 2007/10/19 v1.4h Standard LaTeX file (size option)
fancyvrb.sty 2011/04/06
keyval.sty 2014/05/08 v1.15 key=value parser (DPC)
fontenc.sty
t1enc.def 2005/09/27 v1.99g Standard LaTeX file
inconsolata.sty 2013/06/09 zi4a
textcomp.sty 2005/09/27 v1.99g Standard LaTeX package
ts1enc.def 2001/06/05 v3.0e (jk/car/fm) Standard LaTeX file
ts1cmr.fd 1999/05/25 v2.5h Standard LaTeX font definitions
upquote.sty 2012/04/19 v1.3 upright-quote and grave-accent glyphs in verbat
im
t1zi4.fd 2013/06/09 T1/zi4 (Inconsolata)
t1pcr.fd 2001/06/04 font definitions for T1/pcr.
***********
t1zi4.fd
是Inconsolata的字体定义文件。t1
是字体编码和zi4
系列名称。
\DefineVerbatimEnvironment{VerbOut}{Verbatim}{fontfamily=zi4}
如果您安装了 Inconsolata,则应该注意。