多列块引用

多列块引用

我想引用多位发言者的采访记录。我希望这些引言以单倍行距的块引用格式显示,但我希望发言者的缩写(例如“A:”或“B:”)和冒号后的文本(即他们所说的内容)水平对齐。我猜我需要在块引用环境中设置两列,但由于我的技能非常差/初学者,我似乎根本无法解决这个问题。我能想到的唯一想法是在引用环境中嵌套一个表格环境,例如:

\begin{quote}
\begin{tabular}{l l}
 A: & transcription of what the first person says \\
 B: & transcription of what the second person replies\\
\end{tabular}
\end{quote}

但这并不是很好,因为表格不会进行任何换行,而我引用的记录包含可能很长的言语行为。

我认为另一种选择是将 itemize 环境嵌套在 quote 环境中。但这似乎也不是一种选择,因为 itemize 一旦嵌套就会自动添加项目符号(与没有引用环境时使用时不同)。

\begin{quote}
\begin{itemize}
 \item{A:} Text the first person says \\
 \item{B:} Text the second person says\\
 \end{itemize}
\end{quote}

一般来说,这两种选择既不优雅也不高效,因为它们 A) 没有将引文链接到其来源(就像 csquotes 包中的 textquote 所做的那样)B) 没有典型的块引用字符(小字体,整个引文都是单倍行距)——我认为这两种选择都是可取的。如果很难实现这两个目标,那么 B 就更重要了,因为所有来源都是我自己的,我不需要恢复到书目条目。有人能帮帮我吗?

答案1

由于您没有指定文档类,也没有指定所使用的参考书目管理包和引用样式,因此以下示例不包含如何实现对引文的引用的解决方案,可能不完全适合您的需要。

\documentclass{article}
\usepackage{setspace}
\usepackage{lipsum}

\usepackage{enumitem}
\newlist{myquote}{description}{1}
\setlist[myquote]{
  font={\normalfont},
   labelwidth=20pt,
   labelsep=0pt,
  leftmargin=20pt
}

\onehalfspacing
\usepackage{changepage}
\usepackage{etoolbox}
\BeforeBeginEnvironment{myquote}{\par\vspace{\baselineskip}\begin{singlespace*}\begin{adjustwidth}{1cm}{1cm}}
\AfterEndEnvironment{myquote}{\end{adjustwidth}\end{singlespace*}\par\vspace{\baselineskip}}

\begin{document}

\lipsum[1]

\begin{myquote}
\item[A:] \lipsum[2]
\item[B:] \lipsum[3]
\item[C:] \lipsum[4]
\end{myquote}

\lipsum[5]
\end{document}

在此处输入图片描述

以下 MWE 包含一个带有可选参数的环境,可以使用引用键填写该参数。相应的引用将打印在环境的末尾。

\documentclass{report}
\usepackage{setspace}
\usepackage{lipsum}

\usepackage{enumitem}
\usepackage[authoryear,round]{natbib}
\bibliographystyle{plainnat}
\usepackage{filecontents}

\begin{filecontents}{\jobname.bib}
@book{key,
  author = {Author, A.},
  year = {2001},
  title = {Title},
  publisher = {Publisher},
}
\end{filecontents}



\onehalfspacing
\usepackage{changepage}
\usepackage{xparse}

\DeclareDocumentEnvironment{myquote}{O {}}{\par\vspace{\baselineskip}\begin{singlespace*}\begin{adjustwidth}{1cm}{1cm}\begin{description}[font={\normalfont},labelwidth=20pt,labelsep=0pt,leftmargin=20pt]}{\end{description}\noindent \cite{#1}\end{adjustwidth}\end{singlespace*}\par\vspace{\baselineskip}}


\begin{document}

\lipsum[5]

\begin{myquote}[key]
\item[A:] \lipsum[2]
\item[B:] \lipsum[2]
\end{myquote}

\lipsum[5]

\bibliography{\jobname}
\end{document}

在此处输入图片描述

相关内容