Polyglossia 및 Minted에서 세르비아어 키릴 문자를 사용하는 방법

Polyglossia 및 Minted에서 세르비아어 키릴 문자를 사용하는 방법

세르비아어 키릴 문자로 문서를 작성하는 데 을 (를) 사용하고 polyglossia있는데 소스 코드 구문 강조 표시에 사용하려고 하면 minted오류가 발생합니다(pdf가 생성되지만).

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

PDF가 생성되지만 minted환경에 키릴 단어가 없습니다. 을 사용하지 않으면 오류가 발생하지 않습니다 minted.

나는 cyrillicfont서문에서 다음과 같이 정의했습니다.

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

coffeescript이 스니펫을 다음과 함께 표시하려고 합니다 minted.

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

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

PDF가 생성되고 코드가 표시되지만 Коментар 대신 공백이 있습니다. 다음 오류 및 경고가 표시됩니다.

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.

에 대한 옵션 과 함께 TexStudio및 을 사용하고 있습니다 .xelatex--shell-escapeminted

  1. 서문에 키릴 글꼴을 포함했는데 키릴 글꼴 정의 오류가 표시되는 이유는 무엇입니까?
  2. minted환경 에서 키릴 단어를 표시하는 방법은 무엇입니까 ?

답변1

키릴 문자를 지원하는 고정 폭 글꼴을 정의해야 합니다. 기본 항목(Latin Modern Mono)은 그렇지 않습니다.

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

사용 가능한 고정폭 글꼴을 찾으세요. CMU Typewriter Text가 시스템 글꼴로 설치되지 않은 경우 다음을 수행해야 합니다.

\setmonofont{cmuntt.otf}

전체 TeX 배포판이 있는 경우.

ucsXeLaTeX로 로드하지 마세요 . 또한 pdfsync피해야 합니다. 동기화 기능은 최신 TeX 배포판에서 자동으로 제공되는 최신 SyncTeX 메커니즘보다 훨씬 나쁩니다( -pdfsync=1대부분의 프런트 엔드에서 이미 수행하고 있는 옵션을 추가하세요).

여기에 이미지 설명을 입력하세요

관련 정보