``
我最近发现 LaTeX 的开引号 ( ) 和闭引号 ( )的符号不同''
。我一直写错了"abc"
。我该如何将所有引号转换为``abc''
?手动操作会花很长时间,因为我有很多引号。
答案1
的替代方案quotes
是csquotes
来自 2011 年,而quotes
是来自 1997 年……
\documentclass[english]{article}
\usepackage{babel}
\usepackage{csquotes}
\MakeOuterQuote{"}
\begin{document}
Hello "World"!
\end{document}
答案2
包裹csquotes
除了上述提到的,还有更多优点。如果您使用命令\enquote{. . .}
,您可以嵌套多层引用,而 LaTeX 会保留正确的符号组合。您甚至可以设置本地化首选项,以便使用适合某种语言的正确符号。
例如,\enquote{\enquote{This is a quote within a quote}}
将被呈现为:
“‘这是引言中的引言’”
(相邻符号之间有一条很窄的空间)。
但是如果你csquotes
这样加载包(我通常这样做):
\usepackage[autostyle=false, style=british]{csquotes}
上述代码将呈现如下形式:
“这是引言中的引言”
有关更多详细信息,请参阅该包的文档(texdoc csquotes
)。
答案3
有一个用于此的包:quotes
。使用此包,"text"
可以正确排版为``text''
。
答案4
编辑2鲍里斯提出的解决方案似乎是更简单的方法。
根据您使用的编辑器,您可以执行搜索和替换。您将搜索
_"
(用空格替换下划线,它只是为了表达我的观点)然后将其替换为
_``
再次,下划线代表空格。
编辑
正如大卫·卡莱尔 (David Carlisle) 指出的那样,您还应该更改正确的引文,''
以便获得正确的引文。
但是你必须考虑右引号后面的字符。我知道最好的办法就是尝试考虑所有可能性(我能想到 4 个可能的情况)
"_ %your quote is followed by a white space
". %your quote is followed by a period
", %your quote is followed by a comma
"! %your quote is followed by an exclamation mark
然后将它们分别替换为各自的版本
''_
ETC。
编辑3MWE 带报价包
% !TEX encoding = UTF-8 Unicode
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage{quotes}
\begin{document}
\noindent "test" \\
``test''
\end{document}