I am using the songs package v 2.18. the later update called 3.1 will not run on my pc. I have a problem that my current package is producing the lyrick book without index or page numbers. I need to include both..

My tex file:

% \includeonlysongs{2}

\settowidth{\versenumwidth}{1.\ }


\showindex{Dogter van Sion Sangbundel}{titleidx}


extract from My songs file:

\beginsong{SING 'N LIED TOT SY EER}

\[D]Ek sing 'n lied tot die eer,
die \[G]eer van ons  Mid'laar en \[A]Vriend.
Ewig \[D]soet is Sy \[G]Woord en Belof\[D]tes,
Ons ont\[A]vang dit daagliks \[D]onverdiend.
Hallelu\[D]Jah, \echo{HalleluJah}
Jubel te\[D]saam, 
Hallelu\[A Em G]Jah, \echo{HalleluJah}
Tot eer van Jah'Shua's \[D]Naam.

\[D]O, Jahw\[C]eh, ons \[G]Ereko\[D]ning,
welkom \[C]by ons \[G]hier, ons \[D]Heer.
Welkom \[C]in ons \[G]woning, \[D]Jahweh, 
ons maak \[C]ons poor\[G]te wyd \[D]oop, 
dat U, ons \[A]Koning \[D]en ons \[A]Man, 
kan \[D]aansit a\[G]an die \[A]fees in ons hart.
\[G]Ons \[D]loof U, \[A]Jah\[D]weh, 
hoe \[G]lank het \[D]ons ge\[A]wag 
\[G]vir hier\[D]die \[A]mooie \[D]dag, 
dat \[G]U, ons \[D]Ereko\[A]ning, 
U \[D]kinders \[C]kom bekrag.\[D] 
Ons is uwe, ons Bruidegom,
Sterre van Bo, begroet hul Son.
Kom in, ons Maker en ons Man,
laat ons aarde waggel en skuif,
dat lewensfonteine uit ons spruit
tot eer van U, ons Lewensbron.
Ons dank U, Jahweh, 
U genade is ons lewe. 
Maak tog oop ons o\"{e}, 
so-o-dat ons kan aanskou, 
die wonder van ons Meester.
Ons het trou 
aan U gesweer, Jah.
Eew'ge Koning, aan U die eer. 
Ons wil ons liefde aan U betuig. 
Ons het U lief, HalleluJah.
Ons wil ons loflied vir U sing,
want eew'ge lewe het U gebring. 
Eer aan Jah, ons Elohim, 
Liefde aan ons Meester. 
Ere aan ons Koning, 
Liefde aan ons Liefling, Jah. 
Die tyd vir wag is gedaan. 

\beginsong{DIE SE\"{E}NLIED}
\textnote{Sing 3X}
\[D]Mag die Meester Jah\[D7]shua
met Sy \[G]Liefde jou se\"{e}n
en Sy \[D]Gees van Barmhartigheid
op jou \[Em]daal soos die \[A]re\"{e}n,
want ons \[D]Vader, so \[D7]Groot, 
skenk ons \[G]daaglikse Brood. 
Dis Sy \[D]liefde vir \[A]jou en vir \[D]my,
dis Sy se\"{e}n\[G]ing vir \[A]jou en vir \[D]my.

\[D]Aan U, Jahweh, my dankgesange  
U \[A]wil ek \[D]in my \[E]aandlied \[A]prys!
Al \[D]kwyn die sonlig teen die hange,
U \[A]Lig, my \[D]lig, sal \[E]ho\"{e}r \[A]rys 
U het my met U \[D]guns versadig 
en \[A]as 'n Vader \[E]my be\[A]skerm; 
met \[D]se\"{e}ninge, so milddadig, 
U dag en \[A]nag oor my ont\[D]ferm
^U was my toevlug in gevare, 
U ^hand het ^my ^gevoed, ^gelei;
U ^was in al wat ek ervaar het, 
in ^voor- en ^tee^spoed ^naby   
U self stel aan die ^bose perke; 
U ^het ons ^vir U ^diens ^bevry:
Laat ^doen ons, Jah, die goeie werke 
deur Jah'Shua vir ons voorberei
^Ek weet aan wie'k my toevertrou het, 
al ^wissel dan ^ook ^dag en ^nag;
ek ^ken die Rots op wie'k gebou het, 
van ^wie ek ^al die ^heil ^verwag
Eens ^aan die einde van my lewe, 
sal ^ek, van ^alle ^sorge ^vry, 
vir ^elke dag my hier gegewe 
U ho\"{e}r, reiner loflied wy.
  • 1
    (1) welcome, (2) your MWE has no chance of compiling for anyone as the songs.sbd file you are including is not available. Is it needed for the example? (3) I'
    – daleif
    Dec 10, 2018 at 12:06
  • how do I attach it?
    – Gert
    Dec 10, 2018 at 12:21
  • it is rather lengthy.... although only 38MB.
    – Gert
    Dec 10, 2018 at 12:43
  • 1
    Pull out two or three and add them to your MWE, there is a reason why it is called a minimal example
    – daleif
    Dec 10, 2018 at 12:47
  • 1
    And please make this into one single MWE not two parts. People are much more likely to help if they have something they can copy and use as is, where we need to make two files, which is not necessary, just replace the \input... line with the contents of the second file.
    – daleif
    Dec 10, 2018 at 13:44

2 Answers 2


The page numbers can be produced by removing \pagestyle{empty} from the code.

The indexes are a little more complicated, this is described in Section 10.3 of the songs package manual. It involves calling a separate Lua script on the files generated after the LaTeX compilation step. In this case the following sequence of commands (in the terminal) should produce an index:

pdflatex yourfile.tex
texlua songidx.lua lbtitle.sxd lbtitle.sbx
pdflatex yourfile.tex

Note that the songidx.lua script must be available in the path of the terminal, however if you installed the package automatically then this should not be a problem.

If you want to compile using a GUI editor or a compiling tool such as latexmk or texify or arara then it is a bit more complex because of the custom index filenames that are defined in the document (here for example lbtitle). However, it is most probably possible to find a custom solution for this as well.

Result of the commands above:

enter image description here

  • 1
    Thank you so much on the page numbering issue. on the indexing issue:I do not understand why the newer versions lost its ability to auto-generate the index page? I do not know how to attach or insert my previous auto generated index here? Note my mitex console does not list a songsidx.lua package?
    – Gert
    Dec 10, 2018 at 14:43
  • @Gert this is compiled using version 3.0 (which I downloaded from CTAN just now to write my answer). This version contains the Lua script as well. The package revision history files states 'Transitioned the songidx program to LuaTeX, eliminating the need for C-compiled programs.' for version 3.0, so apparently it is a simplification of the installation and the dependencies of the package. You can try to install the 3.0 version and see if that works for you.
    – Marijn
    Dec 10, 2018 at 14:54
  • 1
    I do not know how to get and download v3.0. I went onto Ctan but it is only giving me the latest versions. I tried googling it to no avail? I got a zip version with the v3.0 files but dont know what to do with them? should have stayed with MS Publisher - much easier....
    – Gert
    Dec 10, 2018 at 15:21
  • 1
    this site is very confusing for me. I dont know how to chat with you on chat. my laptop wont run songs.ini. dont know how t do that....
    – Gert
    Dec 10, 2018 at 16:26
  • 1
    I still have no solution to generate an index, which is something which was uato generate in the old songs versions. My newest version seem not to be able to do this. Can someone help me please?
    – Gert
    Jan 5, 2019 at 11:34

Version 3.0 and above of the Songs package has all the same index generation automation capabilities as earlier versions, but the commands inside the generate.bat script (on Windows) and Makefile (on Linux/Mac) that launch the indexer are different. If your indexes are not generating automatically, it may be because you have the old 2.x generate.bat and/or Makefile in your folder, which won't be able to launch the new 3.x indexer you've installed. To upgrade to 3.x, you must use the new generate.bat or Makefile that comes with the new version.

  • I, for example, am using Tex Live 2019 on a MAC. After upgrading my tex distribution (now I know I have songs-3.1) The index did not create automatically. I searched for the lua file, and the index files songidx.lua lbtitle.sxd lbtitle.sbx put them on the same directory as my file, and ran the command pdflatex lua pdflatex and it did not produce the index. See tex.stackexchange.com/questions/510600/…
    – gota
    Oct 2, 2019 at 11:28

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .