Index und hyperref - anklickbare Verweise hin und zurück

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: Index und hyperref - anklickbare Verweise hin und zurück

Re: Index und hyperref - anklickbare Verweise hin und zurück

von Rolli » Sa 21. Dez 2024, 11:51

Danke, Stefan! Das mit \protect, \noexpand, \expandafter usw. werde ich vermutlich nie verstehen ...
Gruß vom Rolli

Re: Index und hyperref - anklickbare Verweise hin und zurück

von Stefan Kottwitz » Sa 21. Dez 2024, 09:58

Hallo Rolli,

sehr gutes MWE! Es funktioniert, wenn Du in der Makrodefinition \protect vor \hypertarget stellst.

Stefan

PS: super, dass Du noch Antworten auf offene Themen gepostet hast!

Index und hyperref - anklickbare Verweise hin und zurück

von Rolli » Sa 21. Dez 2024, 07:02

Hi,
ich möchte meinen Indexapparat in beiden Richtungen mit anklickbaren Links versehen:
  • Im Fließtext soll beim Klick auf ein indiziertes Wort an die jeweilige Stelle im Indexverzeichnis gesprungen werden

    Im Indexverzeichnis soll beim Klick auf die Seitenzahl zurück an die jeweilige Stelle im Fließtext gesprungen werden
Diese Funktionalität habe ich hin bekommen - siehe MWE. Was ich nicht hin bekomme: Das in ein Makro zu stecken. Es gibt für mich nicht verständliche Fehlermeldungen:
! Undefined control sequence.
\@hyper@@anchor ...r@spot {#2#3}\let \put@me@back \@empty \ifx \relax #2\rel...
Was mache ich falsch?
\documentclass{article}
\usepackage{imakeidx}
\makeindex
\usepackage{hyperref}

\newcommand{\myIndex}[1]{
  \hyperlink{indexentry-#1}{#1}%
  \index{#1@\hypertarget{indexentry-#1}{#1}}%
}
\newcommand{\myINDEX}[1]{
  \hyperlink{indexentry-#1}{\textbf{#1}}%
  \index{#1@\hypertarget{indexentry-#1}{\textbf{#1}}}%
}

\begin{document}

Ein anklickbares fett gedrucktes Wort für das Stichwortverzeichnis:
\hyperlink{indexentry-Blabla}{\textbf{Blabla}}\index{Blabla@\hypertarget{indexentry-Blabla}{\textbf{Blabla}}}

Ein anklickbares Wort in Regulärschrift für das Stichwortverzeichnis:
\hyperlink{indexentry-BlubbBlubb}{BlubbBlubb}\index{BlubbBlubb@\hypertarget{indexentry-BlubbBlubb}{BlubbBlubb}}

... und jetzt mit einem Makro, was nicht funktioniert:
%\myIndex{FooBar}   %%% AUSKOMMENTIEREN, um den Fehler zu zeigen

\printindex
\end{document}
Danke für jede HIlfe!

Gruß vom Rolli

Nach oben