Formatierung Autorenregister und Stichwortverzeichnis

Antwort erstellen


Diese Frage dient dazu, das automatisierte Versenden von Formularen durch Spam-Bots zu verhindern.
Smilies
:D :) :( :o :shock: :? 8) :lol: :-x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen:

BBCode ist eingeschaltet
[img] ist eingeschaltet
[flash] ist ausgeschaltet
[url] ist eingeschaltet
Smilies sind eingeschaltet

Die letzten Beiträge des Themas

Ich habe die Datenschutzerklärung gelesen und bin damit einverstanden.

   

Wenn du eine Datei oder mehrere Dateien anhängen möchtest, gib die Details unten ein.

Ansicht erweitern Die letzten Beiträge des Themas: Formatierung Autorenregister und Stichwortverzeichnis

von julesneu » Di 8. Okt 2013, 11:26

Vielen Dank,

durch probieren, Verweisen zu den Anleitungen und auch einige hilfreichen Foreneinträgen, die ich zuvor nicht finden konnte, habe ich es jetzt geschafft.

Zur Loesung fuer alle interessierten nicht-Auskenner:

1. Inhalt der mystyle.ist erstellen:
quote '+'
delim_0 " "
delim_1 " "
Im Hauptverzeichnis speichern.

2. In der Präambel folgende Ergaenzung
\makeatletter
\renewcommand*\subitem{\@idxitem --,\addspace}
\renewcommand*{\@idxitem}{\par\hangindent 5mm}
\makeatother
Hier also die Verfeinerung, dass Untereintraege (\subitem) nicht eingerückt werden, aber einen Geviertstrich und ein Komma mit Leerzeichen erhalten. Sieht besser aus. Die Seitenzahlen der Registereinträge werden allerdings in beiden Varianten in der zweiten Zeile 5mm eigerückt.

Einruecken um 5mm ohne Geviertstrich und Komma waere dann
\makeatletter
\renewcommand*\subitem{\@idxitem \hspace*{5mm}}
\renewcommand*{\@idxitem}{\par\hangindent 5mm}
\makeatother
3. Erster Durchlauf, über Oberfläche oder aber (wegen 4.) im Ordner der Hauptdatei Shift+rechte Maustaste, 'Eingabeaufforderung hier oeffenen' und 'pdflatex myfile.tex' eingeben.

4. Wieder in der Eingabeaufforderung folgende Befehlszeile engeben, um den Index mit dem Namen myindex.idx erstellen bzw. sortieren zu lassen
makeindex -g -s mystyle.ist myindex.idx
5. Erneute Compilierung und fertig.

ABER

Obwohl ich kontrolliert habe, dass meine Indexeintraege mit Umlauten in der traditionellen Schreibweise \"o für ö und \"u für ü usw. geschrieben sind, funktioniert die Sortierung im Index selbst immer noch nicht fehlerfrei. Bspw. habe ich einen Registereintrag mit ö, der am Anfang des Index steht, was offensichtlich falsch ist.

In den verschiedenen Foren wird immer von notwendigen Paket makeidx gesprochen, welches ich ja nicht einbinden muss, da ich ja auf splitidx zurueckgreife. Liegt es moeglicherweise daran, dass ich statt mit german auf ngerman arbeite? Schließlich müsste doch mit der obigen Option -g i.V.m. der Angabe quote '+' im stylefile die Sortierung klappen.

Klappt aber nicht?

Vielen Dank an alle Helfenden.

von Noch so einer » Mo 7. Okt 2013, 17:44

julesneu hat geschrieben:Vorgabe war wie gesagt 5mm
Und warum nimmst Du dann nicht 5mm statt 5\p@, was übrigens mit 5pt gleich zu setzen ist?
julesneu hat geschrieben:Das Komma bekomme ich uebrigens auch noch nicht weg.
makeindex.man1.pdf hat geschrieben:delim_0 <string>
", "
Delimiter to be inserted between a level 0 key and its first page
number (default: comma followed by a blank).
Wenn Du das Komma nicht haben willst, dann musst Du also delim_0 im Stil ändern. Es gibt auch entsprechende weitere delim_1 und delim_2 für die beiden möglichen Unterebenen.

Für die Unterebenen findest Du in demselben MakeIndex-Manual übrigens auch, dass \subitem und \subsubitem in der Voreinstellung verwendet werden. Du musst also entweder \subitem und \subsubitem umdefinieren oder auch hier zusätzliche Befehle einfügen, wenn Du das generelle Aussehen dieser verändern willst.

Darüber hinaus sei auch noch auf das Paket idxlayout hingewiesen.

von Sepp99 » Mo 7. Okt 2013, 17:28

Bei der Erzeugung einer Index-Stildatei hilft dir vielleicht auch [3], S. 20f. mit weiteren links weiter.

Gruß, Sepp

von julesneu » Mo 7. Okt 2013, 16:56

@all

