
Я пытаюсь получить глоссарий на французском языке. Поэтому я начал с образца (на английском) из glossaries
пакета. Я запускаю latex
затем makeglossaries
затем latex
(x2), с образцом все в порядке. Я запускаю тот же образец, используя xindy
опцию для glossaries
пакета и добавляя, \usepackage[spanish]{babel}
как это предлагается в руководстве по пакету глоссариев, все работает очень хорошо.
Но вот тут и начинается моя проблема: если я меняю испанский на французский, я получаю сообщение об ошибке от xindy:
ERROR: Syntax Error in (INDEXENTRY :TKEY (:|EMPTYSET@INDEXeNDCSNAME|) :LOCREF "{}{11}" :ATTR "pageglsnumberformat").
Вот мой код латекса:
\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage[xindy,toc,acronym]{glossaries}
% Define a new glossary type called notation
\newglossary[nlg]{notation}{not}{ntn}{Notation}
\makeglossaries
% Notation definitions
\newglossaryentry{not:emptyset}{type=notation,
name={$O$},
text={00},
description={The empty set},
sort={O}}
% Main glossary definitions
\newglossaryentry{gls:card}{name=cardinality,
description={The number of elements in the specified set}}
% Acronym definitions
\newacronym{nf}{NF}{new foundations}
\begin{document}
\title{Sample Document using the glossaries Package}
\author{Nicola Talbot}
\maketitle
\tableofcontents
\printglossaries
\chapter{Introduction}
$\gls{not:emptyset}$
\gls{gls:card}
\gls{nf}
\end{document}
Я погуглил, но ничего не нашел. Пожалуйста, кто-нибудь может мне помочь?
решение1
(Превращаю свой комментарий в ответ.)
При babel
использовании с french
настройкой двоеточие :
преобразуется в активный символ. Метки записей глоссария используются для формирования внутренних команд, которые хранят данные записи, поэтому они не могут содержать никаких активных символов. Удаление двоеточий или замена их неактивным символом устраняет проблему. Например, замена их точкой работает нормально:
\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage[french]{babel}
\usepackage[xindy,toc,acronym]{glossaries}
% Define a new glossary type called notation
\newglossary[nlg]{notation}{not}{ntn}{Notation}
\makeglossaries
% Notation definitions
\newglossaryentry{not.emptyset}{type=notation,
name={$O$},
text={00},
description={The empty set},
sort={O}}
% Main glossary definitions
\newglossaryentry{gls.card}{name=cardinality,
description={The number of elements in the specified set}}
% Acronym definitions
\newacronym{nf}{NF}{new foundations}
\begin{document}
\title{Sample Document using the glossaries Package}
\author{Nicola Talbot}
\maketitle
\tableofcontents
\printglossaries
\chapter{Introduction}
$\gls{not.emptyset}$
\gls{gls.card}
\gls{nf}
\end{document}