Re: Riferimenti incrociati contenenti il testo del riferimento

#85322
Up
0
Down
::

Amedeo” post=84726Ciao a tutti,

devo predisporre un documento in cui vengono usati riferimenti incociati. Mi piacerebbe, però, riportare anche a cosa fa riferimento il riferimento stesso, ad esempio il titolo del capitolo o della sezione riferita. La soluzione che riporto nel codice seguente è puramente indicativa e fa abbastanza schifo ma serve a capire cosa vorrei fare:

`
\documentclass{book}
\def\MyTitCapIni{Capitolo iniziale}
\def\MyTitCapFin{Capitolo finale}
\def\MyTitSecIni{Sezione iniziale}
\def\MyTitSecFin{Sezione finale}

\begin{document}

Nel \MyTitCapIni \hspace{5pt}\ref{cha:ini} a pag. \pageref{cha:ini}\\
Nel \MyTitCapFin \hspace{5pt}\ref{cha:fin} a pag. \pageref{cha:fin}\\
Nella \MyTitSecIni \hspace{5pt}\ref{sec:ini} a pag. \pageref{sec:ini}\\
Nella \MyTitSecFin \hspace{5pt}\ref{sec:fin} a pag. \pageref{sec:ini}\\

\chapter{\MyTitCapIni}\label{cha:ini}

Questo capitolo …

\section{\MyTitSecIni}\label{sec:ini}

Questa sezione …

\chapter{\MyTitCapFin}\label{cha:fin}

Questo capitolo …

\section{\MyTitSecFin}\label{sec:fin}

Questa sezione …

\end{document}
`

Con questa soluzione sono obbligato a definire in anticipo i titoli di capitoli e sezioni, mentre mi piacerebbe che il riferimento fosse dinamicamente legato al titolo indicato nel comandi \chapter o \section. Dovrei creare dei comandi personalizzati, ad esempio per \chapter, in cui “memorizzare” il titolo in una label?

Grazie come sempre per i vostri suggerimenti

a

Pacchetto nameref, per esempio:
`\documentclass{book}
\usepackage{nameref}

\begin{document}

Nel \nameref{cha:ini}~\ref{cha:ini} a pagina~\pageref{cha:ini}

Nel \nameref{cha:fin}~\ref{cha:fin} a pagina~\pageref{cha:fin}

Nella \nameref{sec:ini}~\ref{sec:ini} a pagina~\pageref{sec:ini}

Nella \nameref{sec:fin}~\ref{sec:fin} a pagina~\pageref{sec:ini}

\chapter{Capitolo iniziale}\label{cha:ini}

Questo capitolo …

\section{Sezione iniziale}\label{sec:ini}

Questa sezione …

\chapter{Capitolo finale}\label{cha:fin}

Questo capitolo …

\section{Sezione finale}\label{sec:fin}

Questa sezione …

\end{document}`
Non usare mai [tt]\hspace{5pt}[/tt] nel caso tu voglia uno spazio dopo un comando:
`Con \LaTeX{} diventa tutto facile`

E, sinceramente, “a pag. 12” mi sembra molto burocratico. Se poi vedo “alle pagg. 12 e 13” la mano va alla pistola. 🙂

Se proprio devi scrivere “pag.”, adopera [tt]~[/tt]:
`a pag.~\ref{pippo}`
Ciao
Enrico

Go to top