我正在使用 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}
輸出是:
更多的是這個這裡。