我尝试强制csquotes
始终设置\blockquote
显示模式但仍将引号括在引号中,特别是德语的引号。
我怎样才能实现这个目标?
\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern,blindtext}
\usepackage[babel=true,strict=true,german=quotes,threshold=1]{csquotes}
\begin{document}
\blindtext
\blockquote{\blindtext}
\blindtext
\end{document}
此示例将引文生成为缩进的段落,但没有引号。
答案1
这csquotes
手动的建议重新定义\mkblockquote
,参见第 8.7 节引用和引文的钩子. 一个可能性是
\renewcommand\mkblockquote[4]{\enquote{#1#2#3}#4}
其效果与这个答案。
\mkblockquote
refer to 的四个参数
\mkblockquote{<text>}{<punct>}{<tpunct>}{<cite>}
手册中解释如下
#1
命令的文本参数。#2
命令的可选<punct>
参数。如果没有<punct>
参数,则此参数为空。#3
命令后紧接着的<tpunct>
标点符号。如果没有这样的标点符号或者该autopunct
功能被禁用,则此参数为空。#4
<cite>
命令的可选参数,包装在 中\mkcitation
。如果没有<cite>
参数,则此参数为空。对于集成引用命令,此参数是引用代码,包装在 中\mkccitation
。
在下面的例子中我使用
\renewcommand\mkblockquote[4]{\leavevmode\llap{,,}#1#2#3``#4}
将\llap{,,}
左引号置于引文边缘的文本左侧。(右引号之前的空格是 的产物,\blindtext
与 无关\mkblockquote
。)
\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern,blindtext}
\usepackage[babel=true,strict=true,german=quotes,threshold=1]{csquotes}
\renewcommand\mkblockquote[4]{\leavevmode\llap{,,}#1#2#3``#4}
\begin{document}
\blindtext
\blockquote{\blindtext}
\blindtext
\end{document}
答案2
\enquote{...}
只需在命令中添加即可\blockquote
。
梅威瑟:
\documentclass{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern,blindtext}
\usepackage[babel=true,strict=true,german=quotes,threshold=1]{csquotes}
\begin{document}
\blindtext
\blockquote{\enquote{\blindtext}} %<=======================
\blindtext
\end{document}
结果:
答案3
我在-Command 中添加了threshold=1
和,以便即使在短引用中也能强制使用块引用。thresholdtype=words
\usepackage
选项threshold
是指单词或行(默认)。结合thresholdtype=words
块引用的阈值可以设置为一个单词。
对我来说,以下命令到目前为止运行良好:
\usepackage[autostyle=false, style=english, threshold=1, thresholdtype=words]{csquotes}
这包装文档第 4 页显示以下选项:
阈值=〈整数〉
默认值:3
此选项定义块引用工具在确定引用是否应以内联或显示模式排版时使用的行数或字数作为阈值。它对应于 \SetBlockThreshold 命令。有关更多详细信息,请参阅 §§ 3.5 和 8.6。
阈值类型=线
单词默认:行
此选项选择块阈值类型。使用thresholdtype=lines,块引用功能将确定排版引用所需的行数;使用thresholdtype=words,它们将计算引用中的字数。3默认阈值设置为 3 行。如果您喜欢 50 个字,请设置threshold=50 和thresholdtype=words。有关更多详细信息,请参阅 § 3.5
答案4
摘自(并改编自)萌微。
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage[american]{babel}
\usepackage{lipsum}
\usepackage[
autostyle,
strict=true,
english=american,
threshold=2
]{csquotes}
\makeatletter
\renewcommand{\mkbegdispquote}[2]{%
\leavevmode\llap{\openautoquote\csq@eqgroup}%
\csq@bqgroup
\advance\csq@qlevel\@ne
\csq@resetstyle
\csq@init}
\renewcommand\mkblockquote[4]{%
\leavevmode\llap{\openautoquote\csq@eqgroup}%
\csq@bqgroup
\advance\csq@qlevel\@ne
\csq@resetstyle
\csq@init
#1#2#3\closeautoquote#4}
\makeatother
\renewcommand{\mkenddispquote}[2]{\closeautoquote\normalfont#1#2}
\begin{document}
\lipsum[1]
\begin{displayquote}[Blind Text]
\lipsum[1]
\end{displayquote}
\blockquote{\lipsum[1]}
\lipsum[1]
\end{document}