Seite 1 von 1

Untereinträge im Index mit Gedankenstrich

Verfasst: Mo 21. Mär 2016, 12:35
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

Verfasst: Sa 26. Mär 2016, 12:10
von Johannes_B
Kannst du uns dazu ein Minimalbeispiel erstellen?

Verfasst: Sa 26. Mär 2016, 13:08
von Gast
Wenn ich dich richtig verstehe, suchst du etwas wie:
\renewcommand\subitem{\@idxitem --\enskip\ignorespaces}

Verfasst: Mo 25. Apr 2016, 19:03
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]

Verfasst: Mo 25. Apr 2016, 21:26
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}

Funktioniert wunderbar

Verfasst: Mo 30. Mai 2016, 20:03
von Gast
Vielen Dank, so funktioniert es.