Cómo utilizar la escritura cirílica serbia con Polyglossia y acuñada

Cómo utilizar la escritura cirílica serbia con Polyglossia y acuñada

Lo estoy usando polyglossiapara escribir un documento en escritura cirílica serbia, pero cuando intento usarlo mintedpara resaltar la sintaxis del código fuente, aparece un error (aunque se genera un pdf):

polyglossia: The current roman font does not contain the Cyrill(polyglossia) Please define \cyrillicfont with \newfontfamily. ...l=lst:rssfeeder,caption=RssItemView.java]

Se genera un PDF, pero sin palabras cirílicas en mintedel entorno. Tenga en cuenta que no hay ningún error si no uso minted.

Lo definí cyrillicfonten el preámbulo:

\documentclass[12pt,a4paper,serbian,oneside]{book}

% minted  - paket za prikaz programa
\usepackage{minted}

% srpski jezik
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage[Script=Cyrillic]{serbian}
\setmainfont{Times New Roman}
\newfontfamily\cyrillicfont{Times New Roman}

\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{textcomp}
\usepackage{amsfonts}
\usepackage{graphicx}
\usepackage{ucs}
\usepackage{pdfsync}
\usepackage[left=2.5cm,right=2.5cm,top=2.5cm,bottom=2.5cm]{geometry}


% Numerisanje subsubcetion
\setcounter{secnumdepth}{3}

%Prikaz subsubsection u sadrzaju
%\setcounter{tocdepth}{3}

% Komanda za horizontal ruler
\newcommand{\HRule}{\rule{\linewidth}{0.5mm}}

Estoy intentando mostrar este coffeescriptfragmento con minted:

\begin{minted}[mathescape,
               linenos]{coffeescript}
  http = require 'http'

  app.get '/', (req, res) =>
    res.send 'cao'
  # Коментар / Comment : const double pi = 3.1415926535
\end{minted}

Se genera un PDF, se muestra el código, pero en lugar de Коментар hay espacios en blanco. Se muestran los siguientes errores y advertencias:

polyglossia: The current roman font does not contain the Cyrill(polyglossia) Please define \cyrillicfont with \newfontfamily. ...\catcode`\$=3\catcode`\^=7\catcode`\_=8}, ]
Unused global option(s): [serbian].
Font shape `EU1/TimesNewRoman(0)/m/sc' undefined(Font) using `EU1/TimesNewRoman(0)/m/n' instead
Some font shapes were not available, defaults substituted.

Estoy usando TexStudioy xelatexcon --shell-escapeopción para minted.

  1. ¿Por qué aparece el error al definir la fuente cirílica cuando la incluí en el preámbulo?
  2. ¿Cómo mostrar palabras cirílicas en mintedel medio ambiente?

Respuesta1

Debe definir una fuente monoespaciada que admita cirílico; el predeterminado (Latin Modern Mono) no lo hace.

\documentclass[12pt,a4paper,serbian,oneside]{book}

% minted  - paket za prikaz programa
\usepackage{minted}

% srpski jezik
\usepackage{fontspec}
\usepackage{polyglossia}
\setmainlanguage[Script=Cyrillic]{serbian}
\setmainfont{Times New Roman}
\newfontfamily\cyrillicfont{Times New Roman}
\setmonofont{CMU Typewriter Text}

\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{textcomp}
\usepackage{amsfonts}
\usepackage{graphicx}
\usepackage[left=2.5cm,right=2.5cm,top=2.5cm,bottom=2.5cm]{geometry}


% Numerisanje subsubcetion
\setcounter{secnumdepth}{3}

%Prikaz subsubsection u sadrzaju
%\setcounter{tocdepth}{3}

% Komanda za horizontal ruler
\newcommand{\HRule}{\rule{\linewidth}{0.5mm}}

\begin{document}
I'm trying to show this coffeescript snippet with minted:

\begin{minted}[mathescape,
               linenos]{coffeescript}
  http = require 'http'

  app.get '/', (req, res) =>
    res.send 'cao'
  # Коментар / Comment : const double pi = 3.1415926535
\end{minted}
\end{document}

Busque una fuente monoespaciada que tenga disponible. Si CMU Typewriter Text no está instalado como fuente del sistema, debería hacerlo con

\setmonofont{cmuntt.otf}

siempre que tenga una distribución TeX completa.

No cargue ucscon XeLaTeX; También pdfsyncse debe evitar: sus capacidades de sincronización son mucho peores que el mecanismo SyncTeX moderno que proporcionan automáticamente las distribuciones TeX más recientes (agregue la opción -pdfsync=1, que la mayoría de los front-end ya hacen).

ingrese la descripción de la imagen aquí

información relacionada