Erste Versuche mit Stylefile scheitern immer noch.
Aber:

zumindest mit dem folgenden Eintrag laesst sich in der Präambel der Einzug der Seitenzahlen verandern.
\makeatletter% --> De-TeX-FAQ
\renewcommand*{\@idxitem}{\par\hangindent 5\p@}
\makeatother% --> De-TeX-FAQ
 des Dokumentes 
Allerdings habe ich mit der Größeneinheit so meine Probleme, Vorgabe war wie gesagt 5mm Einzug. 5\p@ das ja nicht, die Angabe ist mir zumidnest nicht gelaeufig.

Ein weiteres unschoenes Ergebnis ist, dass die subitems nicht eingerueckt werden und das Gesamtergebnis nicht berauschend ist.

Das Komma bekomme ich uebrigens auch noch nicht weg.

von julesneu » Mi 2. Okt 2013, 12:15

@Besserwisser

Diese Option bei \makeindex hatte mich eben auch verwundert, sie war eben in dem Beispiel hinter dem link so dargestellt.

Deine anderen Beschreibungen leuchten mir alle ein, nur richten sich User (ich zumindest) gerade in den Faellen an Foren wie dieses hier, wenn die konkrete Umsetzung nicht gelingt. Gerade deshalb gibt es ja auch das MWE, welches immer so vehement gefordert wird.

In diesem Fall danke ich für die passende Beschreibung, aber ich waere gar nicht so unbedingt an einer schnellen Lösung interessiert, sondern an einer, die ich als Laie verstehen und umsetzen kann.

von Besserwisser » Mi 2. Okt 2013, 11:31

Pakete schreibt man im Gegensatz zu (beispielsweise) Befehlen nicht mit \ am Anfang.

\makeindex hat kein optionales Argument und wird bei Verwendung von Option makeindex für splitidx nicht benötigt.

Wenn Du den Index bereits von splitdx per Option split auf mehrere Dateien verteilen lässt, dann musst Du auch dafür sorgen, dass makeindex für all diese Dateien aufgerufen wird. Dabei gibt Du dann hinter Option -s den Namen der jeweils passenden Indexstildatei an. Am besten gibt Du per Option -t auch unterschiedliche Log-Dateien an, damit Du anschließend in diesen kontrollieren kannst, ob alles funktioniert hat.

Natürlich findest Du in der MakeIndex-Anleitung nicht eben viel über den Einzug im Falle eines Umbruchs. MakeIndex bricht den Eintrag ja nicht um, das macht LaTeX. Du findest aber in der MakeIndex-Anleitung, wie die Einträge erzeugt werden. Dabei musst Du dann eben passende LaTeX-Befehle mit schreiben lassen, damit der Einzug so ist, wie Du das haben willst.

Für mehr habe ich im Augenblick leider keine Zeit.

von julesneu » Mi 2. Okt 2013, 11:16

Vielen Dank,

mit \balance hat es sehr einfach geklappt, \multicol veraenderte eine Menge von Formatierungen bzw. das Seitenlayout, was unschoen war. Ersteres kann also zumindest fuer die Balancierung von Personenregistern und Stichwortverzeichnissen empfohlen werden (habe unten die sehr einfache Befehlsfolge aufgenommen).

