Seite 1 von 2

Index formatieren

Verfasst: Mo 1. Dez 2014, 10:54
von HM
Hallo,

beim Index formatieren verzweifle ich gerade:

- Wie werden Umlaute normal eingeordnet (Ökologie, wird komischerweise bei der Hauptdatei angezeigt (im Minimalbeispiel nicht), jedoch eingeordnet bei Symbole)?
- Wie wird das Leerzeichen unterdrückt - z.B. das "Der Zucker" nach "Diener" steht?
- Wie kann man den Einzug verändern bzw. ausschalten?

Das mit "\makeindex –l –p odd "dateiname".idx" verstehe ich irgendwie nicht - idealerweise drücke ich F6 (kompilieren) und dann F12 (Index) und dann wieder F6 oder F1 - geht das irgendwie?
\documentclass[a4paper,12pt,bibtotoc,idxtotoc,liststotoc,numbers=noenddot]{scrbook} % A4, Schriftgröße, Literaturverzeichnis, Index, Inhaltsverzeichnis, kein Punkt hinter Nummern 

\usepackage[ngerman]{babel}
\usepackage[T1]{fontenc}
\usepackage[latin1]{inputenc}
\usepackage{lmodern}

\usepackage{blindtext} % Bindtext, dass Dokument nicht so leer ausschaut

\usepackage{makeidx} % Indexerstellung
\makeindex

\usepackage{filecontents}
\begin{filecontents}{\jobname.mst}
	headings_flag 1 % Buchstabengruppe als Überschrift ein
	heading_prefix "\\textbf{\\textsf{"heading_suffix "}}\\nopagebreak\n" % Formatierung der Buchstaben
	delim_0 " \\dotfill " % Punkte zwischen den Einträgen
	delim_1 " \\dotfill " % Punkte zwischen den Untereinträgen
	symhead_positive "Symbole" % Überschrift für Symbole
	numhead_positive "Ziffern" % Überschrift für Zahlen
\end{filecontents}

\begin{document}
		\blindtext
	\index{Ökologie}
	\index{Anwendungsgebiet der Verarbeitung vom Index}
	\index{Diener}
	\index{Der Zucker}
	\index{123}
	\index{\alpha}
	
	\printindex
\end{document}

Verfasst: Mo 1. Dez 2014, 17:55
von Johannes_B
Vielleicht ist der verlinkte Inhalt für dich interessant: Differences between xindy and makeindex

Verfasst: Di 2. Dez 2014, 10:23
von HM
Danke für den Tip, jedoch bin ich noch nicht auf die Lösung gekommen.

Xindy möchte ich nicht verwenden, da "mein" LaTeX-Buch schreibt, dass man sehr fit unter Windows und LaTeX sein muss ... was ich aber nicht bin.

Irgendwie muss man
\makeindex -l -g NAME.idx %Indexerstellung -l = Letter ordering, -g =German
einbinden (laut www.), aber ich habe keine Ahnung wie?!

Verfasst: Do 4. Dez 2014, 13:21
von HM
Gibt es eine Möglichkeit mit "Makeindex" folgende Probleme zu lösen (Minimalbsp. siehe oben)

- Wie werden Umlaute normal eingeordnet (Ökologie, wird komischerweise bei meiner Hauptdatei angezeigt (im Minimalbeispiel nicht), jedoch eingeordnet bei Symbole)?
- Wie wird das Leerzeichen unterdrückt - z.B. das "Der Zucker" nach "Diener" steht?
- Wie kann man den Einzug verändern bzw. ausschalten?

Danke für Tipps vorab!

Verfasst: Do 4. Dez 2014, 14:45
von u_fischer
Wie wird das Leerzeichen unterdrückt - z.B. das "Der Zucker" nach "Diener" steht?
Das kann nie passieren, weil "der" immer vor "die" kommt.

Was die Symbole angeht: Du kannst Ausdruck + Sortierung trennen:
 \index{Oekologie@Ökologie}
    \index{Anwendungsgebiet der Verarbeitung vom Index}
    \index{Diener}
    \index{Der Zucker}
    \index{123}
    \index{alpha@$\alpha$}
Schalter wie -l musst du in der Konfiguration deines Editors hinzufügen.

Verfasst: Do 4. Dez 2014, 15:00
von Besserwisser
Und wenn es um die Formatierung des Index geht, sei darauf hingewiesen, dass man diese i. d. R. über makeindex-Stile anpassen kann. In deinem Beispiel ist das die Datei, die du per filecontents-Umgebung erzeugst. Näheres dazu ist der Anleitung zum Programm makeindex zu entnehmen.

Verfasst: Do 4. Dez 2014, 15:52
von HM
Danke für die Tipps:

Frage 1 (Geklärt: Umlaute einfach mit @ "übergehen" bzw. "umgehen")

Frage 2 (Halb geklärt bzw. für MICH geklärt: Unklar aufgrund meines schlechten Beispiels, aber einfach keine Leerzeichen verwenden, dann hat man das Problem nicht!)
Aber wie ist es mit
   \index{Diener}
   \index{Die Zuckerfee}
   \index{DieZuckerfee}
... da müsste eigentlich Diener über Die Zuckerfee stehen, da hier das Leerzeichen unterdrückt wird

Frage 3 (Nicht geklärt: Einzug)
In der Anleitung (->CTAN und makeindex) steht hierzu nichts ... es gibt aber bestimmt einen \renewcommand-Befehl oder so?!

Verfasst: Do 4. Dez 2014, 16:02
von Besserwisser
Wenn du wirklich "Die Zuckerfee" in den Index eintragen willst, solltest du das trotzdem als "Zuckerfee" einsortieren lassen. Das geht genau wie von Ulrike für das Umlautproblem gezeigt. Ich würde aber ohnehin eher \index{Zuckerfee, die} verwenden. Ansonsten ist "Die Zuckerfee" vor "Diener" durchaus korrekt.

Welchen Einzug meinst du denn genau?

Verfasst: Do 4. Dez 2014, 16:32
von u_fischer
Wie Leerzeichen behandelt werden, hängt von der -l Option beim Aufruf ab. Jenachdem ob du sie benutzt oder nicht, ist Die Zuckerfee vor oder nach Diener.

Den Einzug kannst du durch Umdefinition von \@idxitem ändern. z.B.. Die Originaldefinitionen stehen in der Klasse, bei dir scrbook.cls
\makeatletter
\renewcommand*\@idxitem{\par}
\makeatother

Verfasst: Do 4. Dez 2014, 18:37
von HM
Danke für die Hinweise, allerdings weiß ich nicht wie ich makeindex -l einbinde bzw. in der Konfiguration einfüge.
Könnt ihr mir hier helfen? Danke!