Criei um songbook usando o songbook
pacote. Conforme indicado no manual, adicionei um \makeTitleIndex
comando ao preâmbulo do meu cancioneiro. Ele cria um .tIdx
arquivo contendo títulos e números de músicas. No entanto, preciso dos números das páginas.
Existe uma maneira de configurar \makeTitleIndex
a saída de números de páginas (mesmo que seja um comando sem parâmetros)? Se não, que alternativas tenho? Eu gostaria de usar makeindex
para converter o .tIdx
arquivo .tdx
.
Aqui um exemplo songbook.tex
::
\documentclass[a4paper,10pt]{book}
\usepackage[ngerman]{babel}
\usepackage[chordbk]{songbook}
\begin{document}
\makeTitleIndex
\begin{song}{Song 1}{}{~}{}{}{}
song1
\newpage
song1 continued
\end{song}
\begin{song}{Song 2}{}{~}{}{}{}
song2
\end{song}
\begin{song}{Song 3}{}{~}{}{}{}
song3
\end{song}
\input{songbook.tdx}
\end{document}
Compile uma vez. Então corra:
makeindex -o songbook.tdx songbook.tIdx
Compile novamente. Observe que o índice no final do PDF mostra os números das músicas (não os números das páginas).
Responder1
O song
ambiente usa \titleIndex{\theSongTitle}{\theSBSongCnt}
para fazer a entrada do índice com o título da música e o valor do contador da música.
Isso pode ser corrigido para \xpatchcmd
mudar \theSBSongCnt
para \thepage
.
\documentclass[a4paper,10pt]{book}
\usepackage[ngerman]{babel}
\usepackage[chordbk]{songbook}
\usepackage{xpatch}
\xpatchcmd{\song}{%
\titleIndex{\theSongTitle}{\theSBSongCnt} %
}{%
\titleIndex{\theSongTitle}{\thepage} %
}{}{}
\begin{document}
\makeTitleIndex
\begin{song}{Song Foo}{}{~}{}{}{}
song1
\newpage
song1 continued
\end{song}
\begin{song}{Song Foobar}{}{~}{}{}{}
song2
\end{song}
\begin{song}{Song Other Foobar}{}{~}{}{}{}
song3
\end{song}
\input{songbook.tdx}
\end{document}