Makeidx

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


JensH
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Di 22. Jun 2021, 10:00

Makeidx

Beitrag von JensH »

Guten Morgen,

ich habe folgendes Problem mit meinem Sachbuchindex: Ich habe mit dem Befehl makeidx und /index{} erfolgreich ein wunderschönes und umfangreiches Stichwortverzeichnis erstellt, das ich an das Buch angehängt habe. Als Ausgabeformat möchte ich eine PDF Datei im Format DInA5 erzeugen, die man bequem auf einem EBookReader seiner Wahl lesen kann. Ich habe mir nun vorgestellt, dass man aus dem Stichwortverzeichnis auf die entsprechende Seite im Buch "springen" kann. Ich benutze einen Mac mit High Sierra und das Programm TexShop und in der Vorschau dieses Programmes funktioniert alles Bestens. Wenn ich nun aber aus TexShop ein PDF erstelle und es in der "Vorschau" oder mit dem Adobe Reader öffne, funktionieren die Links aus dem Stichwortverzeichnis heraus nicht. Hatte schon einmal jemand ein ähnliches Problem ? ... und wie wäre es zu lösen? Danke in die Runde und schöne Grüße!


Grummelgast

Re: Makeidx

Beitrag von Grummelgast »

Minimalbeispiel (Link unbedingt beachten)? Bei mir funktionieren die Links:

\documentclass{article}

\usepackage{blindtext}
\usepackage{imakeidx}
\makeindex

\usepackage{hyperref}

\begin{document}
\section{Test}
Test\index{test}

\Blindtext[3]Test\index{test}

\Blindtext[3]Test\index{test}

\Blindtext[5]
\printindex
\end{document}

JensH
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Di 22. Jun 2021, 10:00

Minimalbeispiel

Beitrag von JensH »

Vielen Dank, hier das Minimalbeispiel, tut mir leid, hätte ich eher dran denken können.



\documentclass[paper=a5, DIV=12, fontsize=10pt, final, BCOR=0mm, chapterprefix=no, headinclude=no, footinclude=no, oneside, openany, parskip, final, pagesize=pdftex]{scrbook}

\usepackage[applemac]{inputenc}
\usepackage [english, german]{babel}
\usepackage[T1]{fontenc} 


\usepackage[kerning=alltext, tracking=true, babel, letterspace=90]{microtype}

\renewcommand{\familydefault}{\sfdefault}
\usepackage{sourcesanspro}

\RequirePackage[german=german-x-latest]{hyphsubst}

\hyphenation{einen}
\hyphenation{eines}
\hyphenation{einem}
\hyphenation{sondern}
\hyphenation{wieder}

\usepackage {scrlayer-scrpage}
%\usepackage {scrhack}
\pagestyle {scrheadings}
\usepackage{makeidx}
\usepackage{underscore}
\usepackage{graphicx}
\usepackage {booktabs}
\usepackage {titlepage} 
\usepackage {titletoc}
\usepackage{tcolorbox}
\usepackage{wasysym}

\usepackage {tabularx}
\usepackage [labelfont={sf}, font={scriptsize},%
  labelsep=quad, skip=20pt]{caption}[2008/08/24]
  
