%20%D1%81%20fontspec%20%D0%B8%20%D0%BF%D0%BE%D0%BB%D0%B8%D0%B3%D0%BB%D0%BE%D1%81%D1%81%D0%B8%D0%B5%D0%B9.png)
У меня возникли проблемы с fancyref
корректной работой немецкого языка с настройкой fontspec/polyglossia.
Это голая настройка без каких-либо языковых настроек:
\documentclass{scrartcl}
\usepackage{fontspec}
\usepackage{fancyref}
\begin{document}
Das ist ein deutscher Text
\begin{figure}
\centering
Das soll eine Abbildung sein
\label{fig:sample}
\caption{Beispiel-Abbildung}
\end{figure}
\pagebreak
Das ist die zweite Seite mit einem Verweis auf \fref{fig:sample}.
\end{document}
Интересным является и будет результат, fref
который ссылается на рисунок «на предыдущей странице».
На этом начальном этапе рисунок нумеруется как «Рисунок 1», а ссылка гласит: «Рисунок на предыдущей странице».
Добавление
\usepackage{polyglossia}
\setmainlanguage{german}
изменит заголовок на "Abbildung 1" (что правильно) и ссылку на "abbildung на предыдущей странице". Обратите внимание на строчную "a" в "abbildung", что неправильно, хотя примечательно, что ссылка вообще использует немецкое слово.
Согласно fancyref
руководству, необходимо установить немецкий язык.
\usepackage{german}
\usepackage[german]{fancyref}
Однако это приводит к а) появлению сообщения об ошибке «! Вы еще не определили язык [». и б) текст «]german» будет включен в начало документа.
Если я уберу \setmainlanguage{german}
ссылку, получится «figure auf der vorherigen Seite».
Если я удалю, \usepackage{german}
то будет написано «Развитие на предыдущей странице»
Я совсем запутался во всем этом. Что мне нужно для немецкого документа с LuaLaTeX и fontspec
немецкими fancyref
ссылками?
решение1
Первое: \label
надо идтипосле \caption
.
«Правильным» решением будет использование языковой опции для fancyref
:
\documentclass{scrartcl}
\usepackage{polyglossia}
\usepackage{fontspec}
\usepackage[german]{fancyref}
\setmainlanguage{german}
\begin{document}
Das ist ein deutscher Text
\begin{figure}
\centering
Das soll eine Abbildung sein
\caption{Beispiel-Abbildung}
\label{fig:sample}
\end{figure}
\pagebreak
Das ist die zweite Seite mit einem Verweis auf \fref{fig:sample}.
\end{document}
Хотя я бы использовал varioref
и cleveref
.
\documentclass{scrartcl}
\usepackage{polyglossia}
\usepackage{fontspec}
\usepackage[german]{varioref}
\usepackage[noabbrev]{cleveref}
\setmainlanguage{german}
\begin{document}
Das ist ein deutscher Text
\begin{figure}
\centering
Das soll eine Abbildung sein
\caption{Beispiel-Abbildung}
\label{fig:sample}
\end{figure}
\pagebreak
Das ist die zweite Seite mit einem Verweis auf \vref{fig:sample}.
\end{document}