Untereinträge im Index mit Gedankenstrich Thema ist als GELÖST markiert

Erstellen von Index, Glossar, Symbolverzeichnis, einer Nomenklatur etc. mit MakeIndex oder Xindy


Gast

Untereinträge im Index mit Gedankenstrich

Beitrag von Gast »

Hallo,

mit makeindex habe ich ein Personenregister erstellt. Dabei gibt es zu einem Familiennamen mehrer Untereinträge. Und da möchte ich, dass vor jedem Untereintrag ein GEdankenstrich eingefügt wird. In den Anleitungen, die ich gefunden habe, steht dazu aber nichts.
Geht das? Kann mir jemand sagen, was ich dafür in die Stildatei schreiben muss?

Danke!

Viele Grüße
Christian

Benutzeravatar
Johannes_B
Moderator
Moderator
Beiträge: 5079
Registriert: Do 1. Nov 2012, 14:55
Kontaktdaten:

Beitrag von Johannes_B »

Kannst du uns dazu ein Minimalbeispiel erstellen?
TeXwelt - Fragen und Antworten Schaut vorbei und stellt Fragen.
LaTeX-Vorlagen?

Der Weg zum Ziel: Ruhe bewahren und durchatmen, Beiträge und unterstützende Links aufmerksam lesen, Lösungsansätze verstehen und ggf. nachfragen.

Gast

Beitrag von Gast »

Wenn ich dich richtig verstehe, suchst du etwas wie:
\renewcommand\subitem{\@idxitem --\enskip\ignorespaces}

Gast

Beitrag von Gast »

\renewcommand\subitem{\@idxitem --\enskip\ignorespaces}
Funktioniert leider nicht, liefert das \@idxitem im Text aus und entfernt die Zeilenumbrüche der Untereinträge.


Hier das Minimalbeispiel.
\documentclass[fontsize=12pt,paper=a4]{scrbook}

\usepackage{fontspec}
\usepackage{xltxtra}
\usepackage{polyglossia}
\setmainlanguage[babelshorthands=true]{german}

\usepackage{makeidx}
\makeindex
\usepackage[justific=raggedright, itemlayout=abshang, indentunit=1em, hangindent=1em, subindent=1em, subsubindent=1em]{idxlayout}


\begin{document}
Olivia Schulz\index{Schulz!Olivia}
Otto Schulz\index{Schulz!Otto}
Anna Meier\index{Meier!Anna}
Gustav Meier\index{Meier!Gustav}

\pagebreak
Olivia Schulz\index{Schulz!Olivia}
Anna Meier\index{Meier!Anna}
Otto Schulz\index{Schulz!Otto}
\pagebreak
Olivia Schulz\index{Schulz!Olivia}
Anna Meier\index{Meier!Anna}
Otto Schulz\index{Schulz!Otto}

\renewcommand{\indexname}{Personenregister}
\printindex
\end{document}
[/code]

Besserwisser

Beitrag von Besserwisser »

Bei Verwendung von idxlayout muss man entweder das bisher verwendete Layout entsprechend umdefinieren oder ein neues hinzufügen und verwenden:
\documentclass[fontsize=12pt,paper=a4]{scrbook}

\usepackage{fontspec}
\usepackage{xltxtra}
\usepackage{polyglossia}
\setmainlanguage[babelshorthands=true]{german}

\usepackage{makeidx}
\makeindex
\makeatletter
\newcommand\ila@it@abshanghyphen{%
  \ila@it@abshang% layout hang verwenden, aber
  \renewcommand{\subitem}{\@idxitem\hspace*{\ila@subindent}-\enskip}% \subitem ändern
  % Hier ggf. auch noch \subitem ändern.
}
\makeatother
\usepackage[justific=raggedright, itemlayout=abshanghyphen, indentunit=1em, hangindent=1em, subindent=1em, subsubindent=1em]{idxlayout}

\begin{document}
Olivia Schulz\index{Schulz!Olivia}
Otto Schulz\index{Schulz!Otto}
Anna Meier\index{Meier!Anna}
Gustav Meier\index{Meier!Gustav}

\newpage% Bitte nicht mit \pagebreak verwechseln!
Olivia Schulz\index{Schulz!Olivia}
Anna Meier\index{Meier!Anna}
Otto Schulz\index{Schulz!Otto}
\newpage% Bitte nicht mit \pagebreak verwechseln!
Olivia Schulz\index{Schulz!Olivia}
Anna Meier\index{Meier!Anna}
Otto Schulz\index{Schulz!Otto}

\renewcommand{\indexname}{Personenregister}
\printindex
\end{document}

Gast

Funktioniert wunderbar

Beitrag von Gast »

Vielen Dank, so funktioniert es.

Antworten