2

I use csquotes for dealing with quotation in a multilanguage document. I tried to use the \hyphenquote for quoting a german text. In my case I obtain nested quotes but with two different language.

I must obtain << text in german ,,quoted text in german">>. When I use \hyphenblockquote{german}{...} I don't obtain the right quotation mark despite the language is well chosen. I have tried using \hyphenblockquote{german}{\foreignlanguage{german}{...}}. I obtain a better result but csquotes considered the result as a nested result and add only a single quotation mark ,...' that is not corresponding to the expected result.

MNWE:

\documentclass{book}

\usepackage{polyglossia}
\setmainlanguage{french}
\setotherlanguage{german}
\setotherlanguage{english}

\usepackage[autostyle=true,debug=true,autopunct=true,csdisplay = true]{csquotes}
\makeatletter \XeTeXinterchartoks 4095 \french@punctguillend = {\xpg@unskip\nobreakspace}

\begin{document}
%%not working at all
\hyphenblockquote{german}{\enquote{TEST}}
%% bad quotation marks
\hyphenblockquote{german}{\foreignlanguage{german}{\enquote{TEST}}}
\end{document}
  • You always want to have French quotation marks surrounding the complete text and double German ones in the embedded quotation? I'm afraid that blockquote and friends are not quite the way to go, then: Once you hit a threshold (say the quotation is at least 3 lines long in normal text mode), the blockquote will be set as a block, without the outer (French) quotationmarks, and inner quotations will move up on level (German single quotation marks will be turned into German double). So what output you get will depend on how long your \blockquote is and what thresholds you have set. – Andreas Oct 12 '17 at 21:25
1

You could define your own style using French quotation marks for the outer quotation and German ones for the inner quotation. If you have a quotation like the one shown in your question, you could activate that style and turn it off again once you're done with it.

\documentclass{book}

\usepackage{lipsum}
\usepackage{polyglossia}
\setmainlanguage{french}
\setotherlanguage{german}
\setotherlanguage{english}

\usepackage[autostyle=true,debug=true,autopunct=true,csdisplay = true]{csquotes}
\makeatletter \XeTeXinterchartoks 4095 \french@punctguillend = {\xpg@unskip\nobreakspace}

\DeclareQuoteStyle{freger}
{\guillemotleft}{\guillemotright}
{\quotedblbase}{\textquotedblleft}

\begin{document}
\setquotestyle{freger}
\hyphenquote{german}{\enquote{Dies ist ein deutsches Zitat innerhalb französischer Anführungszeichen.}}

\hyphenblockquote{german}{Das wird so ein langer Absatz, dass er mindestens über zwei Zeilen im Fließtext geht. Damit sollte gewährleistet sein, dass das Zitat als Blockzitat gesetzt wird. Die äußeren Anführungszeichen entfallen damit übrigens!  \enquote{Inneres Zitat in äußeren Anführungszeichen: \foreignquote{german}{Flexibilität bringt manches durcheinander}, sagte mal ein weiser Mann, oder vielleicht war es auch eine Waise.} Das war eigentlich schon alles.}

\setquotestyle*
\hyphenblockquote{german}{\enquote{Back to normal!}}
\end{document}
  • Thank you for your proposition. It works well. The chosen quote style could be deactivated using \setquotestyle* (starred version of \setquotestyle). – Guuk Oct 13 '17 at 15:09
  • @Guuk Indeed -- but I already had used \setquotestyle* in my example (see two lines above \end{document}. – Andreas Oct 14 '17 at 5:31

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.