这似乎是一个基本的问题,但我一直找不到明确的答案。所讨论的文化背景是美式英语。
在 biblatex 中将引文放入脚注时(我使用的是biblatex-chicago
),我一直遵循的规则是将引文命令放在括号中的位置:在引文末尾之后和最后一个标点符号之前。但最终结果是标点符号位于引文之后,例如“这是我的引文”。1 正确的标点符号应该是“这是我的引文”。1 如何自动完成此操作?
以下是一个示例文档:
\documentclass[]{article}
\usepackage[]{setspace}
\usepackage[utf8]{inputenc}
\usepackage[american]{babel}
\usepackage[]{csquotes}
\usepackage[backend=biber,bibencoding=utf8]{biblatex}
\usepackage[]{hyperref}
\bibliography{mybib}
\begin{document} ``This is a quote''\autocite[1]{mysource}.
\end{document}
答案1
在很大程度上,您可以通过biblatex
加载babel
该[american]
选项自动获取美式标点符号模式。
对于你的书目项目本身
如果您 babel
使用选项加载包[american]
,biblatex
将自动将标点符号放在引号内。手册第 3.91 节对此进行了解释biblatex
。
对于文中引用
自动执行此操作的最佳方法是使用包\textquote
的命令csquotes
。您需要更改引文的引用部分的默认格式,并且需要重新定义命令\mktextquote
。这在手册的第 9.2 节中有说明csquotes
。
以下是一个示例文档。请注意,文本引文和参考书目项中的引号位置符合美国标准。示例在biblatex-chicago
加载包后的工作方式相同。
\documentclass[12pt]{article}
\usepackage[citestyle=verbose]{biblatex}
%\usepackage{biblatex-chicago} % or load this instead
\usepackage[american]{babel}
\usepackage{csquotes}
\renewcommand{\mktextquote}[6]{#1#2#4#5#3#6}
\renewcommand*{\mkcitation}{}
\bibliography{biblatex-examples}
\usepackage{lipsum}
\begin{document}
Here is a quotation \textquote[\autocite{shore}]{Some text}.
\end{document}