我使用 pandoc,它将 markdown 解析为 LaTeX。在本例中,我将 pandoc 配置为使用西班牙语的 babel,并写下“avg”,pandoc 将其翻译为\texttt{"avg"}
。
当我这样做时,我获得了下图中的第一个字符串:
所以我发了一个pandoc 的 github 中的问题。但如果我们不知道为什么 LaTeX 会出现这样的行为,这个问题就不太可能得到解决。
有任何想法吗?
我认为解决方案与这个帖子,但我对 LaTeX 了解不多。
谢谢!
更新
这是产生图像输出的最小化代码:
\documentclass[spanish,]{article}
\usepackage[spanish]{babel}
\begin{document}
\texttt{"avg"}
\texttt{"a}
\verb|"a|
\end{document}
答案1
通过观察夸德罗2在以下文档中babel-spanish
:
"a
"A
"o
"O
序数:1. a 1. A 1. o 1. O
这意味着输入如下
1"a
将被渲染为
1.一个
但 的任何出现"a
都会变成 。a(对于"A
、"o
和 也类似"O
)。
您可以使用es-noshorthands
选项全局禁用此功能
\usepackage[spanish,es-noshorthands]{babel}
但你也可以"
禁用
\usepackage[spanish]{babel}
\addto\extraspanish{\spanishdeactivate{"}}
如果你想保留简写但禁用它们,\ttfamily
或者\texttt
你可以这样做
\documentclass[spanish,]{article}
\usepackage[spanish]{babel}
\usepackage{xpatch}
\begingroup\lccode`~=`"
\lowercase{\endgroup
\xapptocmd\ttfamily{\let~"}{}{}
}
\begin{document}
\texttt{"avg"}
\texttt{"a}
\verb|"a|
\end{document}
"
这将重新定义仅在特定上下文中活动的 ,\ttfamily
以仅产生"
。在正常上下文中,"
快捷方式仍然可用。
答案2
在 babel 中也可以使用 option es-noshorthand
。最小示例如下所示:
\documentclass{article}
\usepackage[spanish,es-noshorthands]{babel}
\begin{document}
\texttt{"avg"}
\texttt{"a}
\verb|"a|
\end{document}
输出为:
更多内容如下这里。