LINUX.ORG.RU

Arch, XeLaTex и кириллица

 , , , ,


0

2

Никак не могу заставить xelatex собирать простейший документ.

\newcommand{\No}{\textnumero}
\documentclass{eskdtext}
\usepackage{fontspec}
\usepackage{xecyr}

\setsansfont[Mapping=tex-text]{Liberation Sans}
\setmonofont[Mapping=tex-text]{Liberation Mono}

\ESKDtitle{dasd}
\ESKDauthor{asd}

\begin{document}
\maketitle
text
\end{document}

ошибки

Undefined control sequence. \begin{document}
Command \CYRL unavailable in encoding EU1. \begin{document}
Command \CYR* unavailable in encoding EU1. \begin{document} // таких много
No Cyrillic font encoding has been loaded so far.

Версии

Name            : texlive-core
Version         : 2017.44918-1

Name            : texlive-bin
Version         : 2017.44590-2

Name            : texlive-fontsextra
Version         : 2017.44818-1

Name            : texlive-langcyrillic
Version         : 2017.44895-1

Перерыл и перепробовал всевозможные варианты..

★★★

Ответ на: комментарий от NoobeR
\documentclass{article}
\usepackage{fontspec}
\usepackage{xecyr}

\setsansfont[Mapping=tex-text]{Liberation Sans}
\setromanfont[Mapping=tex-text]{Liberation Sans}
\setmonofont[Mapping=tex-text]{Liberation Mono}

\begin{document}
Превед, медвед!
\end{document}

Вроде фурычит. А на eskd и правда ругается.

demidrol ★★★★★ ()
Последнее исправление: demidrol (всего исправлений: 1)
Ответ на: комментарий от XMs
\newcommand{\No}{\textnumero}
\documentclass{eskdtext}
\usepackage{polyglossia,fontspec}
\usepackage{xecyr}
\setdefaultlanguage{russian}

%\setromanfont[Mapping=tex-text]{Liberation Serif}
\setsansfont[Mapping=tex-text]{Liberation Sans}
\setmonofont[Mapping=tex-text]{Liberation Mono}
\newfontfamily\cyrillicfont{Liberation Serif}

\ESKDtitle{dasd}
\ESKDauthor{asd}

\begin{document}
\maketitle
text
\end{document}

ошибки

Command \CYRL unavailable in encoding EU1. \begin{document}
No Cyrillic font encoding has been loaded so far.
Font shape `EU1/LiberationSerif(0)/m/sl' undefined(Font) using `EU1/lmr/m/n' instead

В файле с курсачом всё осталось, как было. Там есть polyglossia и раньше собиралось. Сейчас либо я что-то не доустановил, либо накосячили мейнтейнеры арча.

NoobeR ★★★ ()
Ответ на: комментарий от XMs

У меня тоже есть и оно работало, а сейчас внезапно перестало. Видимо придется искать замену eskdx..

ссылка на документ

https://paste.ubuntu.com/25574149/

NoobeR ★★★ ()
Последнее исправление: NoobeR (всего исправлений: 1)

Юникодные движки (XeLaTeX, LuaLaTeX) все еще развиваются и изменяются, в частности, экспериментальная кодировка шрифтов EU1 заменилась на TU. А eskdx, похоже про TU не в курсе (а может сам eskdx и не виноват, надо бы внимательно посмотреть внутрь). В качестве быстрого фикса могу предложить подключать fontspec с опцией euenc:

\usepackage[euenc]{fontspec}

Так работает.

TeopeTuK ★★★ ()
Последнее исправление: TeopeTuK (всего исправлений: 1)
Ответ на: комментарий от NoobeR

В моих документах преамбула вот такая (оставил только общее для всех, чтобы ничего не мешало), обрати внимание, что пакета xecyr нет:

\newcommand{\No}{\textnumero}
\documentclass[russian, utf8, 14pt, draft]{eskdtext}
\usepackage[T2A]{fontenc}
\usepackage{indentfirst}
\frenchspacing

XMs ★★★★★ ()
Ответ на: комментарий от TeopeTuK

Действительно, не посмотрел, чем оно собирается. Вот это точно собирается XeLaTeX (часть преамбулы шаблона, который я коллегам делал):

\newcommand{\No}{\textnumero}
\documentclass[russian, utf8, columnsxxiv]{eskdtab}
\usepackage{fontspec}
\usepackage{eskdellist}
\usepackage{ulem}
\usepackage{xecyr}
\usepackage{eso-pic}

\defaultfontfeatures{Ligatures={TeX}, Renderer=Basic, Mapping=tex-text}
\setmainfont{GOST type A}
\setsansfont{GOST type A}
\setmonofont{GOST type A}

XMs ★★★★★ ()