Re: tocloft… e indice elaborato

#25376
Up
0
Down
::

Userei l’argomento opzionale di \section, che ora impieghi male:
`\newcommand{\titolo}[1]{\section[\the\authN@toks, #1]{#1}}`
Se usi il titolo dell’abstract nella testatina, puoi aggiungere un \markright{#1} al codice, altrimenti verrebbe usato l’argomento opzionale.

Il problema è che al momento di dare \titolo non sono ancora conosciuti gli autori. Perciò devi spostare il comando \titolo all’interno dell’ambiente LTabstract, dopo che gli autori sono stati dati, e farlo eseguire da \end{LTabstract}.

Probabilmente il modo migliore è di definire
`\def\titolo#1{\def\@titolo{#1}}`
e nel codice di \end{LTabstract} aggiungere, all’inizio,
`\section[\the\authN@toks, \@titolo]{\@titolo}`
eventualmente con il \markright{\@titolo}.

Ciao
Enrico

Enrico.. cioè… 😯 è Perfetto! Grazie…
Ho usato il codice che mi hai suggerito e..
Tra l’altro ero preoccupato di dover spostare il comando \titolo all’interno dell’ambiente \begin{LTabstract}, quando inserivo gli abstract, e invece funziona lo stesso. Non mi è molto chiaro perchè, visto che ho inserito il codice:`
\def\LTabstract{\auth@toks{}\affil@toks{}}
\def\endLTabstract{\vbox{
{\noindent\textbf{Autori:} {\normalsize\itshape\parbox[t]{11cm} {\the\auth@toks}}\par} %%autori \section[\the\authN@toks, \@titolo]{\@titolo}`
Mi aspettavo che come le definizioni di \Author, anche titolo andasse messo dentro la defizione dell’ambiente. Ma forse è il comando
\def\titolo#1{\def\@titolo{#1}} [/code] messo prima che fa la differenza…

Ti chiedo l’ultima cosa.. anche se forse è un po’ troppo… 😉 Ma da quello che ho capito, i toks si comportano come array, giusto? Non sarebbe possibile modificare o creare un toks che contiene solo i primi 3 autori? Cioè, se in abstact ne ho 2, inserisco solo qui 2, ma se sono 5, sarebbe possibile far si che nel comando
`
\section[\the\authN@toks, \@titolo]{\@titolo}`
siano inseriti solo i primi 3 autori ? Che poi nell’indice risulti:
A.1 Titolo titolo titolo di autore 1, autore 2, autore 3 ? Togliendo gli altri? Una specie di if, che restituisce i primi 3 elementi dell’array (sempre se ho capito giusto!!!)
Forse è chiedere davvero troppo, è 🙄
VAbbè grazie mille comunque per l’aiuto. Questo forum mi è stato veramente indispensabile![/code][code]

Go to top