глоссарии на французском языке

глоссарии на французском языке

Я пытаюсь получить глоссарий на французском языке. Поэтому я начал с образца (на английском) из 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}

Связанный контент