Lo estoy usando polyglossia
para escribir un documento en escritura cirílica serbia, pero cuando intento usarlo minted
para 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 minted
el entorno. Tenga en cuenta que no hay ningún error si no uso minted
.
Lo definí cyrillicfont
en 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 coffeescript
fragmento 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 TexStudio
y xelatex
con --shell-escape
opción para minted
.
- ¿Por qué aparece el error al definir la fuente cirílica cuando la incluí en el preámbulo?
- ¿Cómo mostrar palabras cirílicas en
minted
el 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 ucs
con XeLaTeX; También pdfsync
se 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).