Haga clic en el capítulo para ir a TOC

Haga clic en el capítulo para ir a TOC

Haciendo referencia a esta pregunta:Hyperref refiere capítulo y página en el textoy su posible duplicadoEnlace en el que se puede hacer clic para regresar a la tabla de contenido

Esta es básicamente la segunda pregunta, pero tengan paciencia.

Utilicé la respuesta de las primeras preguntas, pero la edité ligeramente. Ahora tengo el nombre de cada capítulo vinculado al TOC (solo el nombre, no la parte 'Capítulo n.º' que se encuentra arriba. No es un gran problema, si sabes cómo resolverlo, déjame saberlo :))

El problema es: esto también altera la línea TOC para vincularla al TOC. Entonces, si ahora hago clic en un capítulo del TOC, esetambiénenlaces al TOC.

MWE:

\documentclass[11pt]{report}

\usepackage{hyperref}
\usepackage{lipsum}

\usepackage{xparse}
\AtBeginDocument{
    \let\oldchapter\chapter
    \RenewDocumentCommand{\chapter}{s o m}{%
    \clearpage
    \IfBooleanTF{#1}
        {\oldchapter*{\hyperref[toc]{#3}}}% \chapter*[..]{...}
        {\IfValueTF{#2}
            {\oldchapter[#2]{\hyperref[toc]{#3}}}% \chapter[..]{...}
            {\oldchapter{\hyperref[toc]{#3}}}% \chapter{...}
        \label{chapter-\thechapter}% \label this chapter
        }%
    }
}

\begin{document}

\chapter*{Preface}
\lipsum[1-1]
\tableofcontents\label{toc}
\chapter{Introduction}
\lipsum[2-2]
\end{document}

Lo que hice fue tomar la solución con soporte para capítulos sin numerar y agregarles un \hyperref[toc]{}.

Respuesta1

La solución más sencilla es utilizar \oldchapter[#3]{\hyperref[toc]{#3}}}%, es decir, escribir explícitamente el texto #3nuevamente en el índice y configurar el \hyperrefcomando en el título del capítulo. ¡Esto preservará los hiperanclajes correctos y evitará [toc]prefijos desagradables en el panel de marcadores!

\documentclass[11pt]{report}

\usepackage{hyperref}
\usepackage{lipsum}

\usepackage{xparse}
\AtBeginDocument{
  \let\oldchapter\chapter
  \RenewDocumentCommand{\chapter}{s o m}{%
    \clearpage
    \IfBooleanTF{#1}
    {\oldchapter*{\hyperref[toc]{#3}}}% \chapter*[..]{...}
    {\IfValueTF{#2}
      {\oldchapter[#2]{\hyperref[toc]{#3}}}% \chapter[..]{...}
      {\oldchapter[#3]{\hyperref[toc]{#3}}}% \chapter{...}
      \label{chapter-\thechapter}% \label this chapter
    }%
  }
}

\begin{document}

\chapter*{Preface}
\lipsum[1-1]
\tableofcontents\label{toc}
\chapter{Introduction}
\lipsum[2-2]

\chapter{Results}
\lipsum[2-4]
\end{document}

información relacionada