Re: Ottenere espansione dei comandi nel file idx dell’indice

#89843
franen
Partecipante
    Up
    0
    Down
    ::


    @Caludio
    Il comando \StrSubstitute è definito nel pacchetto xstring, e la stringa su cui agisce è l’espansione del comando \songtitle. Non posso fare un cerca-sostituisci nel file perché i punti esclamativi devono rimanere tali quando stampo i titoli al di fuori dell’indice (ad esempio nell’intestazione delle canzoni).


    @Enrico

    grazie… era molto semplice… rimanendo all’interno della definizione di \makeprelude (il codice che crea l’intestazione delle canzoni) non serve nemmeno un \expandafter:`\documentclass{article}
    \usepackage{xstring}
    \usepackage{imakeidx}
    \makeindex
    \usepackage[noindexes]{songs}%songs.sourceforge.net
    \renewcommand{\makeprelude}{%
    \resettitles\songtitle
    \StrSubstitute{\songtitle}{!}{“!}[\tempstring]
    \index{\tempstring}
    }
    \begin {document}
    \begin{songs}{}
    \beginsong{Prima!}
    \endsong
    \beginsong{Seconda}
    \endsong
    \end{songs}
    \printindex
    \end {document}`

    Go to top