С помощью LuaLaTeX я скомпилировал один и тот же код разными дистрибутивами:
LuaLaTeX 0.95.0/TeXLive 2016
LuaLaTeX 1.0.4/MiKTeX 2.9.6236
обновлено до последних версий.
К сожалению, я получил другие результаты по polyglossia
поведению.
С помощью следующего кода:
%%============================ Compiler Directives =======================%%
%% %%
% !TeX program = lualatex
% !TeX encoding = utf8
% !TeX spellcheck = uk_UA
\documentclass{article}
%%============================ languagee ann encodings ===================%%
\usepackage{polyglossia}
\setmainlanguage{ukrainian}
\setotherlanguage{russian}
\setotherlanguage{english}
\setsansfont{Arial}
\setmainfont{Times New Roman}
\setmonofont{Consolas}
\defaultfontfeatures{Ligatures={TeX}}
\usepackage[math-style=TeX]{unicode-math}
%%========================================================================%%
\begin{document}
Some text
Якийсь текст
Какой-то текст
\end{document}
LuaLaTeX 0.95.0/TeXLive 2016 работает отлично.
Но LuaLaTeX 1.0.4/MiKTeX 2.9.6236 выдает ошибку:
! Package polyglossia Error: The current roman font does not contain the Cyrillic script!
(polyglossia) Please define \cyrillicfont with \newfontfamily.
See the polyglossia package documentation for explanation.
Главный вопрос:Почему только при этом LuaLaTeX 1.0.4/MiKTeX 2.9.6236
я должен использовать какие-либо другие неинтуитивные конструкции для использования шрифтов, отличные от латиницы?
Это ошибка LuaLaTeX 1.0.4?
Отмечу, что в выбранных шрифтах необходимые символы присутствуют.
решение1
Из вашего лог-файла видно, что вы используете локальную версию times.ttf, а E:/Projects/LaTeX/Z_LaTeX_XP/Fizmatlit/localtexmf/fonts/truetype/times.ttf
также видно, что этот шрифт не имеет правильных функций Script:
. fontspec info: "no-scripts"
.
. Font "TimesNewRoman" does not contain any OpenType `Script' information.
Так что вполне вероятно, что шрифт неисправен, и, как это и есть в случае с localtexmf
is, также вероятно, что только ваша система miktex использует его, что объясняет, почему не работает только miktex. Этот тип ошибок обычно зависит от конкретного файла шрифта, и поэтому может легко зависеть от системы и шрифта.
решение2
работает с LuaTeX 1.0.4:
\documentclass{article}
\usepackage[math-style=TeX]{unicode-math}
\usepackage{libertine}
\setmonofont[Scale=0.9,FakeStretch=0.9]{Consolas}
\newfontface\cyrillicfont{Linux Libertine O}
\usepackage{polyglossia}
\setmainlanguage{ukrainian}
\setotherlanguage{russian}
\setotherlanguage{english}
\begin{document}
Some text
Якийсь текст
Какой-то текст
\ttfamily
Some text
Якийсь текст
Какой-то текст
\end{document}