引用符(引用記号) xelatex + polyglossia + csquotes

引用符(引用記号) xelatex + polyglossia + csquotes

私が抱えている問題は「?polyglossia外国語のテキストを引用する際に、適切な引用符 (記号) の代わりに表示される " です。やなどのパッケージのマニュアルを検索しましたcsquotes

残念ながら、ドキュメントで使用しようとしている言語の引用符 (記号) を宣言できるコマンドが見つかりませんでした。

プレーンテキストでは、もちろん,,または''を使用して の動作を模倣できますenquoteが、書誌エントリもこの不快な現象の影響を受ける可能性があります :(

% !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}

ここに画像の説明を入力してください

答え1

問題は、csquotesログ ファイルでわかるように、ポーランド語とラテン語が認識されないことです。

Package csquotes Warning: No style for language 'polish'.

csquotesしたがって、ポーランド語のテキストにどのような引用符を表示したいかを指定する必要があります。

発行する可能性がある

\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}

前文に。

\DeclareQuoteStyle一般に、各言語がcsquotes知らない場合はが必要です。サポートされている言語のリストは にありますcsquotes.def(そのファイルは で見つかりますkpsewhich csquotes.def)。比較のために他の定義もそこにあります。

コマンドの構文は次のとおりです(csquotesドキュメンテーション、特に§8.1引用スタイルの定義)。

\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}

言語の引用符の設定方法を知っていてcsquotes、その言語が現在そのパッケージでサポートされていない場合は、メンテナにそれを含めるように提案することを検討してください。https://github.com/josephwright/csquotes/issues

ここに画像の説明を入力してください

関連情報