Kombination aus Polyglossia + Biblatex + CSQuotes ignoriert die Autopunct-Einstellung

Kombination aus Polyglossia + Biblatex + CSQuotes ignoriert die Autopunct-Einstellung

Ich habe Probleme, biblatexdie autopunctOption des csquotesPakets bei der Verwendung zu respektieren polyglossia. Ich möchte meine Referenzen als drucken

IN Proceedings. „Titel der Arbeit.“ In: 2019.

nicht so wie

IN Proceedings. „Titel der Arbeit“. In: 2019.

(Beachten Sie die Platzierung des .„Vorher“-Zeichens .)

Im folgenden MWE wird dies erreicht, wenn ich Babel verwende, abernichtwenn ich verwende polyglossia.

\documentclass{article}

\usepackage{filecontents}
\begin{filecontents}{\jobname.bib}
  @inproceedings{example,
    author = {Proceedings, I. N.},
    year = {2019},
    title = {Title of the Work},
  }
\end{filecontents}

\newif\ifusepolyglossia
\usepolyglossiatrue
%\usepolyglossiafalse
\ifusepolyglossia
  \usepackage{polyglossia}
  \setdefaultlanguage[variant=usmax]{english}
\else
 \usepackage[american]{babel}
\fi
\usepackage[autopunct]{csquotes}
\usepackage[backend=biber]{biblatex}
\addbibresource{\jobname.bib}

\begin{document}
\cite{example}

\printbibliography
\end{document}

Mache ich etwas falsch oder ist mir in einem dieser Pakete einfach ein Fehler aufgefallen? Ich kompiliere mein Dokument mit LuaLaTeX.

Antwort1

Dies ist das Ergebnis einer Inkompatibilität zwischen der Sprachschnittstelle von biblatexund . With kann nur die Hauptsprache ( in diesem Fall) erkennen, nicht aber die Sprachvariante ( ). Oft bleibt dieses Problem unbemerkt, kann aber in bestimmten Randfällen wie diesem unerwünschte Effekte verursachen. Aus diesem Grund wird beim nächsten von eine Warnung ausgegeben, wenn es erneut mit verwendet wird:polyglossiapolyglossia biblatexenglishamericanversionbiblatexpolyglossiahttps://github.com/plk/biblatex/issues/845.


Das vollständige amerikanische Interpunktionsschema für Zitate wird nur aktiviert, wenn biblatexamerikanisches Englisch ( american) erkannt wird, und nicht bei generischem Englisch ( english), das ansonsten mit amerikanischem Englisch identisch ist. Bei polyglossiaerkennen wir immer nur english, sodass das US-Interpunktionsschema nicht aktiviert ist. (Nur um das klarzustellen: Die Verschiebung der Interpunktion um Anführungszeichen, die biblatexin der Bibliographie durch erzeugt werden, wird ausschließlich durch biblatexund dessen Befehle gesteuert \uspunctuation, und die Option \stdpunctuation. csquotes' autopuncthat hier keinen Einfluss.)

Die folgende Zeile aktiviert die US-Anführungszeichen-Interpunktionsregeln auch bei normalemenglish

\DefineBibliographyExtras{english}{\uspunctuation}

Alternativ können Sie englishmitamerican

\DeclareLanguageMapping{english}{american}

Beachten Sie jedoch, dass davon in der Dokumentation ausdrücklich abgeraten wird biblatex. Der Vorteil dieses Ansatzes gegenüber dem spezifischen \DefineBibliographyExtras{english}{\uspunctuation}wäre, dass automatisch kopiert würdeallevon americans-Einstellungen auf englishund nicht nur auf die \uspunctuation.

\documentclass{article}

\newif\ifusepolyglossia
\usepolyglossiatrue
%\usepolyglossiafalse
\ifusepolyglossia
  \usepackage{polyglossia}
  \setdefaultlanguage[variant=usmax]{english}
\else
 \usepackage[american]{babel}
\fi
\usepackage[autopunct]{csquotes}
\usepackage[backend=biber]{biblatex}

\DefineBibliographyExtras{english}{\uspunctuation}

\addbibresource{biblatex-examples.bib}

\begin{document}
\cite{sigfridsson}

\printbibliography
\end{document}

Emma Sigfridsson und Ulf Ryde. „Vergleich von Methoden zur Ableitung atomarer Ladungen aus dem elektrostatischen Potential und den Momenten.“ In: Journal of Computational Chemistry 19.4 (1998), S. 377–395. doi: 10.1002/(SICI)1096-987X(199803)19:4<377::AID-JCC1>3.0.CO;2-P.

Ein damit verbundenes Problem wird diskutiert inBiblatex-Chicago und nicht-US-amerikanischer Anführungszeichenstil?.Lokalisiertes Datum mit Biblatex und Polyglossia,\DeclareLanguageMappingSuffix, Vererbung und Polyglossie in BiblatexUndWie können wir Polyglossia-Sprachvarianten mit Biblatex-Bibliografien kompatibel machen?Beheben Sie die Kompatibilitätsprobleme zwischen biblatexund polyglossia.


Vor einiger Zeit hätte ich noch ausdrücklich empfohlen, polyglossiaes babelmöglichst aufzugeben, da babeles (wieder) aktiv weiterentwickelt wird und polyglossiaweitgehend brachliegt. babelFunktioniert in der Praxis genauso gut (wenn nicht sogar besser) polyglossiafür die meisten (west-)europäischen Sprachen, macht aber babelauch Fortschritte in Bereichen, in denen polyglossiaes traditionell stärker war (Hebräisch, Arabisch, ...). SieheEntscheiden Sie sich zwischen Polyglossia und Babel für LuaLaTeX im Jahr 2019. Vor kurzem gab es einige Entwicklungen auf dempolyglossiaGitHub-Seite, also gewinnt das Projekt vielleicht wieder an Dynamik. (Nebenbei denke ich, dass die LaTeX-Community davon profitieren würde, wenn die beiden Projekte in irgendeiner Form zusammengeführt würden, anstatt unabhängig voneinander mit einem ähnlichen Ziel weiter entwickelt zu werden. Die Höhen und Tiefen der Entwicklung verwirren die Leute nur darüber, welches Paket sie nehmen sollen.)

verwandte Informationen