在生成 LaTeX 来呈现 PostScript 和 PDF 的自动化系统中,我需要避免 LaTeX 中的歧义:
- 两个反引号 (
``
) 产生一个结束双引号:“
- 问号/感叹号后跟反引号 (
?`
) 会生成反转字符:¿
- 结合起来,当尝试显示一个问号后跟一个引号(
,,what?``
)时,LaTeX 会产生以下输出:„what¿‘
避免这种情况的最佳做法是什么? 所需的输出是:„what?“
答案1
您可以使用以下方法禁用连字microtype
:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{microtype}
\DisableLigatures[?,!]{encoding=T1}
\begin{document}
,,Hier?``
,,Hier!``
\end{document}
或者教自动化系统使用 UTF-8 并输入“真实”字符:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\begin{document}
„Hier?“
„Hier!“
\end{document}
正如 cgnieder 所暗示的,还有另一种可能性:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[ngerman]{babel}
\begin{document}
"`Hier?"'
"`Hier!"'
\end{document}
答案2
我只是使用了花括号:
\documentclass{article}
\begin{document}
test?{``}
\end{document}
似乎有效;-)