符号 ^、kerkis-font 和 texttt 的问题

符号 ^、kerkis-font 和 texttt 的问题

我想写一些类似的东西SomeCode^MoreCode,所以我写了下面的代码。

\documentclass{article}

\usepackage[english,greek]{babel}
\usepackage[utf8]{inputenc}
\usepackage{kerkis}


\begin{document}

\textlatin{\texttt{SomeCode\^{}MoreCode}}

\textlatin{Some text \^{} more text}

\end{document}

问题是我没有得到符号^当它在时texttt{}。如果我删除 kerkis-font,一切都正常

在此处输入图片描述

我能做些什么?

提前致谢!

答案1

您需要 T1 编码才能获得更大范围的字符,但我认为您想要的是^可以使用\textasciiicircum\verb不使用脱字符号的字符:

在此处输入图片描述

\documentclass{article}

\usepackage[english,greek]{babel}
\usepackage[utf8]{inputenc}
\usepackage{kerkis}
\usepackage[T1]{fontenc}

\begin{document}

\textlatin{\texttt{SomeCode\^{}MoreCode}}

\textlatin{Some text \^{} more text}


\textlatin{\texttt{SomeCode\textasciicircum{}MoreCode}}

\textlatin{Some text \textasciicircum{} more text}

\begin{otherlanguage}{english} \verb|SomeCode^MoreCode| \end{otherlanguage}

\end{document}

答案2

由于未知的原因,Kerkis 字体的开发人员发布了非标准版本的 OT1 编码。

事实上,kerkis.sty我们发现

\DeclareTextAccent{\`}{OT1}{30}
\DeclareTextAccent{\'}{OT1}{180}
\DeclareTextAccent{\^}{OT1}{25}

和其他类似的声明。它们适用于 Kerkis,但会破坏符合 OT1 标准的其他字体,尤其是 Courier 字体,该kerkis.sty字体声明为等宽字体,

\renewcommand{\ttdefault}{pcr}

相反,T1 编码的 Kerkis 字体遵循标准。

如果你只使用衬线和无衬线的 Kerkis 字体,OT1 就很好;否则,一定要记住

\usepackage[T1]{fontenc}

在您的文档中使用 Kerkis。

相关内容