
Das Standardpaket makeidx
schreibt ind
/ idx
in die interne Darstellungsdatei von LaTeX. Das index
Paket schreibt in UTF-8 und funktioniert gut mit den Standardklassen book
, article
, . Aber wenn man versucht, das Paket mit zu verwenden , ist die Ausgabe immer noch wie bei dem Paket. Kann die Emulation bei dem Paket mit ausgeschaltet oder überschrieben werden ?report
index
memoir
makeidx
makeidx
index
memoir
Hier ist ein Minimalbeispiel:
\documentclass[a4paper,9pt]{memoir}
\usepackage[T1,T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}
\usepackage{index}
\makeindex
\begin{document}
\section{Indexing something}
\index{здравствуйте}здравствуйте
\printindex
\end{document}
Der idx
Dateiinhalt ist
\indexentry{\IeC {\cyrz }\IeC {\cyrd }\IeC {\cyrr }\IeC {\cyra }\IeC {\cyrv }\IeC {\cyrs }
\IeC {\cyrt }\IeC {\cyrv }\IeC {\cyru }\IeC {\cyrishrt }\IeC {\cyrt }\IeC {\cyre }}{1}
Wechseln Sie nun memoir
zu book
und bauen Sie Index und Dokument erneut auf. Jetzt idx
ist der Dateiinhalt
\indexentry {здравствуйте}{1}
wie erwartet.
Antwort1
Standardmäßig memoir
verhindert , index
dass Pakete (einschließlich ) geladen werden, deren Funktionalität von der Klasse emuliert wird. Um dies zu überschreiben, muss \DisemulatePackage{index}
vor hinzugefügt werden \usepackage{index}
. Das folgende MWE erzeugt den „erwarteten“ .idx
Dateiinhalt. ( \renewindex
wird verwendet, um den Indexnamen zu korrigieren.)
\documentclass[a4paper,9pt]{memoir}
\usepackage[T1,T2A]{fontenc}
\usepackage[utf8]{inputenc}
\usepackage[english,russian]{babel}
\DisemulatePackage{index}
\usepackage{index}
\makeindex
\renewindex{default}{idx}{ind}{Предметный указатель}
\begin{document}
\section{Indexing something}
\index{здравствуйте}здравствуйте
\printindex
\end{document}