Die beiden anderen Formatierungen gelingen mir offen gesagt nicht. Die Anpassungen der Kommandozeile mit eigenen stylefile wie hier vorgeschlagen (http://tex.stackexchange.com/questions/ ... 2150#52150) gelingt mir überhaupt nicht.

Ich erhalte Fehlermeldungen (s.u.), außerdem ergibt sich zumindest fuer die Loeschung des Kommas offensichtlich keine Veraenderung.
Infos zur Einzugtiefe finde ich auch nicht in der makeindex Dokumentation
\documentclass[a4paper,
12pt,
twoside,
]{scrbook}
\usepackage[T1]{fontenc} 
\usepackage[ansinew]{inputenc}
\usepackage[ngerman]{babel}
\usepackage{balance}
\usepackage[split, makeindex]{splitidx}
\makeindex[program=makeindex,options=-s mystyle.ist]
\usepackage{filecontents}
\newindex[Autorenregister]{autor}
\newindex[Sachregister]{sache}
%\makeindex mweregister-autor.idx
%\makeindex mweregister-sache.idx Führe ich über die Eingabeauffoerderung aus, anders funktioniert es bei mir nicht.

\begin{filecontents*}{mystyle.ist}
quote '+'
delim_0 " "
delim_1 " "
delim_2 " "
delim_n " "
\end{filecontents*}

\begin{document}
%
Der Index wird in der Regel in zwei Spalten dargestellt. Sowohl bei meinem Autorenindex als auch beim Stichwortverzeichnis enden die beiden Verzeichnisse aber auf der letzten Seite mit lediglich einer linken Spalte\sindex[sache]{Spalte}, die bis zum unteren Rand läuft. Die rechte Index-Spalte bleibt leer. Drei Anforderungen durch den Verlag werden nun gestellt, bei denen mir die Umsetzung nicht gelingt:


\begin{enumerate}
	\item Der Verlag\sindex[sache]{Verlag} bittet mich nun darum, die beiden letzten Seiten der Indizes so zu gestalten, dass beide Spalten je bis zur Hälfte der Seite laufen. im hier dargestellten Sachindex waere es also so, dass in etwa nach dem Eintrag \textit{Möglichkeit} ein Wechsel in die Rechte Spalte erfolgen sollte., um in etwas zwei gleich lange Spalten zu generieren.
	\item Darüber hinaus fordert der Verlag nur für das Autorenverzeichnis, dass die Einzugstiefe bei zwei oder dreizeiligen Indexeinträgen (bspw. wenn mehrere Seitenangaben einen Umbruch\sindex[sache]{Umbruch} erzwingen) nur 5mm betragen soll. Dies betrifft vor allem für die Seitenzahlen gelten.
	\item Zuletzt soll das Komma, das hinter jedem Sach- und Autorenregistereintrag gesetzt wird, verschwinden.
\end{enumerate}

Für die beiden ersten Probleme\sindex[sache]{Problem} ist das MWE wohl zu kurz oder gar ungeeignet (da es ja kein Autorenverzeichnis ist). Um den Fall tatsaechlich zu simulieren, muesste ich ziemlich viele Seiten einfuegen -- ich hoffe, es ist dennoch verstaendlich. Das Komma ist im MWE zu sehen. Hier nun noch bisschen Text, um das Beispiel auch abzuschließen. Ein echtes Autorenverzeichnis\sindex[sache]{Autorenverzeichnis} habe ich jetzt nicht parat
\newpage

Der Begriff Behavioral Economics ist der englische Begriff des Wortes Verhaltensökonomie\sindex[sache]{Verhaltensökonomie}. Im Register sollte aber auch der Begriff Behavioral Economics aufgelistet sein. Es soll aber auf den Begriff Verhaltensökonomie verwiesen werden. Eine Möglichkeit\sindex[sache]{Möglichkeit} ist wohl, folgende Idee\sindex[sache]{Idee} umzusetzen: Einen Indexeintrag\sindex[sache]{Indexeintrag} mit Unterbegriff definieren, was bei Behavioral Economics\sindex[sache]{Behavioral Economics!-siehe Verhaltensökonomie} einen Untereintrag generieren wuerde, anschließend muesste man dann wohl die Seitenzahl unterdruecken oder per Hand aus der Index-Datei löschen. Ich vermute aber, dass das auch eleganter geht.

Altes Problem, wurde schon gelöst.

Für das andere Problem\sindex[sache]{Problem|(} mit dem fortfolgend (ff.) habe ich keine Idee, schließlich ist es verwandt mit dem Befehl des "`von bis Sortierens"'. 
\newpage
Mit diesem Befehl get das ja unproblematisch \sindex[sache]{Problem|)}, aber wie ff. eingefügt werden kann oder ob es automatisch passiert, falls sindex Befehle auf zwei oder drei aufeinanderfolgenden Seiten erfolgen oder eine Mindestanzahl von Einträgen erreicht sein muss. Ob man es tun sollte oder nicht ist dem Autor ueberlassen. 

Auch geloest.
\balance
\printindex[sache]
\end{document}

Meine Kommandozeile für Befehle, die an Makeindex uebergeben werden, sieht uebrigens derzeit so aus:

"%tm.idx" -t "%tm.ilg" -o -g -s "%tm.ind"

von Besserwisser » Mi 2. Okt 2013, 08:48

sudo hat geschrieben:Ich glaube du meinst das Paket multicol.
Das kommt davon, wenn man einmal nicht alle Links kontrolliert. Stimmt natürlich. Danke. Die zugehörige Umgebung heißt dann multicols.

Danke auch für die Blumen. Allerdings werde ich mich wohl zukünftig eher wieder auf kurze Anmerkungen konzentrieren. Aber das ist ein anderes Thema …

von sudo » Mi 2. Okt 2013, 07:46

Jetzt hab ich tatsächlich einmal gelegenheit den Besserwisser zu korrigieren: Ich glaube du meinst das Paket multicol.
PS: Du machst hier einen echt tollen Job -- Äh Freizeit!

von Besserwisser » Di 1. Okt 2013, 18:24

Um die Formatierung eines Index zu ändern, muss man einen angepassten Index-Stil (meist mit der Endung .ist zu finden) anlegen. Näheres dazu ist in der MakeIndex-Anleitung zu finden.

Balancierte Spalten im zweispaltigen Satz gibt es wahlweise mit multicols (siehe splitindex-Anleitung, um zu erfahren, wie man dieses für einen Index verwenden kann) oder balance oder flushend. Die letzten beiden habe ich allerdings selbst noch nicht verwendet.

Nach oben