Wie kann ich über „\ref“ auf einen nicht nummerierten Abschnitt verweisen?

Wie kann ich über „\ref“ auf einen nicht nummerierten Abschnitt verweisen?

Nun, ich versuche, eine kurze Zusammenfassung über meine Vorlage zu schreiben, und bin an einem Scheideweg angelangt. In meiner Klassendefinition habe ich den \section{}Befehl neu definiert, um \section*{}eine bestimmte Stilisierung meiner Vorlage beizubehalten, aber jetzt möchte ich die Abschnitte unabhängig voneinander referenzieren, aber die Eigenschaft beibehalten, dass \section{A random title}der Titel unnummeriert bleibt, wenn ich ihn schreibe.

Lassen Sie mich dies genauer erklären:

  1. Ich habe den \section{}Befehl mit diesen Codezeilen neu definiert:

    \let\oldsection\section                             
    \renewcommand{\section}[1]{%                        
       \oldsection*{#1}                                
       \phantomsection                                
       \addcontentsline{toc}{section}{#1}              
    }
    
  2. Wenn ich es \ref{A label given to the section}in zwei verschiedenen Abschnitten verwende, erhalte ich das folgende Ergebnis:

Bildbeschreibung hier eingeben

  1. Ich muss den Befehl nicht \section{}nummerieren, da ich eine Minizusammenfassung erstellt habe, die die Namen der einzelnen Abschnitte im Kapitel wie folgt enthält:

Bildbeschreibung hier eingeben

Ich denke, es ist nicht notwendig, den Code dieser Mini-Zusammenfassung einzufügen, um den Beitrag nicht mit Informationen zu überladen.

Im Grunde genommen brauche ich nur Hilfe, um herauszufinden, wie das \ref{}funktioniert.

Antwort1

Es besteht die Möglichkeit, \ref{}die Arbeit nach Ihren Wünschen zu gestalten. Sie müssten \@currentlabelvor „next“ an Ort und Stelle neu definieren \label. In Ihrem Fall wäre das innerhalb eines neu definierten \section.

Da Sie laden hyperref, ist dies nicht erforderlich \phantomsection, da in jedem markierten Abschnitt bereits Anker hinzugefügt wurden. Es wird außerdem empfohlen, \NewCommandCopyanstelle von zu verwenden \let.

Das folgende Beispiel erzeugt:

Bildbeschreibung hier eingeben

Ich habe Ihr Makro leicht erweitert, um \ref{} bei Bedarf einen kürzeren Abschnittstitel verwenden zu können. Ich gehe auch davon aus, dass nach Doppelpunkten Seitenzahlen folgen, da die Abschnittsnummer in diesem Fall bedeutungslos wäre.

\documentclass{report}
\usepackage[colorlinks]{hyperref}
\usepackage{blindtext}

\title{The Title}
\author{First Last}
\date{}

\makeatletter
\NewCommandCopy\oldsection\section
\RenewDocumentCommand\section{O{#2}m}{%
  \oldsection*{#2}\addcontentsline{toc}{section}{\numberline{}#2}%
  \edef\@currentlabel{(titled as "#1")}}
\makeatother


\begin{document}
\maketitle
\tableofcontents

\chapter{Chapter one}
\section{Section: Aaa}\label{sec:aaa}
\Blindtext

\chapter{Chapter two}
\section[Bbb]{Section: Bbb}\label{sec:bbb}
\Blindtext

\chapter{Chapter three}
Referring to the section 1 \ref{sec:aaa}: \pageref{sec:aaa}.\\*
Referring to the section 2 \ref{sec:bbb}: \pageref{sec:bbb}.
\end{document}

verwandte Informationen