嵌套引文的排版

嵌套引文的排版

对于嵌套引号的情况,法语印刷术中有以下规则:如果两个或多个右引号彼此相连,则我们只会写一个右引号。

因此:

«啦啦«啦啦啦«啦啦»»»

会变成

«啦啦«啦啦啦«啦啦»

«啦啦«布拉«啦啦»布拉»布拉»

停留

«啦啦«布拉«啦啦»布拉»布拉»

你如何在 LaTeX 中做到这一点?

这就是我遇到的困难:我无法实现“引号必须互相跟随”的条件。

\documentclass{article}
\usepackage[french]{babel}
\usepackage{ifthen}

\makeatletter

\newcounter{nesting@depth}

\providecommand{\guillemets}[1]{%
    \addtocounter{nesting@depth}{1}%
    \og%
    #1%
    \ifthenelse%
        {\value{nesting@depth}>1}%
        {}%
        {\fg{}}%
    \addtocounter{nesting@depth}{-1}%
}

\makeatother

\begin{document}

\guillemets{Bla bla \guillemets{ bla bla bla \guillemets{bla bla}}}

\end{document}

答案1

使用csquotes包:

\documentclass{article}

\usepackage[french]{babel}
\usepackage[autostyle,maxlevel=3,french=guillemets]{csquotes}

\begin{document}

\enquote{Bla bla \enquote{bla bla bla \enquote{bla bla}}}

\end{document}

相关内容