aspas (sinal de aspas) xelatex + poliglossia + csquotes

aspas (sinal de aspas) xelatex + poliglossia + csquotes

o problema que tenho é o "?"que aparece em vez de aspas (sinais) apropriadas ao citar/citar texto em idioma estrangeiro. Pesquisei manuais para pacotes como polyglossiaou csquotes.

Infelizmente não encontrei um comando que me permita declarar aspas (sinais) para os idiomas que pretendo usar em meu documento.

No texto simples eu poderia, é claro, usar ,,ou ''para imitar o comportamento de, enquotemas as entradas bibliográficas também são afetadas por esse fenômeno desagradável :(

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

insira a descrição da imagem aqui

Responder1

O problema é que csquotesnão sabe polonês e latim como você pode ver no arquivo de log.

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

Então você terá que dizer csquotesque tipo de aspas gostaria de ver em um texto em polonês.

Você pode emitir

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

no preâmbulo.

Em geral, você tem que ter um \DeclareQuoteStylepara cada idioma csquotesque não conhece. A lista de idiomas suportados está em csquotes.def(você pode encontrar esse arquivo com kpsewhich csquotes.def). Você pode encontrar outras definições para comparação lá.

A sintaxe do comando é a seguinte (vejacsquotesdocumentação, esp. §8.1Definição de estilos de cotação).

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

Se você sabe como configurar as aspas do seu idioma csquotese seu idioma não é atualmente suportado por esse pacote, você pode considerar sugerir ao mantenedor que o incluahttps://github.com/josephwright/csquotes/issues

insira a descrição da imagem aqui

informação relacionada