Ich erstelle ein Personenregister mit makeindex und gestalte es mit imakeidx. Nun gibt es ein Lemma, in dem die letzte Seitenangabe in die nächste Zeile geschoben wird, obwohl in der gleichen Zeile Platz für alle Zahlen wäre. Es handelt sich um einen Registereintrag, der selbst recht lang ist und per automatischem Umbruch in der nächsten Zeile fortgesetzt wird. Der Abstand zwischen Wort und Seitenzahl ist mit dotfill gefüllt (mit Mindestlänge für dotfill, damit die Seitenzahlen an anderer Stelle nicht direkt am Lemma kleben). Ohne Berücksichtigung der Einzüge sieht es derzeit etwa so aus:

Albert von Wagenfurt (Albertus von Wagen-

furt) ........................................... 1, 124, 256,

389

Ich hätte gern, dass alle Zahlen in einer Zeile stehen, nämlich so:

Albert von Wagenfurt (Albertus von Wagen-

furt) ................................... 1, 124, 256, 389

Kann mir jemand helfen, diesen Zeilenumbruch zu verhindern? Danke!

Öffne in Overleaf
\begin{filecontents*}{testlayout.ist}
delim_0 "{\\def\\hfill{\\hskip 10pt plus 1fill}\\dotfill} " 
\end{filecontents*}

\documentclass[ngerman]{scrbook}
\usepackage{imakeidx}
\makeindex[options={-s testlayout.ist},name=person,title=Personenregister,columns=2]    
\usepackage[font=footnotesize, itemlayout=relhang, indentunit=1mm, hangindent=6mm]{idxlayout}

\begin{document}
  Albert von Wagenfurt\index[person]{Albert von Wagenfurt (Albertus von Wagenfurt)}
  Galileo Galilei\index[person]{Galileo Galilei}
  Euklid\index[person]{Euklid}
  \clearpage
  \setcounter{page}{124}
  Albert von Wagenfurt\index[person]{Albert von Wagenfurt (Albertus von Wagenfurt)}
  Galileo Galilei\index[person]{Galileo Galilei}
  Euklid\index[person]{Euklid}
  \clearpage
  \setcounter{page}{256}
  Albert von Wagenfurt\index[person]{Albert von Wagenfurt (Albertus von Wagenfurt)}
  Galileo Galilei\index[person]{Galileo Galilei}
  Euklid\index[person]{Euklid}
  \clearpage
  \setcounter{page}{389}
  Albert von Wagenfurt\index[person]{Albert von Wagenfurt (Albertus von Wagenfurt)}
  Galileo Galilei\index[person]{Galileo Galilei}
  Euklid\index[person]{Euklid}
  \clearpage
  \printindex[person]
\end{document}

Heading

gefragt 07 Apr, 16:14

gepe9's gravatar image

gepe9
313
Akzeptiert: 0%

Zu dieser Frage existiert noch eine Folgefrage unter Index: Zeilenumbruch für Seitenzahl verhindern II, in der es um Einträge mit deutlich mehr Seitenzahlen geht.

(08 Apr, 15:35) esdd

Das Problem ist die Silbentrennung im Namen: LaTeX bestraft Silbentrennungen in der vorletzten Zeile und das führt hier dazu, dass eine dritte Zeile erzeugt wird. Benutze \finalhyphendemerits=0 vor dem printindex.

Permanenter link

beantwortet 09 Apr, 11:10

Ulrike%20Fischer's gravatar image

Ulrike Fischer
2.6k13

Sehr gut, klappt und liefert schöne Ergebnisse.

(09 Apr, 15:49) gepe9

Eine wenig elegante Lösung wäre es, die Seitenzahlen einfach in eine nicht-umbrechbare Box zu packen. Dies funktioniert leider nur dann, wenn alle Seitenzahlen in eine Zeile passen, was bei sehr vielen Seitenzahlen natürlich nicht funktioniert.

Öffne in Overleaf
\begin{filecontents*}{testlayout.ist}
  delim_0 "\\dotfill\\mbox{"
  delim_t "}"
\end{filecontents*}

\documentclass[ngerman]{scrbook}
\usepackage{imakeidx}
\makeindex[options={-s testlayout.ist},name=person,title=Personenregister,columns=2]    
\usepackage[font=footnotesize, itemlayout=relhang, indentunit=1mm, hangindent=6mm]{idxlayout}

\begin{document}
  Albert von Wagenfurt\index[person]{Albert von Wagenfurt (Albertus von Wagenfurt)}
  Galileo Galilei\index[person]{Galileo Galilei}
  Euklid\index[person]{Euklid}
  \clearpage
  \setcounter{page}{124}
  Albert von Wagenfurt\index[person]{Albert von Wagenfurt (Albertus von Wagenfurt)}
  Galileo Galilei\index[person]{Galileo Galilei}
  Euklid\index[person]{Euklid}
  \clearpage
  \setcounter{page}{256}
  Albert von Wagenfurt\index[person]{Albert von Wagenfurt (Albertus von Wagenfurt)}
  Galileo Galilei\index[person]{Galileo Galilei}
  Euklid\index[person]{Euklid}
  \clearpage
  \setcounter{page}{389}
  Albert von Wagenfurt\index[person]{Albert von Wagenfurt (Albertus von Wagenfurt)}
  Galileo Galilei\index[person]{Galileo Galilei}
  Euklid\index[person]{Euklid}
  \clearpage
  \printindex[person]
\end{document}

alt text

Permanenter link

beantwortet 07 Apr, 22:08

Henri's gravatar image

Henri
12.9k42536

bearbeitet 08 Apr, 17:51

Deine Antwort auf die Frage (nicht auf andere Antworten)
Knebel-Vorschau

Folge dieser Frage

Per E-Mail:

Wenn Du Dich anmeldest, kannst Du Updates hier abonnieren

Per RSS:

Antworten

Antworten und Kommentare

Markdown-Grundlagen

  • *kursiv* oder _kursiv_
  • **Fett** oder __Fett__
  • Link:[Text](http://url.com/ "Titel")
  • Bild?![alt Text](/path/img.jpg "Titel")
  • nummerierte Liste: 1. Foo 2. Bar
  • zum Hinzufügen ein Zeilenumbruchs füge einfach zwei Leerzeichen an die Stelle ein, an der die neue Zeile sein soll.
  • grundlegende HTML-Tags werden ebenfalls unterstützt

Zugeordnete Themen:

×34
×16
×11
×5

Frage gestellt: 07 Apr, 16:14

Frage wurde angeschaut: 300 Mal

Zuletzt aktualisiert: 09 Apr, 15:49