Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Wrong spacing of swiss-german quotation marks if main language is french #169

Closed
adn792 opened this issue Nov 23, 2016 · 6 comments
Closed

Comments

@adn792
Copy link

adn792 commented Nov 23, 2016

Hi,

Apparently, when \setmainlanguage{french} is set in polyglossia, the macros \guillemotleft and \guilsinglleft always print << or < followed by some white space, and the macros \guillemotright and \guilsinglright always print >> or > preceded by some white space too.
In french, this is the normal behaviour.

However, if you try to cite some german (using the swiss-german quotation marks) text in your french text, the above described behaviour adds some spacing between the quotation marks and the quoted words, although this shouldn't be the case according to the swiss-german practices (see for instance here).

This is also problematic when using polyglossia with the csquotes package, which uses \guillemotleft, \guilsinglleft, \guillemotright and \guilsinglright to define its swiss-german quote style (see csquotes.def, lines 121 sqq).

So: the french spacing after and before \guillemotleft, \guilsinglleft, \guillemotright and \guilsinglright should only appear when the actual language in a portion of text is french, and not when these macros are used when any other language is selected.

Thanks and best regards
Adrien

% Minimal working example below

\documentclass{minimal}
\usepackage{polyglossia}
\setmainlanguage{french}% comment this line to see the correct output in swiss-german style.
\setotherlanguage[variant=swiss]{german}
\begin{document}
The output is correct here (opening guillemots/chevrons are followed by proper spacing; closing guillemots/chevrons are preceded by proper spacing):

\guillemotleft Un peu de \guilsinglleft texte\guilsinglright{} en français.\guillemotright

The output is wrong here (in swiss-german, opening guillemots/chevrons shouldn't be followed by any spacing, neither closing guillemots/chevrons should be preceded by any spacing):

\foreignlanguage{german}{\guillemotleft Ein bisschen \guilsinglleft Text\guilsinglright{} auf Deutsch.\guillemotright}
\end{document}

@adn792 adn792 changed the title Wrong spacing of swiss-german quotation marks Wrong spacing of swiss-german quotation marks if main language is french Nov 23, 2016
@jspitz
Copy link
Collaborator

jspitz commented Dec 13, 2016

Seems related to #68

@jspitz
Copy link
Collaborator

jspitz commented Aug 20, 2019

The cause is the same as for #66: \french@punctuation remains in effect if another language is nested into french (as main language or secondary language).

Probably the only solution is to define \nofrench@punctuation in the style file and issue it at the very beginning of any language switch. But then, other languages might have similar hooks that need to be taken care of.

@bastien-roucaries
Copy link
Collaborator

bastien-roucaries commented Aug 20, 2019 via email

@jspitz
Copy link
Collaborator

jspitz commented Aug 20, 2019

It's not fixed in head. It's only fixed if french is a secondary language (and hence closed before the other language sets in).

@jspitz
Copy link
Collaborator

jspitz commented Aug 20, 2019

See #66 for a (incomplete) idea.

@reutenauer
Copy link
Owner

Fixed by #235.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

4 participants