das Problem, das ich habe, ist das "?", das anstelle der entsprechenden Anführungszeichen angezeigt wird, wenn Text in einer Fremdsprache zitiert wird. Ich habe in Handbüchern nach Paketen wie polyglossia
oder gesucht csquotes
.
Leider habe ich keinen Befehl gefunden, mit dem ich Anführungszeichen für die Sprachen deklarieren könnte, die ich in meinem Dokument verwenden möchte.
Im Klartext könnte ich natürlich ,,
oder verwenden ''
, um das Verhalten von nachzuahmen, enquote
aber auch die bibliographischen Einträge sind von diesem unangenehmen Phänomen betroffen :(
% !TEX TS-program = arara
% !TEX encoding = UTF-8 Unicode
% arara: xelatex: { shell: true }
% arara: biber
% arara: xelatex: { shell: true }
\documentclass[12pt]{article}
\usepackage[no-math]{fontspec}
\defaultfontfeatures{Ligatures=TeX}
\newfontfamily\greekfont[Script=Greek,Scale=MatchUppercase]{Linux Libertine O}
\newfontfamily\cyrillicfont[Script=Cyrillic,Scale=MatchUppercase]{Linux Libertine O}
\usepackage{polyglossia}
\setdefaultlanguage{polish}
\setotherlanguages{english,latin,greek,russian,german}
\usepackage[strict=false,autostyle=true,english=american,german=guillemets]{csquotes}
\PassOptionsToPackage{%
natbib=true,
style=authoryear-comp,
hyperref=true,
backend=biber,
maxbibnames=99,
firstinits=true,
uniquename=init,
maxcitenames=1,
citetracker=true,
parentracker=true,
backref=true,
backrefstyle=two,
} {biblatex}
\usepackage{biblatex}
\usepackage{filecontents}
\begin{filecontents}{bibliography.bib}
@article{Author2014,
author = {Joe, Smith},
title = {Publication title in polish language},
journal = {Journal of Journals},
pages = {1},
year = {2014},
month = {March}
}
\end{filecontents}
\addbibresource{bibliography.bib}
\begin{document}
\noindent{}{\enquote{\languagename{} \today}}\\
\textenglish{\enquote{\languagename{} \today}}\\
\textgerman{\enquote{\languagename{} \today}}\\
\textlatin{\enquote{\languagename{} \today}}\\
\textgreek[variant=ancient]{\enquote{\languagename{} \today}}\\
\textrussian{\enquote{\languagename{} \today}}\\
\textpolish{\enquote{\languagename{} \today}}\\
\cite{Author2014}
\printbibliography
\end{document}
Antwort1
Das Problem besteht darin, dass csquotes
er weder Polnisch noch Latein kann, wie Sie in der Protokolldatei sehen können.
Package csquotes Warning: No style for language 'polish'.
Sie müssen also angeben, csquotes
welche Art von Anführungszeichen Sie in einem polnischen Text sehen möchten.
Sie könnten
\DeclareQuoteStyle{polish}% I looked it up on Wikipedia, no idea if it's right
{\quotedblbase}
{\textquotedblright}
[0.05em]
{\textquoteleft}
{\textquoteright}
\DeclareQuoteStyle{latin}% this is just a copy of the German definition
{\quotedblbase}
{\textquotedblleft}
[0.05em]
{\quotesinglbase}
{\fixligatures\textquoteleft}
in der Präambel.
Generell muss man \DeclareQuoteStyle
für jede Sprache csquotes
, die man nicht kennt, eine haben. Die Liste der unterstützten Sprachen finden Sie in csquotes.def
(diese Datei finden Sie mit kpsewhich csquotes.def
). Dort finden Sie auch andere Definitionen zum Vergleich.
Die Syntax für den Befehl lautet wie folgt (siehecsquotes
Dokumentation, insbesondere § 8.1Zitatstile definieren).
\DeclareQuoteStyle[variant]{styl}[outer init][inner init]%
{opening outer mark}
[middle outer mark]
{closing outer mark}
[kern]
{opening inner mark}
[middle inner mark]
{closing inner mark}
Wenn Sie wissen, wie Sie die Anführungszeichen Ihrer Sprache einrichten, csquotes
und Ihre Sprache derzeit nicht von diesem Paket unterstützt wird, möchten Sie möglicherweise dem Betreuer vorschlagen, sie einzuschließenhttps://github.com/josephwright/csquotes/issues