Seite 1 von 1
Index mit und ohne fett ausgezeichneten Einträgen
Verfasst: So 4. Jul 2010, 11:35
von muot2
\documentclass[11pt,titlepage=true,headinclude=false,footinclude=false,mpinclude=false,a4paper,headlines=2.1,pointlessnumbers,oneside,idxtotoc,onelineappendix,liststotoc,bibheadings=normal,BCOR=4.25mm,DIV=10]{scrreprt}
\RequirePackage{cmap}
\usepackage[T1]{fontenc}
\usepackage{ngerman}
\usepackage{makeidx}
\makeindex
\usepackage[linktocpage=true,colorlinks=true,linkcolor=blue,pagecolor=blue,urlcolor=blue,citecolor=blue,pagebackref=true,backref=page,hyperindex=true]{hyperref}
\usepackage{backref}
\newcommand*{\main}[1]{\textbf{\hyperpage{#1}}}
% Ende des Dokumentes
Folgendes Problem tritt beim Paket makeidx auf: Wenn ich eine Seitenzahl fett \index{Lahm|main} hervorhebe und auf derselben Seite \index{Lahm} steht, dann werden beide Seitenangaben - also zweimal dieselbe Seite - im Index angegeben. Also das Paket makeidx kann den Verweis einmal fett hervorgehoben und einmal nicht leider nicht als identische Verweise erkennen. Läßt sich dies korrigieren? Danke für die Tipps!
Verfasst: So 4. Jul 2010, 13:00
von skater
In deinem (Minimal-)Beispiel bekommt die Klasse (gefühlte) 200 unnötige Optionen. Passend dazu ist es so nicht lauffähig.
To put it other way: Try again!
Verfasst: So 4. Jul 2010, 13:53
von muot2
\documentclass[11pt,titlepage=true,headinclude=false,footinclude=false,mpinclude=false,a4paper,headlines=2.1,numbers=noenddot,oneside,idxtotoc,liststotoc,BCOR=4.25mm,DIV=10]{scrreprt}
\RequirePackage{cmap}
\usepackage[T1]{fontenc}
\usepackage{ngerman}
\nonfrenchspacing
\usepackage[german]{varioref}
\renewcommand\reftextbefore{Vgl.\ hier auf der vorherigen Seite}
\renewcommand\reftextfacebefore{Vgl.\ hier auf der vorherigen Seite}
\renewcommand\reftextafter{Vgl.\ hier auf der folgenden Seite}
\renewcommand\reftextfaceafter{Vgl.\ hier auf der folgenden Seite}
\renewcommand\reftextcurrent{Vgl.\ hierzu weiter auf dieser Seite}
\renewcommand\reftextfaraway[1]{Vgl.\ hier auf S.~\pageref{#1}}
\renewcommand\reftextpagerange[2]{Vgl.\ hier auf den Seiten~\pageref{#1}--\pageref{#2}}
\renewcommand\reftextlabelrange[2]{\ref{#1} bis~\ref{#2}}
\usepackage{makeidx}
\makeindex
\usepackage[automark,autooneside,headinclude,ilines,headsepline]{scrpage2}
\ihead{\headmark}
\chead{}
\ohead{}
\ifoot{}
\cfoot{}
\ofoot{\pagemark}
\renewcommand*{\headfont}{%
\normalfont\sffamily
}
\renewcommand*{\pnumfont}{%
\normalfont\sffamily
}
\pagestyle{scrheadings}
\usepackage{setspace}
\onehalfspacing
\setkomafont{pagenumber}{\normalfont\sffamily}
\setkomafont{pagehead}{\small\linespread{1}\sffamily}
\usepackage[linktocpage=true,colorlinks=true,linkcolor=blue,pagecolor=blue,urlcolor=blue,citecolor=blue,pagebackref=true,backref=page,hyperindex=true]{hyperref}
\usepackage{backref}
\renewcommand*{\backref}[1]{}
\renewcommand*{\backreflastsep}{ und }
\renewcommand*{\backreftwosep}{ und }
\renewcommand*{\backrefalt}[4]{%
\mbox{(Vgl.\ hier auf %
\ifnum#1=1 %
der Seite~%
\else
den Seiten~%
\fi
#2)}%
}
\renewcommand\thesection{\alph{section}}
\usepackage{tocstyle}
\usetocstyle{classic}
\usetocstyle{allwithdot}
\setkomafont{disposition}{\rmfamily\bfseries}
\setkomafont{chapter}{\Large\linespread{1}\sffamily\bfseries}
\setkomafont{section}{\large\linespread{1}\sffamily\bfseries}
\setkomafont{subsection}{\large\linespread{1}\sffamily\bfseries}
\deffootnote[1.1em]{1.1em}{1em}{%
\makebox[1.1em][r]{\thefootnotemark}{ }}
\setcounter{secnumdepth}{1}
\newcommand*{\main}[1]{\textbf{\hyperpage{#1}}}
\KOMAoptions{DIV=current}
\begin{document}
sorry, jetzt werden es wieder zuviele Bedingungen sein aber es ist nicht so ganz einfach die richtige Balance für ein Minimalbeispiel zufinden. Danke natürlich für den Hinweis. Jetzt läuft das Beispiel auch durch.
Verfasst: So 4. Jul 2010, 15:23
von skater
muot2 hat geschrieben:\documentclass[11pt,titlepage=true,headinclude=false,footinclude=false,mpinclude=false,a4paper,oneside,idxtotoc]{scrreprt}
…
\begin{document}
sorry, jetzt werden es wieder zuviele Bedingungen sein aber es ist nicht so ganz einfach die richtige Balance für ein Minimalbeispiel zufinden. Danke natürlich für den Hinweis.
Wenn es zuviele Bedingungen sind, dann solltest du die unnötigen Sachen einfach löschen. Was genau ist so schwierig an einem
Minimalbeispiel? Und wenn du ein Problem mit dem Index hast – was genau hat die Option
a4paper damit zu tun?
Jetzt läuft das Beispiel auch durch.
… und endet mit Fehlermeldungen.
Verfasst: So 4. Jul 2010, 17:33
von muot2
\documentclass{scrreprt}
\RequirePackage{cmap}
\usepackage[T1]{fontenc}
\usepackage{ngerman}
\nonfrenchspacing
\usepackage[german]{varioref}
\renewcommand\reftextbefore{Vgl.\ hier auf der vorherigen Seite}
\renewcommand\reftextfacebefore{Vgl.\ hier auf der vorherigen Seite}
\renewcommand\reftextafter{Vgl.\ hier auf der folgenden Seite}
\renewcommand\reftextfaceafter{Vgl.\ hier auf der folgenden Seite}
\renewcommand\reftextcurrent{Vgl.\ hierzu weiter auf dieser Seite}
\renewcommand\reftextfaraway[1]{Vgl.\ hier auf S.~\pageref{#1}}
\renewcommand\reftextpagerange[2]{Vgl.\ hier auf den Seiten~\pageref{#1}--\pageref{#2}}
\renewcommand\reftextlabelrange[2]{\ref{#1} bis~\ref{#2}}
\usepackage{makeidx}
\makeindex
\usepackage[automark,autooneside,headinclude,ilines,headsepline]{scrpage2}
\ihead{\headmark}
\chead{}
\ohead{}
\ifoot{}
\cfoot{}
\ofoot{\pagemark}
\renewcommand*{\headfont}{%
\normalfont\sffamily
}
\renewcommand*{\pnumfont}{%
\normalfont\sffamily
}
\pagestyle{scrheadings}
\usepackage{setspace}
\onehalfspacing
\setkomafont{pagenumber}{\normalfont\sffamily}
\setkomafont{pagehead}{\small\linespread{1}\sffamily}
\usepackage[linktocpage=true,colorlinks=true,linkcolor=blue,pagecolor=blue,urlcolor=blue,citecolor=blue,pagebackref=true,backref=page,hyperindex=true]{hyperref}
\usepackage{backref}
\renewcommand*{\backref}[1]{}
\renewcommand*{\backreflastsep}{ und }
\renewcommand*{\backreftwosep}{ und }
\renewcommand*{\backrefalt}[4]{%
\mbox{(Vgl.\ hier auf %
\ifnum#1=1 %
der Seite~%
\else
den Seiten~%
\fi
#2)}%
}
\newcommand*{\main}[1]{\textbf{\hyperpage{#1}}}
\begin{document}
bla bla bla
\index{Lahm} blablab bala lball alb lal bal bal \index{Lahm|main} blab bla
\printindex
\end{document}
Bei mir läuft das fehlerfrei durch. Ich nutze TeX-live 2009 auf einem Mac. Ich habe das Code-Beispiel von allem befreit, was mir einleuchtend erschien, nicht Einfluß auf den Fehler (?) zu haben aber dennoch lauffähig zu sein. Leider kann ich nicht beurteilen, welche Pakete oder neu definierten Befehle sich gegenseitig behindern. Daher bitte ich ja auch um Hilfe. Wenn ich mich dabei umgeschickt anstellen, liegt es sozusagen in der Natur der Sache.
Also daher auch danke für die Hilfe.
Verfasst: So 4. Jul 2010, 18:34
von skater
Bei mir läuft das fehlerfrei durch. Ich nutze TeX-live 2009 auf einem Mac. Ich habe das Code-Beispiel von allem befreit, was mir einleuchtend erschien, nicht Einfluß auf den Fehler (?) zu haben aber dennoch lauffähig zu sein. Leider kann ich nicht beurteilen, welche Pakete oder neu definierten Befehle sich gegenseitig behindern. Daher bitte ich ja auch um Hilfe. Wenn ich mich dabei umgeschickt anstellen, liegt es sozusagen in der Natur der Sache.
Was genau ist jetzt so schwierig daran, ein
Minimalbeispiel zu erstellen, den Müll auszukommentieren und zu schauen, ob der Fehler verschwindet?
Oder vermutest du, dass
varioref die Ursache für dein Problem ist oder sein könnte?
Ich wollte nichts weniger als:
\documentclass{scrartcl}
\usepackage[T1]{fontenc}
\usepackage[ngerman]{babel}
\usepackage{lmodern}
\usepackage{makeidx}
\makeindex
\begin{document}
bla\index{Lahm} blablab\index{Lahm|textbf}
bla\index{Sahm} blablab\index{Sahm}
bla\index{Rahm|textit} blablab\index{Rahm|textit}
\printindex
\end{document}
In der Log-Datei von
makeindex steht:
»Conflicting entries: multiple encaps for the same page under same key.«
Ich persönlich würde das ganz zum Schluss raus suchen, und einen dieser beiden Einträge einfach entfernen.
Verfasst: So 4. Jul 2010, 19:55
von muot2
Jut, danke!
Da weiß ich jetzt, dass ich am Ende die ind-datei noch einmal per Hand flöhen muss. (Die Idee mit dem varioref-Zeug war wohl recht abwegig, hm. Beim nächsten Mal lasse ich es dann weg.)