\renewcommand{\indexname}{Stichwortverzeichnis} \usepackage[columns=2,% Anzahl der Spalten columnsep=20pt,% Abstand der Spalten rule=0.75pt,% Für eine Trennlinien einen Wert > 0 angeben itemlayout= relhang, indentunit=15pt,% Einrückmaß font=footnotesize,% Schriftgröße totoc=true,% Ja, der Index soll in's Inhaltsverzeichnis ] {idxlayout} \makeindex \usepackage {xcolor} \definecolor{orange}{cmyk}{.0, .52, .99,.07}%orange Schrift \definecolor{blau}{cmyk}{1, .1, .0,.29}%hellblau Fläche \addtokomafont{chapter}{\sffamily\scshape\Large\color{blau}} \addtokomafont{section}{\sffamily\scshape\large\color{orange}} \addtokomafont{subsection}{\sffamily\scshape\normalsize\color{blau}} \addtokomafont{subsubsection}{\small\color{orange}} \addtokomafont{paragraph}{\normalsize\color{blau}} \addtokomafont{subparagraph}{\small\color{orange}} \setkomafont{dictumauthor}{\scriptsize\normalfont} \setkomafont{dictum}{\scriptsize\normalfont} \setkomafont{pagehead}{\scriptsize\sffamily} \newcommand{\fu}{ \frqq} % su - Leerzeichen vor französischem Anführungsstrich
\newcommand{\fo}{\flqq\ } %hier ist nun das Leerzeichen \renewcommand*{\pnumfont}{% \footnotesize} \setcounter{secnumdepth}{2} % \subsection{ ohne Nummerierung \renewcommand{\labelitemi}{$\circ$} \renewcommand{\labelitemii}{$\circ$} \renewcommand{\labelitemiii}{$\circ$} \renewcommand{\labelitemiv}{$\circ$} \setcounter{tocdepth}{1} \RedeclareSectionCommand[ beforeskip=.1\baselineskip, afterskip=.05\baselineskip]{section} \RedeclareSectionCommand[ beforeskip=.1\baselineskip, afterskip=.05\baselineskip]{subsection} \RedeclareSectionCommand[ beforeskip=.1\baselineskip, afterskip=.1\baselineskip]{subsubsection} \RedeclareSectionCommand[ beforeskip=.1\baselineskip, afterskip=.1em]{paragraph} %\RedeclareSectionCommand[ % beforeskip=-.1\baselineskip, % afterskip=-1em]{subparagraph}
\usepackage{enumitem} \setitemize{itemsep=-11pt} \TitlePageStyle[pagenumber=1]{KOMAScript} \makeatletter \renewcommand*{\makepretitleback}{% \ifx\@extratitle\@empty\else\begin{titlepage}\@fontispiz\end{titlepage}\fi } \newcommand{\fontispiz}[2]{\renewcommand{\@fontispiz}{#1}} \newcommand{\@fontispiz}{} \makeatother \usepackage[ bookmarksopen=true, pdfauthor={Becky Backenzahn}, pdftitle={Eichhörnchentraining}, colorlinks=true, linkcolor=blau, citecolor=orange, urlcolor=orange, hyperindex=true, backref=true, hyperfootnotes=false, final ]{hyperref} \clubpenalty=1000 \widowpenalty=1000 \raggedbottom %\recalctypearea \begin{document} \section{Test} Test\index{test} \Blindtext[3]Test\index{test} \Blindtext[3]Test\index{test} \Blindtext[5] \printindex \end{document} [\code]
Zuletzt geändert von JensH am Mi 23. Jun 2021, 11:47, insgesamt 2-mal geändert.


Grummelgast

Re: Makeidx

Beitrag von Grummelgast »

Zusätzlich zu dem wichtigen Hinweis von Gast, ein paar Anmerkungen:

  • Du hast den Link leider nicht beachtet. Links in Kommentaren sind als wichtige Bestandteile zu betrachten. Es liegt in deinem Interesse, sie zu beachten.

  • Option pagesize=pdftex ist überflüssig. Bei einem Wechsel der TeX Engine stört sie außerdem. Deshalb lässt man sie besser weg.

  • chapterprefix=no, headinclude=no, footinclude=no sind Voreinstellung. final mag für das eine oder andere Paket (ich kenne eigentlich nur eines) sinnvoll sein, einmal reicht dann aber.

  • Wer macht sich eigentlich noch die Mühe, den Editor extra auf die alte applemac-Inselcodierung umzustellen? Wäre es nicht einfacher, mit UTF8 zu arbeiten? Dann kann man sich inputenc ganz sparen.

  • \pagestyle{scrheadings} ist nach dem Laden von scrlayer-scrpage bereits aktiv.

  • scrhack ist in der Tat keine schlechte Idee, falls man eines der davon verbesserten Pakete verwendet.

  • Statt titletoc würde ich bei KOMA-Script-Klassen auf tocbasic setzen.

  • \indexname in der Dokumentpräambel mit \renewcommand umzudefinieren wird bei Verwendung von babel nicht funktionieren. Wie es besser geht, erfährt man in der KOMA-Script-Anleitung → \renewcaptionname.

  • Das Paket tcolorbox lädt xcolor bereits.

  • \pnumfont direkt umzudefinieren ist extrem old-school. Eigentlich macht man das mit \setkomafont{pagenumber}{\footnotesize}.

  • afterskip-Einstellungen von 0.05\baselineskip erscheinen mir sehr dubios. Ich kann nur hoffen, dass du weißt, was du da tust.

  • KOMA-Script-Klassen unterstützen bereits \frontispiece. Mir erscheint es sehr seltsam dafür extra das Paket titlepage zu laden und dann \makepretitleback umzudefinieren. Übrigens: Mit Fonts hat das nichts zu tun, der Name ist also … naja.

  • \raggedbottom ist bei einseitigen Dokumenten Voreinstellung.

  • Dein Beispiel ist auch nach Installation von titlepage aus dem KOMA-Repository leider nicht lauffähig. Allerdings fällt auf, dass hyperref eine Warnung wegen eines unbekannten Wertes für Option backref ausgibt.


JensH
Forum-Newbie
Forum-Newbie
Beiträge: 3
Registriert: Di 22. Jun 2021, 10:00

Re: Makeidx

Beitrag von JensH »

Super, vielen herzlichen Dank in die Runde für Eure Mühen, bin eben ein Anfänger, werde mich beim nächsten Mal besser an die Forenregeln halten.
Ich habe den Code nach den Vorgaben geändert, aber trotz allem hat sich mein Problem nicht gelöst, ich versuche es also noch einmal und zeige Euch ein hoffentlich funktionierendes Minimalbeispiel:


\documentclass[paper=a5, DIV=13, fontsize=10pt, BCOR=0mm, oneside, openany, parskip]{scrbook}

\usepackage[applemac]{inputenc}
\usepackage [english, german]{babel}
\usepackage[T1]{fontenc} 

\usepackage[kerning=alltext, tracking=true, babel, letterspace=90]{microtype}

\renewcommand{\familydefault}{\sfdefault}
\usepackage{sourcesanspro}

\RequirePackage[german=german-x-latest]{hyphsubst}

\hyphenation{einen}
\hyphenation{eines}
\hyphenation{einem}
\hyphenation{sondern}
\hyphenation{wieder}

\usepackage {scrlayer-scrpage}
\usepackage {scrhack}
\usepackage{makeidx}
\usepackage{underscore}
\usepackage{graphicx}
\usepackage {booktabs}
\usepackage {titlepage} 
\usepackage {titletoc}
\usepackage{tcolorbox}
\usepackage{wasysym}


\usepackage {tabularx}
\usepackage [labelfont={sf}, font={scriptsize},%
  labelsep=quad, skip=20pt]{caption}[2008/08/24]
  
\usepackage[columns=2,% Anzahl der Spalten columnsep=20pt,% Abstand der Spalten rule=0.75pt,% Für eine Trennlinien einen Wert > 0 angeben itemlayout= relhang, indentunit=15pt,% Einrückmaß font=footnotesize,% Schriftgröße totoc=true,% Ja, der Index soll in's Inhaltsverzeichnis ] {idxlayout} \makeindex \definecolor{orange}{cmyk}{.0, .52, .99,.07}%orange Schrift \definecolor{blau}{cmyk}{1, .1, .0,.29}%hellblau Fläche \addtokomafont{chapter}{\sffamily\scshape\Large\color{blau}} \addtokomafont{section}{\sffamily\scshape\large\color{orange}} \addtokomafont{subsection}{\sffamily\scshape\normalsize\color{blau}} \addtokomafont{subsubsection}{\small\color{orange}} \addtokomafont{paragraph}{\normalsize\color{blau}} \addtokomafont{subparagraph}{\small\color{orange}} \setkomafont{dictumauthor}{\scriptsize\normalfont} \setkomafont{dictum}{\scriptsize\normalfont} \setkomafont{pagehead}{\scriptsize\sffamily} \newcommand{\fu}{ \frqq} % su - Leerzeichen vor französischem Anführungsstrich
\newcommand{\fo}{\flqq\ } %hier ist nun das Leerzeichen \setkomafont{pagenumber}{\footnotesize} \setcounter{secnumdepth}{2} \renewcommand{\labelitemi}{$\circ$} \renewcommand{\labelitemii}{$\circ$} \renewcommand{\labelitemiii}{$\circ$} \renewcommand{\labelitemiv}{$\circ$} \setcounter{tocdepth}{1} \RedeclareSectionCommand[beforeskip=-1\baselineskip, afterskip=1\baselineskip] {chapter} \RedeclareSectionCommands[beforeskip=-.5\baselineskip, afterskip=\baselineskip] {section,subsection,subsubsection} \RedeclareSectionCommands[beforeskip=-.5\baselineskip, afterskip=1sp] {paragraph,subparagraph}
\usepackage{enumitem} \setitemize{itemsep=-11pt} \usepackage[ bookmarksopen=true, pdfauthor={Jens Helmig}, pdftitle={Das Backenhörnchen}, colorlinks=true, linkcolor=blau, citecolor=orange, urlcolor=orange, hyperindex=true, backref=none, hyperfootnotes=true, final ]{hyperref} \clubpenalty=1000 \widowpenalty=1000 \recalctypearea \begin{document} \begin{titlepage} \begin{center} \vspace*{1cm} {\sffamily\scshape\Large\color{blau}Das Backenhörnchen} \vspace{1cm} {\sffamily\scshape\normalsize\color{orange}Version 1.3} \vspace{3.5cm} {\sffamily\scshape\normalsize\color{blau}Jens H} \vfill {\sffamily\scshape\small\color{orange}Köln, den 24. Juni 2021} \end{center} \end{titlepage} \frontmatter \thispagestyle{empty} \tableofcontents \chapter{A-Hörnchen} A-Hörnchen\index {AHörnchen} \chapter{B-Hörnchen} B-Hörnchen\index{BHörnchen} \printindex \end{document}

Antworten