texlive[73548] Master/texmf-dist: liederbuch (21jan25)

commits+karl at tug.org commits+karl at tug.org
Tue Jan 21 21:46:10 CET 2025


Revision: 73548
          https://tug.org/svn/texlive?view=revision&revision=73548
Author:   karl
Date:     2025-01-21 21:46:10 +0100 (Tue, 21 Jan 2025)
Log Message:
-----------
liederbuch (21jan25)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/latex/liederbuch/README.md
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-documentation.pdf
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-documentation.tex
    trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch.sty
    trunk/Master/texmf-dist/tex/latex/liederbuch/printliederbuch.sty

Added Paths:
-----------
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/README_demo-project.txt
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuch.sty
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.ly
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.ly
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.pdf
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.pdf
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.tex
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.pdf
    trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.tex
    trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-babel.sty
    trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-listofsongs.sty

Removed Paths:
-------------
    trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/DemoProjekt.pdf
    trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/DemoProjekt.tex
    trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/Readme_Demoprojekt.txt
    trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/TestLiederbuch.sty
    trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/TestLiederbuchSnippets/
    trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/printTestLiederbuch.pdf
    trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/printTestLiederbuch.tex

Deleted: trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/DemoProjekt.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/DemoProjekt.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/DemoProjekt.tex	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/DemoProjekt.tex	2025-01-21 20:46:10 UTC (rev 73548)
@@ -1,54 +0,0 @@
-\documentclass[a5paper, 11pt]{scrartcl}
-\usepackage[ngerman]{babel}
-\usepackage[utf8]{inputenc}
-\usepackage{graphicx}
-\usepackage{lipsum}
-\usepackage{scrlayer-scrpage}
-\usepackage{../liederbuch}
-
-\usepackage{TestLiederbuch}
-
-%%% This is default %%%
-%\pageBreakAllowedtrue
-%%% but you can use also this %%%
-%\pageBreakAllowedtrue
-%%% try uncommenting the second one and see, what happens in the strophes %%%
-
-%%% This is a nice head %%%
-\LBHead{%
-{\Large \textbf{\print{title}}}\hfill\mbox{}\vspace*{5pt}\\
-\makebox[32pt]{Musik:\hfill} \print{composer} \\\makebox[32pt]{Text:\hfill} \print{lyricist}\vspace*{3pt}
-
-}
-
-%%% This is an okay foot. The text will be always on the left due to the hfill. %%%
-\LBFoot{Herausgabedatum: \print{date}\hfill\mbox{}}
-
-%%% You can change these throughout the document however you like %%%
-\setSpaceBeforeStropheValue{15pt plus 5pt}
-\setSpaceAfterStropheValue{0pt plus 5pt}
-\setSpaceBeforeHeadValue{15pt plus 10pt minus 5pt}
-\setSpaceBeforeFootValue{15pt plus 10pt minus 5pt}
-
-\begin{document}
-
-\LBsong{TestLiederbuch}{1}{nt}
-
-\LBsong{TestLiederbuch}{1}{t}
-
-
-\section{new section}
-\lipsum[1]
-\begin{center}
-\LBsong{TestLiederbuch}{2}{nt}
-\end{center}
-\lipsum[1]
-
-%%% If you delete the '%' at the beginnng of the next line, you can fix the meta data: %%%
-%\tweakMetadata{t}{TestLiederbuch}{3}{source = Aschenbecher & title = Oh alte Wurstverkäuferherrlichkeit & composer = This doesn't make sense & unusedTag = we don't need that & writer = Now all tags are filled}
-
-\LBsong{TestLiederbuch}{3}{t}
-
-Text zum Testen \LBsong{TestLiederbuch}{80}{nt}
-
-\end{document}
\ No newline at end of file

Deleted: trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/Readme_Demoprojekt.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/Readme_Demoprojekt.txt	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/Readme_Demoprojekt.txt	2025-01-21 20:46:10 UTC (rev 73548)
@@ -1,14 +0,0 @@
-1. Put the whole Demoprojekt-folder somewhere.
-2. Copy
-		- GFM-FillPages.sty
-		- GFM-RealPage.sty
-		- GFM-Liederbuch.sty
-	to the Demoprojekt-folder. The current versions can be found in the main directory
-        (skip this step, if you got this via TeX-Live)
-3. Open Demoprojekt.tex
-4. Compile the document
-
-In case of problems:
-
-xparse not found => add \usepackage{xparse} in second line in Demoprojekt
-still doesn't work => replace \usepackage{xparse} by \usepackage{l3packages}

Deleted: trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/TestLiederbuch.sty
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/TestLiederbuch.sty	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/TestLiederbuch.sty	2025-01-21 20:46:10 UTC (rev 73548)
@@ -1,125 +0,0 @@
-\ProvidesPackage{TestLiederbuch}
-\RequirePackage{liederbuch}
-\RequirePackage{graphicx}
-
-\begin{liederbuch}[
-titleOfLargerWork = Test-Liederbuch &
-date = 2017 &
-seriesTitle = Demoprojekt
-]{TestLiederbuch}
-
-\begin{lied}[title=Hänschen klein & lyricist=Volkslied \& überliefert & composer = Volkslied]{t}{1}
-\begin{strophe}[1]
-Hänschen klein,\\
-ging allein\\
-in die weite Welt hinein.\\
-Stock und Hut,\\
-steht im gut.\\
-Ist gar wohlgemut.\\
-Aber Mutter weinet sehr,\\
-hat ja nun kein Hänschen mehr.\\
-Da besinnt sich das Kind,\\
-kehret heim geschwind.
-\end{strophe}
-\begin{strophe}
-Hänschen klein,\\
-ging allein\\
-in’n Berliner Turnverein.\\
-Turnt am Reck,\\
-fällt in’n Dreck,\\
-ist die Nase weg.\\
-ommt der Doktor Hampelmann,\\
-klebt die Nas’ mit Spucke an.\\
-Hänschen klein\\
-freut sich sehr,\\
-hat nun eine Nase mehr.\\
-\end{strophe}
-\end{lied}
-
-\begin{lied}[title=Hänschen klein & lyricist=Volkslied \& überliefert & composer = Volkslied]{nt}{1}
-{%
-\notenzeile{\includegraphics[width=\linewidth,page=1]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
-{\nspace{7} Häns \ns* chen\ns klein \ns ging \ns all \ns* ein \ns \nspace{4} in \ns \ns die \ns \ns wei \ns* te \nspace{4}}
-\notenzeile{\includegraphics[width=\linewidth,page=2]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
-{\nspace{12pt} Welt \ns hin \ns* ein. \ns \ns Stock \ns und \ns Hut \ns \ns steht\ns ihm \ns gut, \nspace{5}}
-\notenzeile{\includegraphics[width=\linewidth,page=3]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
-{\nspace{6} ist \ns gar \ns wohl \ns* ge\ns -\ns mut. \nspace{6} Ab \ns* er~ \ns Mut \ns* ter \nspace{3.5}}
-\notenzeile{\includegraphics[width=\linewidth,page=4]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
-{\nspace{4} wein \ns* et \ns sehr, \ns \ns hat \ns ja \ns wohl \ns kein \ns Häns \ns* chen\ns mehr.\nspace{2}}
-\notenzeile{\includegraphics[width=\linewidth,page=5]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
-{\nspace{5} Da \ns be \ns* sinnt \ns \ns sich \ns das \ns Kind, \ns \ns kehr \ns* et \ns heim \ns ge \ns - \ns schwind\nspace{1}}
-}
-\end{lied}
-
-\begin{lied}[title=Alle Vöglein sind schon da & composer =Kinderlied & originalSource= Liederbuch & date = 1835 & lyricist = Kinderlied]{nt}{2}
-\begin{strophe}[1]
-Alle Vöglein sind schon da,\\
-alle Vöglein alle.\\
-Amsel, Drossel, Fink und Star,\\
-und die ganze Vogelschar.\\
-Alle Vöglein sind schon da,\\
-alle Vöglein alle.\\
-\end{strophe}
-\end{lied}
-
-\begin{lied}{n}{336}
-song number 336, format n
-\end{lied}
-
-\begin{lied}[%
-title = Same but different &%
-lyricist = some tags are missing and therefore empty &%
-]{t}{3}
-Once again Song Number 1t as 3t via reference\vspace*{10pt}
-
-\csuse{liedBody;TestLiederbuch;t;1}
-\end{lied}
-
-\begin{lied}[%
-title = O alte Burschenherrlichkeit &%
-lyricist = Eugen Höfling (1808-1880) zugeschrieben &%
-composer = Studentenweise vor 1843 &%
-date = 18 Jhd.%
-]{nt}{80}
-\notenzeile{\includegraphics[width=\linewidth,page=1]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
-{\nspace{9} O \ns \ns \nspace{4pt} al \ns*[3pt] te \ns Bur \ns* schen \ns*[2] herr \ns* lich \ns*[-2] keit \ns wo-\nspace{3}}
-\notenzeile{\includegraphics[width=\linewidth,page=2]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
-{\nspace{5} hin \ns bist \ns du \ns verschwunden \ns \nspace{3} \ns nie \ns kehrst \ns du \ns wie \ns* der \nspace{2}}
-\notenzeile{\includegraphics[width=\linewidth,page=3]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
-{\nspace{4} gold' \ns* ne \ns Zeit \ns so \ns froh \ns und \ns un \ns* \ns ge \ns* \ns bun \ns* den \nspace{10}}
-\notenzeile{\includegraphics[width=\linewidth,page=4]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
-{\nspace{6}ver \ns* geb \ns* ens \ns spä \ns* he \ns \nspace{1} \ns ich \ns \nspace{1} \ns umher \ns ich \ns fin \ns* de \nspace{2}}
-\notenzeile{\includegraphics[width=\linewidth,page=5]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
-{\nspace{5} dei \ns* ne \ns \nspace{2} \ns Spur \ns \nspace{2} \ns nicht \ns \nspace{2} \ns mehr \ns \nspace{2} \ns O \ns je \ns* rum, \ns je \ns* rum, \nspace{1}}
-\notenzeile{\includegraphics[width=\linewidth,page=6]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
-{\nspace{6} je \ns* rum \ns \nspace{2} \ns O \ns quae \ns mu \ns* ta \ns* tio \ns re \ns* rum \nspace{7}}
-
-\begin{strophe}[2]
-Den Burschenhut bedeckt der Staub, es sank der Flaus in
-Trümmer, der Schläger ward des Rostes Raub, erblichen ist sein
-Schimmer, verklungen der Kommersgesang, verhallt Rapier- und
-Sporenklang. \repeatleft~O~jerum, jerum, jerum, o quae mutatio rerum!~\repeatright 
-\end{strophe}
-\begin{strophe}
-Wo sind sie, die vom breiten Stein nicht wankten und nicht
-wichen, die ohne Moos bei Scherz und Wein den Herrn der Erde
-glichen? Sie zogen mit gesenktem Blick in das Philisterland
-zurück. \repeatleft~O~jerum, jerum, jerum, o quae mutatio rerum!~\repeatright 
-\end{strophe}
-\begin{strophe}
-Da schreibt mit finsterm Amtsgesicht der eine Relationen, der andre seufzt beim Unterricht, und der macht Recensionen, der schilt die sündge Seele aus und der flickt ihr verfallnes Haus. \repeatleft~O~jerum, jerum, jerum, o quae mutatio rerum!~\repeatright
-\end{strophe}
-\begin{strophe}
-Auf öder schraubt uns spannt das Fadenkreuz der ein, der andere seufzt beim Steinverband und der legt Pflastersteine; der kocht aus Rüben Zuckersaft und der aus Wasser Pferdekraft. \repeatleft~O~jerum, jerum, jerum, o quae mutatio rerum~\repeatright\end{strophe}
-\begin{strophe}
-Allein das rechte Burschenherz kann nimmermehr erkalten; im Ernste wird, wie hier im Scherz, der rechte Sinn stets walten; die alte Schale nur ist fern, geblieben ist uns doch der Kern, \repeatleft~und den laßt
-fest uns halten!~\repeatleft 
-\end{strophe}
-\begin{strophe}
-Drum, Freunde! reichet euch die Hand, damit es sich erneue,
-der alten Freundschaft heilges Band, das alte Band der Treue. Klingt an und hebt die Gläser hoch, die alten Burschen leben noch, \repeatleft~noch lebt die alte Treue.~\repeatright
-\end{strophe}
-
-\end{lied}
-
-\end{liederbuch}

Deleted: trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/printTestLiederbuch.pdf
===================================================================
(Binary files differ)

Deleted: trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/printTestLiederbuch.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/printTestLiederbuch.tex	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/DemoProjekt/printTestLiederbuch.tex	2025-01-21 20:46:10 UTC (rev 73548)
@@ -1,11 +0,0 @@
-\documentclass[a5paper, 11pt]{scrartcl}
-\usepackage[ngerman]{babel}
-\usepackage[utf8]{inputenc}
-\usepackage{printLiederbuch}
-\usepackage{TestLiederbuch}
-
-\begin{document}
-
-\printLiederbuch{TestLiederbuch}
-
-\end{document}
\ No newline at end of file

Modified: trunk/Master/texmf-dist/doc/latex/liederbuch/README.md
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/README.md	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/README.md	2025-01-21 20:46:10 UTC (rev 73548)
@@ -1,46 +1,46 @@
 # Liederbuch-Package
 This is a LaTeX package for creating easy-to-use songbooks and including these songs in songbooklets for i.e. weddings. It is intended for songs, but it can include any content you want to reuse once in a while.
 
-This material is subject to the LaTeX Project Public License 1.3c. You can do whatever you want with it, just don't upload the same under the same name.
+This material is subject to the LaTeX Project Public License 1.3. You can do whatever you want with it, just don't upload the same under the same name.
 
 The basic concept is to have one database, the Liederbuch (songbook) and a document fetching the songs from there.
 
 A songbook looks like that:
-________
-\ProvidesPackage{testSongbook}
-\RequirePackage{liederbuch}
 
-\begin{liederbuch}[publisher=me & date = today]{testSongbook-1}
+    \ProvidesPackage{testSongbook}
+    \RequirePackage{liederbuch}
+    
+    \begin{liederbuch}[publisher=me & date = today]{testSongbook-1}
+    
+    \begin{lied}[meta data=this is just a test & otherData = it really is a test]{var1}{144000}
+       No notes and text yet.
+    \end{lied}
+    
+    \begin{lied}{var2}{144000}
+       Same song, but different variant (var2)
+    \end{lied}
+    
+    \begin{lied}{versionA}{001}
+       Another song with song number 001 in versionA. The version parameter exists, that song numbers can be overloaded.
+    \end{lied}
+    
+    \end{liederbuch}
+    
+    
+    \begin{liederbuch}{testSongbook-2}
+    
+    \begin{lied}[meta data= some other values]{aSong}{1}
+       Another song in another songbook
+    \end{lied}
+    \end{liederbuch}
 
-\begin{lied}[meta data=this is just a test & otherData = it really is a test]{var1}{144000}
-   No notes and text yet.
-\end{lied}
-
-\begin{lied}{var2}{144000}
-   Same song, but different variant (var2)
-\end{Lied}
-
-\begin{lied}{versionA}{001}
-   Another song with song number 001 in versionA. The version parameter exists, that song numbers can be overloaded.
-\end{Lied}
-
-\end{liederbuch}
-
-
-\begin{liederbuch}{testSongbook-2}
-
-\begin{lied}[meta data= some other values]{aSong}{1}
-   Another song in another songbook
-\end{lied}
-\end{liederbuch}
-________
-
 To call a song, you just write
 
-\LBsong{testSongbook-1}{144000}{var1}
+    \LBsong{testSongbook-1}{144000}{var1}
 
 and it automatically adds the previous defined song to your document.
 
 
-This is useful, if you reuse text segments, songs or graphics very often (you can store anything within \begin{Lied}...\end{Lied}).
+This is useful, if you reuse text segments, songs or graphics very often (you can store anything within \begin{lied}...\end{lied}).
 
+Written by Gabriel Ruprecht, version 1.1.0 / 2025-01-20
\ No newline at end of file

Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/README_demo-project.txt
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/README_demo-project.txt	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/README_demo-project.txt	2025-01-21 20:46:10 UTC (rev 73548)
@@ -0,0 +1,8 @@
+1. Put the whole Demoprojekt-folder somewhere.
+2. Open Demoprojekt.tex
+3. Compile the document
+
+In case of problems:
+
+xparse not found => add \usepackage{xparse} in second line in Demoprojekt
+still doesn't work => replace \usepackage{xparse} by \usepackage{l3packages}


Property changes on: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/README_demo-project.txt
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuch.sty
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuch.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuch.sty	2025-01-21 20:46:10 UTC (rev 73548)
@@ -0,0 +1,136 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                   %
+%      Made by Gabriel Ruprecht     %
+%                                   %
+% This work is published under the  %
+% LaTeX project public license 1.3  %
+%                                   %
+%       Package version 1.1.0       %
+%            2025-01-20             %
+%                                   %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesPackage{TestLiederbuch}[version 1.1.0]
+\RequirePackage{liederbuch}
+\RequirePackage{graphicx}
+
+\begin{liederbuch}[
+titleOfLargerWork = Test-Liederbuch &
+date = 2017 &
+seriesTitle = Demoprojekt
+]{TestLiederbuch}
+
+\begin{lied}[title=Hänschen klein & lyricist=Volkslied \& überliefert & composer = Volkslied]{t}{1}
+\begin{strophe}[1]
+Hänschen klein,\\
+ging allein\\
+in die weite Welt hinein.\\
+Stock und Hut,\\
+steht im gut.\\
+Ist gar wohlgemut.\\
+Aber Mutter weinet sehr,\\
+hat ja nun kein Hänschen mehr.\\
+Da besinnt sich das Kind,\\
+kehret heim geschwind.
+\end{strophe}
+\begin{strophe}
+Hänschen klein,\\
+ging allein\\
+in’n Berliner Turnverein.\\
+Turnt am Reck,\\
+fällt in’n Dreck,\\
+ist die Nase weg.\\
+ommt der Doktor Hampelmann,\\
+klebt die Nas’ mit Spucke an.\\
+Hänschen klein\\
+freut sich sehr,\\
+hat nun eine Nase mehr.\\
+\end{strophe}
+\end{lied}
+
+\begin{lied}[title=Hänschen klein & lyricist=Volkslied \& überliefert & composer = Volkslied]{nt}{1}
+{%
+\notenzeile{\includegraphics[width=\linewidth,page=1]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
+{\nspace{7} Häns \ns* chen\ns klein \ns ging \ns all \ns* ein \ns \nspace{4} in \ns \ns die \ns \ns wei \ns* te \nspace{4}}
+\notenzeile{\includegraphics[width=\linewidth,page=2]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
+{\nspace{12pt} Welt \ns hin \ns* ein. \ns \ns Stock \ns und \ns Hut \ns \ns steht\ns ihm \ns gut, \nspace{5}}
+\notenzeile{\includegraphics[width=\linewidth,page=3]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
+{\nspace{6} ist \ns gar \ns wohl \ns* ge\ns -\ns mut. \nspace{6} Ab \ns* er~ \ns Mut \ns* ter \nspace{3.5}}
+\notenzeile{\includegraphics[width=\linewidth,page=4]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
+{\nspace{4} wein \ns* et \ns sehr, \ns \ns hat \ns ja \ns wohl \ns kein \ns Häns \ns* chen\ns mehr.\nspace{2}}
+\notenzeile{\includegraphics[width=\linewidth,page=5]{./TestLiederbuchSnippets/haenschenKlein.pdf}}%
+{\nspace{5} Da \ns be \ns* sinnt \ns \ns sich \ns das \ns Kind, \ns \ns kehr \ns* et \ns heim \ns ge \ns - \ns schwind\nspace{1}}
+}
+\end{lied}
+
+\begin{lied}[title=Alle Vöglein sind schon da & composer =Kinderlied & originalSource= Liederbuch & date = 1835 & lyricist = Kinderlied]{nt}{2}
+\begin{strophe}[1]
+Alle Vöglein sind schon da,\\
+alle Vöglein alle.\\
+Amsel, Drossel, Fink und Star,\\
+und die ganze Vogelschar.\\
+Alle Vöglein sind schon da,\\
+alle Vöglein alle.\\
+\end{strophe}
+\end{lied}
+
+\begin{lied}{n}{336}
+song number 336, format n
+\end{lied}
+
+\begin{lied}[%
+title = Same but different &%
+lyricist = some tags are missing and therefore empty &%
+]{t}{3}
+Once again Song Number 1t as 3t via reference\vspace*{10pt}
+
+\csuse{liedBody;TestLiederbuch;t;1}
+\end{lied}
+
+\begin{lied}[%
+title = O alte Burschenherrlichkeit &%
+lyricist = Eugen Höfling (1808-1880) zugeschrieben &%
+composer = Studentenweise vor 1843 &%
+date = 18 Jhd.%
+]{nt}{80}
+\notenzeile{\includegraphics[width=\linewidth,page=1]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
+{\nspace{9} O \ns \ns \nspace{4pt} al \ns*[3pt] te \ns Bur \ns* schen \ns*[2] herr \ns* lich \ns*[-2] keit \ns wo-\nspace{3}}
+\notenzeile{\includegraphics[width=\linewidth,page=2]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
+{\nspace{5} hin \ns bist \ns du \ns verschwunden \ns \nspace{3} \ns nie \ns kehrst \ns du \ns wie \ns* der \nspace{2}}
+\notenzeile{\includegraphics[width=\linewidth,page=3]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
+{\nspace{4} gold' \ns* ne \ns Zeit \ns so \ns froh \ns und \ns un \ns* \ns ge \ns* \ns bun \ns* den \nspace{10}}
+\notenzeile{\includegraphics[width=\linewidth,page=4]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
+{\nspace{6}ver \ns* geb \ns* ens \ns spä \ns* he \ns \nspace{1} \ns ich \ns \nspace{1} \ns umher \ns ich \ns fin \ns* de \nspace{2}}
+\notenzeile{\includegraphics[width=\linewidth,page=5]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
+{\nspace{5} dei \ns* ne \ns \nspace{2} \ns Spur \ns \nspace{2} \ns nicht \ns \nspace{2} \ns mehr \ns \nspace{2} \ns O \ns je \ns* rum, \ns je \ns* rum, \nspace{1}}
+\notenzeile{\includegraphics[width=\linewidth,page=6]{./TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf}}
+{\nspace{6} je \ns* rum \ns \nspace{2} \ns O \ns quae \ns mu \ns* ta \ns* tio \ns re \ns* rum \nspace{7}}
+
+\begin{strophe}[2]
+Den Burschenhut bedeckt der Staub, es sank der Flaus in
+Trümmer, der Schläger ward des Rostes Raub, erblichen ist sein
+Schimmer, verklungen der Kommersgesang, verhallt Rapier- und
+Sporenklang. \repeatleft~O~jerum, jerum, jerum, o quae mutatio rerum!~\repeatright 
+\end{strophe}
+\begin{strophe}
+Wo sind sie, die vom breiten Stein nicht wankten und nicht
+wichen, die ohne Moos bei Scherz und Wein den Herrn der Erde
+glichen? Sie zogen mit gesenktem Blick in das Philisterland
+zurück. \repeatleft~O~jerum, jerum, jerum, o quae mutatio rerum!~\repeatright 
+\end{strophe}
+\begin{strophe}
+Da schreibt mit finsterm Amtsgesicht der eine Relationen, der andre seufzt beim Unterricht, und der macht Recensionen, der schilt die sündge Seele aus und der flickt ihr verfallnes Haus. \repeatleft~O~jerum, jerum, jerum, o quae mutatio rerum!~\repeatright
+\end{strophe}
+\begin{strophe}
+Auf öder schraubt uns spannt das Fadenkreuz der ein, der andere seufzt beim Steinverband und der legt Pflastersteine; der kocht aus Rüben Zuckersaft und der aus Wasser Pferdekraft. \repeatleft~O~jerum, jerum, jerum, o quae mutatio rerum~\repeatright\end{strophe}
+\begin{strophe}
+Allein das rechte Burschenherz kann nimmermehr erkalten; im Ernste wird, wie hier im Scherz, der rechte Sinn stets walten; die alte Schale nur ist fern, geblieben ist uns doch der Kern, \repeatleft~und den laßt
+fest uns halten!~\repeatleft 
+\end{strophe}
+\begin{strophe}
+Drum, Freunde! reichet euch die Hand, damit es sich erneue,
+der alten Freundschaft heilges Band, das alte Band der Treue. Klingt an und hebt die Gläser hoch, die alten Burschen leben noch, \repeatleft~noch lebt die alte Treue.~\repeatright
+\end{strophe}
+
+\end{lied}
+
+\end{liederbuch}


Property changes on: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuch.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.ly
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.ly	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.ly	2025-01-21 20:46:10 UTC (rev 73548)
@@ -0,0 +1,65 @@
+\version "2.18.2"
+
+systemhoehe = 10
+customvar = 40
+customratio = 2
+seitenhoehe = #(* systemhoehe customratio)
+\header{
+}
+
+ %#(* systemhoehe 1\pt))
+
+\paper{
+  annotate-spacing = ##f
+  indent=0\mm
+  short-indent = 0\mm
+  paper-width = 150\mm
+  %line-width=120\mm
+  oddFooterMarkup=##f
+  evenFooterMarkup=##f
+  oddHeaderMarkup=##f
+  evenHeaderMarkup = ##f
+  bookTitleMarkup = ##f
+  scoreTitleMarkup = ##f
+  print-page-number = ##f
+  left-margin = 0
+  right-margin = 0
+  top-margin = -5\pt
+  bottom-margin = 0
+  paper-height = 50\pt %#(* seitenhoehe 1\pt)
+  top-system-spacing.basic-distance = 15\pt
+  markup-system-spacing.basic-distance = 0\pt
+  top-markup-spacing.basic-distance = 0\pt
+  system-system-spacing.basic-distance = 200\pt
+}
+
+\score{
+  \layout {
+  \context {
+    \Score
+    \remove "Bar_number_engraver"
+%
+%   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%   % Here you adjust the distance between the notes,   %
+%   % how many lines you need. If your song syllables   %
+%   % are too dense, you need to increase the distance. %
+%   % You should increase/decrease it by factor 2.      %
+%   % Currently it is 1/60. Next up is 1/120, next down %
+%   % 1/30. From there you can do a fine adjustment.    %
+%   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+    \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/60)
+  }
+  #(define after-title-space (* 2 cm))
+  }
+%
+%%%%%%%%%%%%%%%%%%
+% Music is here: %
+%%%%%%%%%%%%%%%%%%
+%
+  \new Staff <<
+    \new Voice{
+      \relative c'{ \partial 4 c8 e | g4 g g8[ a] f d c4 e e r8 e d4. e8 f4. g8 f4 e r g g4. e8 c'4. b8 b4 a a a g4. a8 g[ e] f d d4 c r e4 d g g b b8([ a c)] b a4 d, d a' \bar"" \break a c c8([ b d]) c b([ a g)] \override BreathingSign.text = \markup { \musicglyph #"scripts.rvarcomma" } \breathe f8 \repeat volta 2 {g4. e8 c'4. b8 b a a4 r a g4. a8[ g] e f d d4 c r <<{s} \\ { r8 f}>>
+      }
+    }>>
+}

Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf	2025-01-21 20:46:10 UTC (rev 73548)

Property changes on: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/CVLB80-OhAlteBurschenherrlichkeit.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.ly
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.ly	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.ly	2025-01-21 20:46:10 UTC (rev 73548)
@@ -0,0 +1,66 @@
+\version "2.18.2"
+
+systemhoehe = 10
+customvar = 40
+customratio = 2
+seitenhoehe = #(* systemhoehe customratio)
+\header{
+}
+
+\paper{
+  annotate-spacing = ##f
+  indent=0\mm
+  short-indent = 0\mm
+  paper-width = 150\mm
+  %line-width=120\mm
+  oddFooterMarkup=##f
+  evenFooterMarkup=##f
+  oddHeaderMarkup=##f
+  evenHeaderMarkup = ##f
+  bookTitleMarkup = ##f
+  scoreTitleMarkup = ##f
+  print-page-number = ##f
+  left-margin = 0
+  right-margin = 0
+  top-margin = -5\pt
+  bottom-margin = 0
+  paper-height = 50\pt %#(* seitenhoehe 1\pt)
+  top-system-spacing.basic-distance = 15\pt
+  markup-system-spacing.basic-distance = 0\pt
+  top-markup-spacing.basic-distance = 0\pt
+  system-system-spacing.basic-distance = 200\pt
+}
+
+\score{
+  \layout {
+  \context {
+    \Score
+    \remove "Bar_number_engraver"
+%
+%   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%   % Here you adjust the distance between the notes,   %
+%   % how many lines you need. If your song syllables   %
+%   % are too dense, you need to increase the distance. %
+%   % You should increase/decrease it by factor 2.      %
+%   % Currently it is 1/60. Next up is 1/120, next down %
+%   % 1/30. From there you can do a fine adjustment.    %
+%   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+    \override SpacingSpanner.base-shortest-duration = #(ly:make-moment 1/50)
+  }
+  #(define after-title-space (* 2 cm))
+  }
+%
+%%%%%%%%%%%%%%%%%%
+% Music is here: %
+%%%%%%%%%%%%%%%%%%
+%
+  \new Staff <<
+    \new Voice{
+      \relative c''{ g4 e4 e2 | f4 d4 d2 | c4 d4 e4 f4 | g4 g4 g2 |
+               g4 e4 e2 | f4 d4 d2 | c4 e4 g4 g4 | c,1 |
+               d4 d4 d4 d4 | d4 e4 f2 | e4 e4 e4 e4 | e4 f4 g2 |
+                g4 e4 e2| f4 d4 d2| c4 e4 g4 g4 | c,1 \bar "|."
+      }
+    }>>
+}

Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.pdf	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.pdf	2025-01-21 20:46:10 UTC (rev 73548)

Property changes on: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.pdf	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.pdf	2025-01-21 20:46:10 UTC (rev 73548)

Property changes on: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.tex	2025-01-21 20:46:10 UTC (rev 73548)
@@ -0,0 +1,74 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                   %
+%      Made by Gabriel Ruprecht     %
+%                                   %
+% This work is published under the  %
+% LaTeX project public license 1.3  %
+%                                   %
+%       Package version 1.1.0       %
+%            2025-01-20             %
+%                                   %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%\documentclass[a5paper, 11pt]{scrartcl}
+\documentclass[a5paper, 11pt]{article}
+\usepackage[ngerman]{babel}
+\usepackage[utf8]{inputenc}
+\usepackage{graphicx}
+\usepackage{lipsum}
+\usepackage{scrlayer-scrpage}
+\usepackage{liederbuch}
+
+\usepackage{TestLiederbuch}
+
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+% If compilation with pdfLaTeX fails, try LuaLaTeX %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+
+%%% This is default %%%
+%\pageBreakAllowedtrue
+%%% but you can use also this %%%
+%\pageBreakAllowedtrue
+%%% try uncommenting the second one and see, what happens in the strophes %%%
+
+%%% This is a nice head %%%
+\LBHead{%
+{\Large \textbf{\print{title}}}\hfill\mbox{}\vspace*{5pt}\\
+\makebox[32pt]{Musik:\hfill} \print{composer} \\\makebox[32pt]{Text:\hfill} \print{lyricist}\vspace*{3pt}
+
+}
+
+%%% This is an okay foot. The text will be always on the left due to the hfill. %%%
+\LBFoot{Herausgabedatum: \print{date}\hfill\mbox{}}
+
+%%% You can change these throughout the document however you like %%%
+\setSpaceBeforeStropheValue{15pt plus 5pt}
+\setSpaceAfterStropheValue{0pt plus 5pt}
+\setSpaceBeforeHeadValue{15pt plus 10pt minus 5pt}
+\setSpaceBeforeFootValue{15pt plus 10pt minus 5pt}
+
+\listofsongsstyle{simple with number}
+
+\begin{document}
+
+\LBsong{TestLiederbuch}{1}{nt}
+
+\LBsong{TestLiederbuch}{1}{t}
+
+
+\section{new section}
+\lipsum[1]
+\begin{center}
+\LBsong{TestLiederbuch}{2}{nt}
+\end{center}
+\lipsum[1]
+
+%%% If you delete the '%' at the beginnng of the next line, you can fix the meta data: %%%
+%\tweakMetadata{t}{TestLiederbuch}{3}{source = Aschenbecher & title = Oh alte Wurstverkäuferherrlichkeit & composer = This doesn't make sense & unusedTag = we don't need that & writer = Now all tags are filled}
+
+\LBsong{TestLiederbuch}{3}{t}
+
+Text zum Testen \LBsong{TestLiederbuch}{80}{nt}
+
+\listofsongs
+
+\end{document}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/liederbuch-demo-projekt.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.pdf
===================================================================
(Binary files differ)

Index: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.pdf
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.pdf	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.pdf	2025-01-21 20:46:10 UTC (rev 73548)

Property changes on: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.pdf
___________________________________________________________________
Added: svn:mime-type
## -0,0 +1 ##
+application/pdf
\ No newline at end of property
Added: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.tex	                        (rev 0)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.tex	2025-01-21 20:46:10 UTC (rev 73548)
@@ -0,0 +1,26 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                   %
+%      Made by Gabriel Ruprecht     %
+%                                   %
+% This work is published under the  %
+% LaTeX project public license 1.3  %
+%                                   %
+%       Package version 1.1.0       %
+%            2025-01-20             %
+%                                   %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\documentclass[a5paper, 11pt]{scrartcl}
+\usepackage[ngerman]{babel}
+\usepackage[utf8]{inputenc}
+\usepackage{printLiederbuch}
+\usepackage{TestLiederbuch}
+
+\begin{document}
+
+\tableofcontents
+
+\printLiederbuch{TestLiederbuch}
+
+\listofsongs
+
+\end{document}
\ No newline at end of file


Property changes on: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-demo-project/printTestLiederbuch.tex
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-documentation.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-documentation.tex
===================================================================
--- trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-documentation.tex	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/doc/latex/liederbuch/liederbuch-documentation.tex	2025-01-21 20:46:10 UTC (rev 73548)
@@ -1,3 +1,14 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                   %
+%      Made by Gabriel Ruprecht     %
+%                                   %
+% This work is published under the  %
+% LaTeX project public license 1.3  %
+%                                   %
+%       Package version 1.1.0       %
+%            2025-01-20             %
+%                                   %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 \documentclass[12pt,a4paper]{scrreprt}
 \usepackage[utf8]{inputenc}
 \usepackage[english]{babel}
@@ -53,9 +64,9 @@
 \vfill\mbox{}
 \vfill\mbox{}
 \vfill\mbox{}
-\fbox{\includegraphics[height=0.42\paperheight , page=1]{DemoProjekt/DemoProjekt}}
+\fbox{\includegraphics[height=0.42\paperheight , page=1]{liederbuch-demo-project/liederbuch-demo-project}}
 \vskip 40pt\relax
-Version 1.0
+Version 1.1.0
 \mbox{}\vskip -80pt\relax
 \mbox{}
 \end{center}
@@ -75,9 +86,7 @@
 \label{Introduction}
 The Liederbuch-Package originated in the search for a standardized, simple and fast way, to produce small songbooks for my fraternity\footnote{It is a German fraternity and therefore quite different from american ones.}. The idea was to provide a few commands to make a songbook. It should also include some designs and be easily usable by \mbox{non-\TeX -safe} people.
 
-It became very clear during the project, that it would be usefull to divide this into several parts: Mainly the Liederbuch-Package, the Liederheft-Package and the Fill-Pages-Package. Later the Real-Page-Package package came in addition. The first one provides commands and designs referring the songs, the second one provides commands and desings referring the songbook. Therefore the Liederbuch-Package can be used as well i.e. in a book about the history of folk songs. The Fill-Pages-Package and the Real-Page-Package become their own entity in CTAN (at least, that's the plan).
-
-\newpage
+%\newpage
 The sample on the title page uses just the following commands:
 \begin{lstlisting}[breaklines,numbers=left]
 \documentclass[a5paper, 11pt]{scrartcl}
@@ -110,11 +119,11 @@
 
 As you see, inside begin-end-document, there is only one line, which inserts the whole song of the songbook. The previous statements are just for the appearance of all songs. To access the songbook, here \glqq TestLiederbuch\grqq , you have to include it in the first place, via \verb+\usepackage{ }+ with the songbook name.
 
-\newlength\tempheight
-\tempheight=\textheight
-\textheight=1.05\textheight
-\newpage
-\textheight=\tempheight
+%\newlength\tempheight
+%\tempheight=\textheight
+%\textheight=1.05\textheight
+%\newpage
+%\textheight=\tempheight
 
 The songbook looks like the following. The \verb+\ns+, stands for new syllable (German: neue Silbe). The star just adds a dash between the syllables:
 \begin{lstlisting}[breaklines,numbers=left]
@@ -167,7 +176,7 @@
 
 
 
-\newpage
+%\newpage
 \section{The Different Parts of the Liederbuch-Package}
 The following subsections are short descriptions of the packages. The full description is provided in each corresponding chapter.
 \subsection{Liederbuch} 
@@ -196,7 +205,7 @@
 \section{Basics}
 On figure \vref{abb:LiBa1} you see the layout of each song. The head, notes, songtext and foot is grouped in boxes. These boxes are vertically aligned according to the spaces which can include \verb+plus minus+. Example:
 \begin{lstlisting}[numbers=none]
-   \setSpaceBeforeHead{30pt plus 1fil minus 2pt}
+    \setSpaceBeforeHead{30pt plus 1fil minus 2pt}
 \end{lstlisting}
 About the songtext and its alignment, we get into detail later.
 
@@ -447,27 +456,27 @@
 
 If you have a songbook made by someone else, you are fine. If you haven't, you need to build it yourself. The preamble of the sty-file contains the following lines:
 \begin{lstlisting}
-   \ProvidesPackage{name of the songbook}
-   \RequirePackage{liederbuch}
+    \ProvidesPackage{name of the songbook}
+    \RequirePackage{liederbuch}
 \end{lstlisting}
 You may add some of your own packages you want to use in the songbook. For example if you typeset the scores with musixtex, you can add this package. If you want to use tikz instead, you are free to go. Most likely, you will use the graphicx-package, as using pdf-snippets is the imho best way, to use this package.
 
 To start a songbook, you must first write these lines:
 \begin{lstlisting}[numbers=left,firstnumber=5]
-   \begin{liederbuch}[<meta data>]{<name of the songbook>}
-       % the songs (Lieder-environments) go here
-       [...]
-       [...]
+    \begin{liederbuch}[<meta data>]{<name of the songbook>}
+        % the songs (Lieder-environments) go here
+        [...]
+        [...]
 \end{lstlisting}\vskip -13pt\relax
 \begin{lstlisting}[numbers=left,firstnumber=78]
-       [...]
-   \end{liederbuch}
+        [...]
+    \end{liederbuch}
 \end{lstlisting}
 This must contain all songs. This environment is provided by \textit{liederbuch}. What the meta data does, we will come to at a later point. After you created a songbook, you can create songs inside it. Every song number can be included multiple times in different variants. If two songs have the same number and the same variant tag, the later overwrites the first:
 \begin{lstlisting}[numbers=left,firstnumber=14]
-   \begin{lied}[<meta data>]{<variant>}{<song number>}
-       <the song content>
-   \end{lied}
+    \begin{lied}[<meta data>]{<variant>}{<song number>}
+        <the song content>
+    \end{lied}
 \end{lstlisting}
 The song number identifies the songs. If you have to different kinds of song number 123 (i.e. piano score and choir score), you can make two different variants. i.e. \verb+ps+ and \verb+cs+. The way, you name the variants, is up to you. At can be anything beside the \verb+\empty+-command-sequence.
 
@@ -480,22 +489,22 @@
 
 \noindent Assuming you have the following songbook created:
 \begin{lstlisting}[numbers=left,firstnumber=30]
-   \begin{liederbuch}{testSongbook}
-   \begin{lied}[%
-     meta data=this is just a test &%
-     otherData = it really is]%
-   {var1}{144000}
-   No notes and text yet.
-   \end{lied}
-   \end{liederbuch}
+    \begin{liederbuch}{testSongbook}
+    \begin{lied}[%
+        meta data=this is just a test &%
+        otherData = it really is]%
+    {var1}{144000}
+    No notes and text yet.
+    \end{lied}
+    \end{liederbuch}
 \end{lstlisting}
 If you call the song with
 \begin{lstlisting}[numbers=left,firstnumber=72]
-   \LBsong{testSongbook}{144000}{var1}
+    \LBsong{testSongbook}{144000}{var1}
 \end{lstlisting}
 the ouput will be
 \begin{lstlisting}[numbers=none]
-   No notes and text yet.
+    No notes and text yet.
 \end{lstlisting}
 The meta data elements are not used yet, but can be used later.\vspace*{-2ex}
 
@@ -510,42 +519,44 @@
 
 You start of course with the Liederbuch environment first:
 \begin{lstlisting}[firstnumber=7]
-   \begin{liederbuch}[%
-   songbook=Old Irish Folk Songs &%
-   author = Travis O'Connor]
-   
-   \begin{lied}[
-   title = What shall we do with a drunken saylor &
-   composer = Traditional &
-   lyricist = Probably a drunken saylor]
-   %The notenzeile command goes here
-   \end{lied}
-   
-   \begin{lied}[
-   title = My lad got beaten up in the pub &
-   composer = Johnny O'Neeye %
-   lyricist = Jimmy Jailedup
-   ]
-   %The notenzeile commands goes here
-   \end{lied}
-   
-   \end{liederbuch}
+    \begin{liederbuch}[%
+        songbook=Old Irish Folk Songs &%
+        author = Travis O'Connor
+    ]
+    
+    \begin{lied}[
+        title = What shall we do with a drunken saylor &
+        composer = Traditional &
+        lyricist = Probably a drunken saylor
+    ]{nt}{23}
+        %The notenzeile command goes here
+    \end{lied}
+    
+    \begin{lied}[
+        title = My lad got beaten up in the pub &
+        composer = Johnny O'Neeye %
+        lyricist = Jimmy Jailedup
+    ]{nt}{24}
+        %The notenzeile commands goes here
+    \end{lied}
+    
+    \end{liederbuch}
 \end{lstlisting}
 
 For every combination of notes and text, you use one notenzeile command. If your song score has 5 lines of notes, you need the notenzeile command 5 times, if it is 3 lines, you need it 3 times. The notenzeile command is smart enough to show several strophes of text for one line, if needed:
 \begin{lstlisting}[firstnumber=15]
-   \notenzeile[linewidth of the line | default:\linewidth]
-   {the part with the notes from the score}%
-   {the text of strophe 1}%
-   [the text of strophe 2]%
-   [the text of strophe 3]%
-   [the text of strophe 4]%
-   [the text of strophe 5]%
-   [the text of strophe 6]%
-   \notenzeile{\includegraphics[width=\linewidth,page=2]{somePath}}%
-   {\nspace{5} This \ns is \ns the \ns line \ns two \nspace{3}}
-   \notenzeile{\includegraphics[width=\linewidth,page=3]{somePath}}%
-   {\nspace{3em} and \ns three \ns of \ns the \ns do \ns* cu \ns* ment \ns of do cu ments\nspace{7pt}}
+    \notenzeile[linewidth of the line | default:\linewidth]
+    {the part with the notes from the score}%
+    {the text of strophe 1}%
+    [the text of strophe 2]%
+    [the text of strophe 3]%
+    [the text of strophe 4]%
+    [the text of strophe 5]%
+    [the text of strophe 6]%
+    \notenzeile{\includegraphics[width=\linewidth,page=2]{somePath}}%
+    {\nspace{5} This \ns is \ns the \ns line \ns two \nspace{3}}
+    \notenzeile{\includegraphics[width=\linewidth,page=3]{somePath}}%
+    {\nspace{3em} and \ns three \ns of \ns the \ns do \ns* cu \ns* ment \ns of do cu ments\nspace{7pt}}
 \end{lstlisting}
 
 As you see, the strophe numbers 2 and above are optional arguments. Standard case should be one line of text for one line of notes, but you can add more. If you need more than 6 strophes below one line of notes, you do something, which you shouldn't do. If you want more, you can hack the source code.
@@ -552,20 +563,20 @@
 
 Inside of the notenzeile command, there are several commands available:
 \begin{lstlisting}[numbers=none]
-   \songLyrics{}
-   % This in an internal command, but you can use it.  It creates a makebox, with the \ns, \ns* and \nspace commands available inside.
-   
-   \ns[space correction]
-   % This divides two words. You can optionally add an offset to the command, which shifts the next syllable (positive = right, negative = left). You can use standard length units. If you don't use any unit, percent-linewidth is used.
-   
-   \ns*[space correction]
-   % It is exactly like \ns, but it adds a dash in between. It is meant to divide syllables of one word.
-   
-   \nspace{length}
-   % This does exactly the same as hspace*, but this command also accepts no unit (just a number without an unit), which is interpreted as percent-linewidth.
-   
-   \multiline{0.5\linewidth}{text for strophe 1}{text for str 2}[str. 3][4][5][6]
-   % This is usefull, if your song switches to refrain within one line or only some section of one song line has two text lines. It creates several stacked lines within one line.
+    \songLyrics{}
+    % This in an internal command, but you can use it.  It creates a makebox, with the \ns, \ns* and \nspace commands available inside.
+    
+    \ns[space correction]
+    % This divides two words. You can optionally add an offset to the command, which shifts the next syllable (positive = right, negative = left). You can use standard length units. If you don't use any unit, percent-linewidth is used.
+    
+    \ns*[space correction]
+    % It is exactly like \ns, but it adds a dash in between. It is meant to divide syllables of one word.
+    
+    \nspace{length}
+    % This does exactly the same as hspace*, but this command also accepts no unit (just a number without an unit), which is interpreted as percent-linewidth.
+    
+    \multiline{0.5\linewidth}{text for strophe 1}{text for str 2}[str. 3][4][5][6]
+    % This is usefull, if your song switches to refrain within one line or only some section of one song line has two text lines. It creates several stacked lines within one line.
 \end{lstlisting}
 
 So far, this creates all the notes and text together. Normally, songs are typeset, that only the first strophe is below the notes, the other strophes are printed as text blocks.
@@ -572,9 +583,9 @@
 
 These text blocks are built by the strophe environment:
 \begin{lstlisting}[numbers=none]
-   \begin{strophe}[strophe number]
-   Some text in any format.
-   \end{strophe}
+    \begin{strophe}[strophe number]
+        Some text in any format.
+    \end{strophe}
 \end{lstlisting}
 Normally, the strophe numbers are automatically counted up for every use of the strophe environment. So, the first time, you use this environment in each song, you should override this with the optional parameter strophe number. I.e. if the first usage is number 2, then you write \verb+\begin{strophe}[2]+. The next strophe will then be automatically~3.
 
@@ -582,12 +593,12 @@
 \label{LiUsUs}
 Using a songbook is pretty easy. You must include the songbooks with
 \begin{lstlisting}[numbers=none]
-   \usepackage{nameOfSongbook}
+    \usepackage{nameOfSongbook}
 \end{lstlisting}
 
 and call the desired song with
 \begin{lstlisting}[numbers=none]
-   \LBsong{songbook}{number}{variant}
+    \LBsong{songbook}{number}{variant}
 \end{lstlisting}
 Note: The name of the package you use needn't be the same name of the songbook. You can define the songbook \verb+abc+ inside a sty-file called \verb+alphabet+. But it is highly discouraged.
 
@@ -596,13 +607,143 @@
 
 If some meta data is incorrect and you can not or shouldn't change the source songbook, you can edit the meta data with the 
 \begin{lstlisting}[numbers=none]
-   \tweakMetaData{songbook}{song number}{song variant}{meta data element}
+    \tweakMetaData{songbook}{song number}{song variant}{meta data element}
 \end{lstlisting}
 command. It just overwrites the meta data element, that was created for that specific song at load time. The principle is the same as in \verb+\GFM at LB@unpackage+.
 
+%\vskip 20pt plus 20pt\relax
+%\newpage
+\subsection{List of Songs (toc)}
+You can create a list of songs with 
+\begin{lstlisting}[numbers=none]
+    \listofsongs
+\end{lstlisting}
+
 \newpage
+It has by standard the same format as \verb+\listoffigures+. The style can be selected by using
+\begin{lstlisting}[numbers=none]
+    \listofsongsstyle{<style>}
+\end{lstlisting}
+
+The available styles are:
+\begin{itemize}
+\item ''simple'' (default)\\
+\verb+<song title> ...[...]...  <page number>+
+\item ''simple with number''\\
+\verb+<song number in the songbook>   <song title> ...[...]...  <page number>+
+\item ''simple with document number''\\
+\verb+<song number in the document>   <song title> ...[...]...  <page number>+
+\item ''twolines''
+\item ''semitwolines''
+\end{itemize}
+
+The first three work. The other two don't work yet.
+
+
+\subsection{Refs, References and Hyperref}
+Hyperref is supported and should work out of the box, if loaded. Each song can be referenced by 
+\begin{lstlisting}[numbers=none]
+    \pageref{LB_lied_<songbook>_<song number>_<variant>}
+\end{lstlisting}
+
+If you include a song more than once, each duplicate must have a suffix (a for first duplicate, b for second, c for third,...):
+\begin{lstlisting}[numbers=none]
+    \pageref{LB_lied_<songbook>_<song number>_<variant>_<letter>}
+\end{lstlisting}
+Note: The first occurence has no letter suffix, the second occurence start with suffix ''\_a''.
+
+\subsection{Babel}
+The Babel package is supported. The following terms are supported and can be used in the header and footer (see section \nameref{LpUcCa}). The supported terms are:
+\begin{itemize}
+\item[] \verb+\listofsongsname+
+\item[] \verb+\LBsongComposer+
+\item[] \verb+\LBsongLyricist+
+\item[] \verb+\LBsongEditor+
+\item[] \verb+\LBsongYear+
+\item[] \verb+\LBsongCopyright+
+\item[] \verb+\LBsongEditorialOffice+
+\item[] \verb+\LBsongEditon+
+\item[] \verb+\LBsongPrint+
+\end{itemize}
+Each of these terms will be displayed in the selected language. If the alphabet uses upper-lower-case, the first letter is always a capital letter. Except for German of course, which has their own system and English, which uses ''This Kind of Unique Way''. If you find a translation mistake (by ChatGPT, though I checked it) or miss a language, please open a bug report (see
+
+The supported languages are:
+\begin{multicols}{3}
+acadian\\
+afrikaans\\
+albanian\\
+american\\
+australian\\
+austrian\\
+bahasa\\
+bahasai\\
+bahasam\\
+basque\\
+brazil\\
+brazilian\\
+breton\\
+british\\
+bulgarian\\
+canadian\\
+canadien\\
+catalan\\
+croatian\\
+czech\\
+danish\\
+dutch\\
+english\\
+esperanto\\
+estonian\\
+finnish\\
+francais\\
+french\\
+frenchb\\
+galician\\
+german\\
+germanb\\
+greek\\
+hebrew\\
+hungarian\\
+icelandic\\
+indon\\
+indonesian\\
+interlingua\\
+irish\\
+italian\\
+latin\\
+lowersorbian\\
+magyar\\
+malay\\
+meyalu\\
+naustrian\\
+newzealand\\
+ngerman\\
+norsk\\
+nynorsk\\
+polish\\
+polutonikogreek\\
+portuges\\
+portuguese\\
+romanian\\
+russian\\
+samin\\
+scottish\\
+serbian\\
+slovak\\
+slovene\\
+spanish\\
+swedish\\
+turkish\\
+ukrainian\\
+uppersorbian\\
+welsh\\
+UKenglish\\
+USenglish
+\end{multicols}
+
+\newpage
 \subsection{Creating a Theme}
-
+\label{LpUcCa}
 The appearance of the songs consist mainly of three things:
 \begin{itemize}
 \item Header
@@ -613,35 +754,39 @@
 
 The header and footer can be edited via
 \begin{lstlisting}[numbers=none]
-   \LBHead{Definition}
+    \LBHead{Definition}
 \end{lstlisting}
 and
 \begin{lstlisting}[numbers=none]
-   \LBFoot{Definition}
+    \LBFoot{Definition}
 \end{lstlisting}
 
 Here you can use the meta data-values given in the song. As you might remember, the songs are defined as i.e.
 
 \begin{lstlisting}
-   \begin{liederbuch}[
-   titleOfLargerWork = Test-Liederbuch &
-   date = 2017 &
-   seriesTitle = Demoprojekt
-   ]{TestLiederbuch}
-   
-   \begin{lied}[title=Hänschen klein & lyricist=Volkslied \& Überliefert & composer = Volkslied]{nt}{1}
-   ... something ...
-   \end{lied}
-   \end{liederbuch}
+    \begin{liederbuch}[
+        titleOfLargerWork = Test-Liederbuch &
+        date = 2017 &
+        seriesTitle = Demoprojekt
+    ]{TestLiederbuch}
+    
+    \begin{lied}[
+        title=Hänschen klein &
+        lyricist=Volkslied \& Überliefert &
+        composer = Volkslied
+    ]{nt}{1}
+        ... something ...
+    \end{lied}
+    \end{liederbuch}
 \end{lstlisting}
 
 An example header and footer would look like this:
 \label{LiUsCrEx}
 \begin{lstlisting}
-   \LBHead{\Large\print{title}\\
-   \normalsize Taken from \print{titleOfLargerWork}\hspace{30pt}\print{composer}}
-   
-   \LBFoot{\print{date}\hfill\print{seriesTitle}}
+    \LBHead{\Large\print{title}\\
+    \normalsize Taken from \print{titleOfLargerWork}\hspace{30pt}\print{composer}}
+    
+    \LBFoot{\print{date}\hfill\print{seriesTitle}}
 \end{lstlisting}
 
 As you see, the print-command prints any meta data, which had been defined before. If it is undefined, the print-command prints nothing. This example is of course not the peak of human art work, but it showcases the concept. It is possible to include almost anything (no limitations known yet). For the naming of the meta data refer to section \ref{LiUsMe} \vnameref{LiUsMe}.
@@ -648,57 +793,71 @@
 
 For adjusting the spaces, you can use the following commands. They work with \verb+\vskips+ and can optionally take \verb+plus+ and \verb+minus+. These are the commands to edit the spaces with some example values:
 \begin{lstlisting}[numbers=none]
-   \setSpaceBeforeHeadValue{3pt plus 0pt minus 1.5pt}
-   \setSpaceAfterHeadValue{-1pt plus 4pt}
-   \setSpaceBeforeNotesValue{2pt minus 1pt}
-   \setSpaceAfterNotesValue{4pt}
-   \setSpaceBeforeStropheValue{3em plus 1pt minus 0.2in}
-   \setSpaceAfterStropheValue{0pt}
-   \setSpaceBeforeSongLyricsValue{0pt}
-   \setSpaceAfterSongLyricsValue{0pt}
-   \setSpaceBeforeFootValue{0pt}
-   \setSpaceAfterFootValue{0pt}
+    \setSpaceBeforeHeadValue{3pt plus 0pt minus 1.5pt}
+    \setSpaceAfterHeadValue{-1pt plus 4pt}
+    \setSpaceBeforeNotesValue{2pt minus 1pt}
+    \setSpaceAfterNotesValue{4pt}
+    \setSpaceBeforeStropheValue{3em plus 1pt minus 0.2in}
+    \setSpaceAfterStropheValue{0pt}
+    \setSpaceBeforeSongLyricsValue{0pt}
+    \setSpaceAfterSongLyricsValue{0pt}
+    \setSpaceBeforeFootValue{0pt}
+    \setSpaceAfterFootValue{0pt}
 \end{lstlisting}
 
 \subsection{Using printliederbuch}
 If you want to have a catalogue of all your songs in a songbook, you can use \verb+printliederbuch+. You just need a simple document like this:
 \begin{lstlisting}
-   \documentclass[a5paper, 11pt]{scrartcl}
-   \usepackage[ngerman]{babel}
-   \usepackage[utf8]{inputenc}
-   \usepackage{printliederbuch}
-   \usepackage{TestLiederbuch}
-   
-   \begin{document}
-   
-   \printLiederbuch{TestLiederbuch}
-   
-   \end{document}
+    \documentclass[a5paper, 11pt]{scrartcl}
+    \usepackage[ngerman]{babel}
+    \usepackage[utf8]{inputenc}
+    \usepackage{printliederbuch}
+    \usepackage{TestLiederbuch}
+    \usepackage{AnotherTestLiederbuch}
+    
+    \begin{document}
+    
+    \tableofcontents
+    
+    \printLiederbuch{TestLB}
+    \printLiederbuch{AnotherTestLB}
+    
+    \listofsongs
+    
+    \end{document}
 \end{lstlisting}
-You need a \verb+documentclass+ of your liking, add some packages of your liking and then you need first, the printliederbuch package and second, the songbook, you want to have a catalogue of. The order is important. Your document needs only one command, the \verb+\printLiederbuch+ command. 
+You need a \verb+documentclass+ of your liking, add some packages of your liking and then you need first, the printliederbuch package and second, the songbook, you want to have a catalogue of. The order is important. Your document needs only one command, the \verb+\printLiederbuch+ command. The argument of \verb+\printLiederbuch+ is not the \verb+\usepackage+ name, but the name, defined in \verb+\begin{liederbuch}{LBname}+.
 
-\newpage
-\subsection{Tips and tricks}
+Currently, the table of contents only shows the song number and the variant, while the list of songs show the name only.
+
+%\newpage
+\subsection{Tips and Tricks}
 \subsubsection{First the outer spacing, then the syllable spacing}
 Start by doing the outer spacing first. If these are your lyrics
 \begin{lstlisting}[numbers=none]
-{Hänschen klein ging allein in die weite}
+    {Hänschen klein ging allein in die weite}
 \end{lstlisting}
 you start by adding the outer space and separating all syllables
 \begin{lstlisting}[numbers=none]
-{\nspace{7} Häns \ns* chen \ns klein \ns ging \ns all \ns* ein \ns in \ns die \ns wei \ns* te \nspace{4}}
+    {\nspace{5} \ns Häns \ns* chen \ns klein \ns ging \ns all \ns* ein \ns in \ns die \ns wei \ns* te \ns \nspace{2}}
 \end{lstlisting}
-Once the first and last syllable looks good, you can proceed with the adjustment of the space between the syllable  (see next sections).
+Once the first and last syllable looks good, you can proceed with the adjustment of the space between the syllable  (see next sections). If you don't use a \verb+\ns+ after/before \verb+\nspace{x}+, the lyrics are easier to align, but they are less robust against different linelength. If your song shall work well in A4 and A5 either, consider using it.
 
 \subsubsection{Replacing $\backslash ns*$ with $\backslash ns - \backslash ns$}
-If \verb*+ \ns* + separates two long syllables like ''Schne-cken'', \verb*+ \ns* + will to its job. But if the syllables are short like ''O-lé'' or the notes are long, you better replace it with \verb*+ \ns - \ns +. If this is a little bit too long, you can use \verb*+\ns -\ns+ instead.
+If \verb*+ \ns* + separates two long syllables like ''Schne-cken'', \verb*+ \ns* + will to its job. But if the syllables are short like ''O-lé'' or the notes are long, you better replace it with \verb*+ \ns - \ns +. If this is a little bit too long, you can use \verb*+\ns -\ns+ instead (no spaces).
 
 \subsubsection{Double $\backslash ns$ and $\backslash nspace\{ x\}$}
 Normally in songs, note lengths tend to be only two different lengths per line. i.e. if your shortest length is a quarter note, the second length is a half note. If the shortest is an eighth, the second one is a quarter. It is rather rare, that a third length occurs. Maybe a dotted note. Most notation software makes the space after a longer note a little bit longer.
 
-Best practice has been to make one \verb+\ns+ after each shortest note duration and two \verb+\ns+ after. For longer notes it is better to use a \verb+\nspace{x}+ inline (with x=3 for example).
+Best practice has been to make one \verb+\ns+ after each shortest note duration and two \verb+\ns+ after the longer notes. For even longer notes it is better to use a \verb+\nspace{x}+ inline (with x=3 for example). i.e.:
+\begin{lstlisting}
+\nspace{7} Häns \ns* chen\ns klein \nspace{2}\ns ist \ns weg, \ns \ns Kro \ns* ko \ns* dil \nspace{4}
+\end{lstlisting}
+This example is complete fictional and doesn't occur in any real song. 
 
-\includegraphics[width=\linewidth,page=1]{DemoProjekt/TestLiederbuchSnippets/haenschenKlein}
+\newpage
+\includegraphics[width=\linewidth,page=1]{liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein}
+
 gets this song text:
 \begin{lstlisting}[numbers=none]
 \nspace{7} Häns \ns* chen\ns klein \ns ging \ns all \ns* ein \ns \nspace{4} in \ns \ns die \ns \ns wei \ns* te \nspace{4}
@@ -706,12 +865,12 @@
 7\% linewidth space on the left, 4\% on the right. The syllable ''-chen'' is very long. Therefore, a second \verb+\ns+ isn't needed, though the corresponding note is a half note. ''in'' and ''die'' are very short syllables, a second \verb+\ns+ does the trick. After ''\verb+\ns*+ ein'' two \verb+\ns+ isn't enough, therefore a \verb+\nspace{4}+ does the trick.
 
 \subsubsection{Omitting a space here and there}
-You might have noticed in the previous example, that after ''-chen'' there is no space. Normally it is \verb*+ \ns + and normally it should be. But in this case, the syllable is already pretty long and we need to get rid of a bit of space. Therefore, the space before is omitted and it is \verb*+\ns + instead. You can only omit the space before \verb+\ns+ not after.
+You might have noticed in the previous example, that after ''-chen'' there is no space. Normally it is \verb*+ \ns + and normally it should be. But in this case, the syllable is already pretty long and we need to get rid of a bit of space. Therefore, the space before is omitted and it is \verb*+\ns + instead. You can only omit the space before \verb+\ns+ not after, as the space after is eaten by the compiler anyway.
 
 \subsubsection{Hard spaces (\char`~ ) for short syllables}
 In die following example
 
-\includegraphics[width=\linewidth,page=3]{DemoProjekt/TestLiederbuchSnippets/haenschenKlein}
+\includegraphics[width=\linewidth,page=3]{liederbuch-demo-project/TestLiederbuchSnippets/haenschenKlein}
 the text is like this:
 \begin{lstlisting}[numbers=none]
 \nspace{6} ist \ns gar \ns wohl \ns* ge\ns -\ns mut. \nspace{6} Ab \ns* er~ \ns Mut \ns* ter \nspace{3.5}
@@ -1083,11 +1242,11 @@
 \label{LiHoBu}
 The first part contains only a some constants. Currently only the \verb+\repeatleft+ and \verb+\repeatright+, which contain the repeat sign meant to be used in strophes:
 \begin{lstlisting}[numbers=none]
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-   %%% Special music characters %%%
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-   
-   [...]
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    %%% Special music characters %%%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    
+    [...]
 	
     
 \end{lstlisting}
@@ -1094,19 +1253,19 @@
 
 Handling of meta data:
 \begin{lstlisting}[numbers=none]
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-   %%% Handling of the meta data %%%
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-   
-   \def\GFM at LB@unpackage...
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    %%% Handling of the meta data %%%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    
+    \def\GFM at LB@unpackage...
 \end{lstlisting}
 This command stores the meta data to command sequences. The meta data items can be given as an argument in the Lied environment. \verb+\GFM at LB@unpackage+ loops over the meta data argument of the \verb+Lied+- and \verb+Liederbuch+-environment. For every pair of variable name and value, \verb+\GFM at LB@unpackage+ creates a \LaTeX variable with the value content. Each meta data ist stored to a command sequence in the format:
 \begin{lstlisting}[numbers=none]
-   \GFM at LB@lied@<songbook>@<song variant>@<song number>@<meta data name>
+    \GFM at LB@lied@<songbook>@<song variant>@<song number>@<meta data name>
 \end{lstlisting}
 For the songbook ''Folksongs'', songnumber ''5'', variant ''choral'' and variable name ''composer'', the \LaTeX variable would look like this:
 \begin{lstlisting}[numbers=none]
-   \GFM at LB@lied at Folksongs@choral at 5@composer
+    \GFM at LB@lied at Folksongs@choral at 5@composer
 \end{lstlisting}
 It could expand to ''Frederic McCormick'' (assuming this is the composer). This mechanism is only internally relevant. To use this variable fine and easily, there is the \verb+\print{<variable name>}+ command (see farther down).
 
@@ -1114,29 +1273,29 @@
 
 If a song has wrong meta data, an entry is missing or any other reason, you can edit specific meta data entries. The better option is to edit the song book. But if this may not be possible for whatever reason, you can use this command:
 \begin{lstlisting}[numbers=none]
-   \tweakMetadata{<songbook>}{<song number>}{<variant>}{<meta data}
+    \tweakMetadata{<songbook>}{<song number>}{<variant>}{<meta data}
 \end{lstlisting}
 
 One of the most important core parts of the package is the arrangement of syllables below the notes:
 \begin{lstlisting}[numbers=none]
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-   %%% Environment and commands for        %%%
-   %%% notes + lyrics in native LaTeX font %%%
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-   [...Constants...]
-
-   \def\songLyrics[<length> default = \linewdith]{
-      [...]
-      \def\nspace[*]{<some length or number>}
-      \def\ns[*][<some length or number>]
-      [...]
-   }%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    %%% Environment and commands for        %%%
+    %%% notes + lyrics in native LaTeX font %%%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    [...Constants...]
+    
+    \def\songLyrics[<length> default = \linewdith]{
+        [...]
+        \def\nspace[*]{<some length or number>}
+        \def\ns[*][<some length or number>]
+        [...]
+    }%
 \end{lstlisting}
 \verb+\songLyrics+ creates a \verb+\makebox[<length>]{notes}+ with two commands inside: \verb+\ns[*]+ and \verb+\nspace[*]+. \verb+\nspace[*]+ behaves exactly the same as \verb+\hspace[*]+ with the option for starred command, but unlike \verb+\hspace+ it also accepts no dimension unit. If no unit is given, it is translated to percent \verb+\linewidth+. \verb+\ns+ behaves like \verb+\hfill+ and is able to shift the next sillable by an optional offset. The star inserts a dash between the sillables. i.e. \verb+\ns*[-3]+ separates two sillables with a dash in between und shifts the second sillable \verb+0.03\linewidth+ to the left:
 \begin{lstlisting}[numbers=none]
-   {See \ns here \ns the \ns be \ns* gin \ns* ning}
+    {See \ns here \ns the \ns be \ns* gin \ns* ning}
 \end{lstlisting}\vskip -8pt\relax
-\verb+   +\parbox{0.8\linewidth}{%
+\verb+     +\parbox{0.8\linewidth}{%
 \vskip -3pt\relax
 becomes
 \vskip 5pt\relax
@@ -1148,124 +1307,123 @@
 
 \verb+\notenzeile+ is a user command and combines the score image (notation) and the song lyrics. It takes two arguments. One graphic (the notes) and text below the notes. The text below simply calls \verb+\GFM at LB@songLyrics+. As there are songs, that have more than one strophe below the notes, up to 6 are optional. It is 6 times the same. To hold everything together, the whole \verb+\notenzeile+ is inside a minipage:
 \begin{lstlisting}[numbers=none]
-   \notenzeile{O{\linewidth} m m O{\empty} O{\empty} O{\empty} O{\empty} O{\empty}}{%
+    \notenzeile{O{\linewidth} m m O{\empty} O{\empty} O{\empty} O{\empty} O{\empty}}{%
 \end{lstlisting}
 
 \begin{lstlisting}[numbers=none, breaklines=false]
-   \multiline}{m m m O{\empty} O{\empty} O{\empty} O{\empty}}{%
+    \multiline}{m m m O{\empty} O{\empty} O{\empty} O{\empty}}{%
 \end{lstlisting}
 \verb+\multiline+ can fit more than one line into one line. It is used, if only a part of a line has more than one text line. It is basically a few \verb+\makebox+es stacked above each other inside a parbox.
 
 Force page break is a very usefull function and pretty simple. It defines a list of numbers, if the current stave line / strophe equals one of the numbers a page break is added:
 \begin{lstlisting}[numbers=none]
-   \forcePageBreakAfterStaveLine{<number>}[<n.>][<n.>][<n.>][<n.>][<n.>]
+    \forcePageBreakAfterStaveLine{<number>}[<n.>][<n.>][<n.>][<n.>][<n.>]
 \end{lstlisting}
 \begin{lstlisting}[numbers=none]
-   \forcePageBreakAfterStrophe{<number>}[<n.>][<n.>][<n.>][<n.>][<n.>]
+    \forcePageBreakAfterStrophe{<number>}[<n.>][<n.>][<n.>][<n.>][<n.>]
 \end{lstlisting}
 Up to 6 page breaks within one song are possible. That should be enough as it is highly unlikely, that a song spans over more than 6 pages. If it does, please open an issue and show me. I'm highly interested.
 
 Strophe is a simple environment that provides a numbering at the beginning based on a \verb+\stepcounter+. It groups mostly the spacing and holds the strophes together:
 \begin{lstlisting}[numbers=none]
-   \begin{strophe}[<set strophe number to x>]
-   This is the strophe text.
-   Sing sing sing.
-   Line breaks disappear.
-   I want to create an option for that.
-   \end{strophe}
+    \begin{strophe}[<set strophe number to x>]
+    This is the strophe text.
+    Sing sing sing.
+    Line breaks disappear.
+    I want to create an option for that.
+    \end{strophe}
 \end{lstlisting}
 
 The spacing constists of set-commands, stored values and the use commands (no prefix/suffix):
 \begin{lstlisting}[numbers=none]
-  %%%%%%%%%%%%%%%
-  %%% Spacing %%%
-  %%%%%%%%%%%%%%%
-
-  %%% Head
-  \def\setSpaceBeforeHeadValue#1{\def\spaceBeforeHeadValue{#1}}
-  \def\setSpaceAfterHeadValue#1{\def\spaceAfterHeadValue{#1}}
-
-  %%% Notes
-  \def\setSpaceBeforeNotesValue#1{\def\spaceBeforeNotesValue{#1}}
-  \def\setSpaceAfterNotesValue#1{\def\spaceAfterNotesValue{#1}}
-
-  %%% Strophes
-  \def\setSpaceBeforeStropheValue#1{\def\spaceBeforeStropheValue{#1}}
-  \def\setSpaceAfterStropheValue#1{\def\spaceAfterStropheValue{#1}}
-
-  %%% Song lyrics
-  \def\setSpaceBeforeSongLyricsValue#1{\def\spaceBeforeSongLyricsValue{#1}}
-  \def\setSpaceBetweenSongLyricsValue#1{\def\spaceBetweenSongLyricsValue{#1}}
-  \def\setSpaceAfterSongLyricsValue#1{\def\spaceAfterSongLyricsValue{#1}}
-
-  %%% Foot
-  \def\setSpaceBeforeFootValue#1{\def\spaceBeforeFootValue{#1}}
-  \def\setSpaceAfterFootValue#1{\def\spaceAfterFootValue{#1}}
-
-
+    %%%%%%%%%%%%%%%
+    %%% Spacing %%%
+    %%%%%%%%%%%%%%%
+    
+    %%% Head
+    \def\setSpaceBeforeHeadValue#1{\def\spaceBeforeHeadValue{#1}}
+    \def\setSpaceAfterHeadValue#1{\def\spaceAfterHeadValue{#1}}
+    
+    %%% Notes
+    \def\setSpaceBeforeNotesValue#1{\def\spaceBeforeNotesValue{#1}}
+    \def\setSpaceAfterNotesValue#1{\def\spaceAfterNotesValue{#1}}
+    
+    %%% Strophes
+    \def\setSpaceBeforeStropheValue#1{\def\spaceBeforeStropheValue{#1}}
+    \def\setSpaceAfterStropheValue#1{\def\spaceAfterStropheValue{#1}}
+    
+    %%% Song lyrics
+    \def\setSpaceBeforeSongLyricsValue#1{\def\spaceBeforeSongLyricsValue{#1}}
+    \def\setSpaceBetweenSongLyricsValue#1{\def\spaceBetweenSongLyricsValue{#1}}
+    \def\setSpaceAfterSongLyricsValue#1{\def\spaceAfterSongLyricsValue{#1}}
+    
+    %%% Foot
+    \def\setSpaceBeforeFootValue#1{\def\spaceBeforeFootValue{#1}}
+    \def\setSpaceAfterFootValue#1{\def\spaceAfterFootValue{#1}}
+    
 \end{lstlisting}
 
 \begin{lstlisting}[numbers=none]
-   %%% Horizontal spacing
-   \def\setSpaceStropheIndentValue#1{\def\spaceStropheIndentValue{#1}}
-   \def\setSpaceHeadIndentValue#1{\def\spaceHeadIndentValue{#1}}
-   \def\setSpaceFootIndentValue#1{\def\spaceFootIndentValue{#1}}
+    %%% Horizontal spacing
+    \def\setSpaceStropheIndentValue#1{\def\spaceStropheIndentValue{#1}}
+    \def\setSpaceHeadIndentValue#1{\def\spaceHeadIndentValue{#1}}
+    \def\setSpaceFootIndentValue#1{\def\spaceFootIndentValue{#1}}
 \end{lstlisting}
 
 Convert the space values into skips:
 \begin{lstlisting}[numbers=none]
-   %%% Arranging the space values
-   \def\spaceBeforeHead{\vskip\spaceBeforeHeadValue\relax\noindent\mbox{}\hskip\spaceHeadIndentValue\mbox{}}
-
-   \def\spaceAfterHead{\relax\vskip\spaceAfterHeadValue\relax}
-
-   \def\spaceBeforeNotes{\relax\vskip\spaceBeforeNotesValue\relax}
-
-   [...rest works analogously...]
+    %%% Arranging the space values
+    \def\spaceBeforeHead{\vskip\spaceBeforeHeadValue\relax\noindent\mbox{}\hskip\spaceHeadIndentValue\mbox{}}
+    
+    \def\spaceAfterHead{\relax\vskip\spaceAfterHeadValue\relax}
+    
+    \def\spaceBeforeNotes{\relax\vskip\spaceBeforeNotesValue\relax}
+    
+    [...rest works analogously...]
 \end{lstlisting}
 
 \newpage
 These commands save the definition of the header and footer for each song. They also implicitly arrange the spacing in the header and footer:
 \begin{lstlisting}[numbers=none]
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-   %%% Styling of header and footer %%%
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-   \newcommand{\LBHead}[1]{%
-   \long\def\GFM at LB@Head{\spaceBeforeHead #1\relax\spaceAfterHead\mbox{}}%
-   }%
-
-   \newcommand{\LBFoot}[1]{%
-   \long\def\GFM at LB@Foot{\spaceBeforeFoot #1\relax\spaceAfterFoot}%
-   }%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    %%% Styling of header and footer %%%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    
+    \newcommand{\LBHead}[1]{%
+    \long\def\GFM at LB@Head{\spaceBeforeHead #1\relax\spaceAfterHead\mbox{}}%
+    }%
+    
+    \newcommand{\LBFoot}[1]{%
+    \long\def\GFM at LB@Foot{\spaceBeforeFoot #1\relax\spaceAfterFoot}%
+    }%
 \end{lstlisting}
 
 \verb+Liederbuch+ and \verb+Lied+ are the environments that create the songbooks and store each song in a command sequence. Every song is stored this way in Latex:
 \begin{lstlisting}[numbers=none]
-   \liedBody;<songbook>;<song variant>;<number>
+    \liedBody;<songbook>;<song variant>;<number>
 \end{lstlisting}\vskip -5pt\relax
 The \verb+Lied+ environment also stores each meta data value in an command sequence by calling the \verb+\GFM at LB@unpackage+ command:
 \begin{lstlisting}[numbers=none]
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-   %%% Environments for creating  %%%
-   %%% the songbooks (liederbuch) %%% 
-   %%% and the songs (lied)       %%%
-   %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-
-   %Liederbuch environment
-   \NewEnviron{liederbuch}[2][]{%
-   \def\GFM at LB@LiederbuchNameTmp{#2}%
-   %%Lied environment %cslet
-   \NewEnviron{lied}[3][]{% 
-   %##1=meta data ##2=variant ##3=nummer
-   \def\GFM at LB@LiederbuchVariantTmp{##2}%
-   \def\GFM at LB@LiederbuchNumberTmp{##3}%
-   \GFM at LB@unpackage{##1}%
-   \GFM at LB@unpackage{#1}%
-   \global\cslet{liedBody;\GFM at LB@LiederbuchNameTmp;##2;##3}\BODY%
-   }%
-   \BODY% Without this, the command sequences inside the environment won't be defined. That means, the whole content of the songbook (Liederbuch) is thrown away.
-   }
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    %%% Environments for creating  %%%
+    %%% the songbooks (liederbuch) %%% 
+    %%% and the songs (lied)       %%%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    
+    %Liederbuch environment
+    \NewEnviron{liederbuch}[2][]{%
+    \def\GFM at LB@LiederbuchNameTmp{#2}%
+    %%Lied environment %cslet
+    \NewEnviron{lied}[3][]{% 
+    %##1=meta data ##2=variant ##3=nummer
+    \def\GFM at LB@LiederbuchVariantTmp{##2}%
+    \def\GFM at LB@LiederbuchNumberTmp{##3}%
+    \GFM at LB@unpackage{##1}%
+    \GFM at LB@unpackage{#1}%
+    \global\cslet{liedBody;\GFM at LB@LiederbuchNameTmp;##2;##3}\BODY%
+    }%
+    \BODY% Without this, the command sequences inside the environment won't be defined. That means, the whole content of the songbook (Liederbuch) is thrown away.
+    }
 \end{lstlisting}
 
 
@@ -1273,30 +1431,30 @@
 \label{LiHoUs}
 With the command
 \begin{lstlisting}[numbers=none]
-   \usepackage{../path/to/songbook.sty}
+    \usepackage{../path/to/songbook.sty}
 \end{lstlisting}
 you include a songbook. This automatically stores the content of the songs at loading time as described in the previous section. Now every song body is stored in a \LaTeX\ macro. Each meta data element is also stored in a \LaTeX\ macro. We need this later. When you call a song with the command:
 \begin{lstlisting}[numbers=none]
-   \LBsong{<songbook name>}{<song number>}{<variant>}
+    \LBsong{<songbook name>}{<song number>}{<variant>}
 \end{lstlisting}
 i.e.
 \begin{lstlisting}[numbers=none]
-   \LBsong{exampleSongs}{23}{nt}
+    \LBsong{exampleSongs}{23}{nt}
 \end{lstlisting}
 It calls itself a series of macros:
 \begin{lstlisting}[numbers=none]
-   %<setting some values>
-   \NewDocumentCommand{\print}{O{\empty} m}{%
-       [...]
-   }%
-   \GFM at LB@Head%
-   %<setting some values>
-   %%%%%%%%%%%%%%%%%%%%%%%%%%
-   \csuse{liedBody;#2;#1;#3}%
-   %=\liedBody;<songbook>;<song variant>;<number>
-   %%%%%%%%%%%%%%%%%%%%%%%%%%
-   %<setting some values>
-   \GFM at LB@Foot
+    %<setting some values>
+    \NewDocumentCommand{\print}{O{\empty} m}{%
+        [...]
+    }%
+    \GFM at LB@Head%
+    %<setting some values>
+    %%%%%%%%%%%%%%%%%%%%%%%%%%
+    \csuse{liedBody;#2;#1;#3}%
+    %=\liedBody;<songbook>;<song variant>;<number>
+    %%%%%%%%%%%%%%%%%%%%%%%%%%
+    %<setting some values>
+    \GFM at LB@Foot
 \end{lstlisting}
 As you see, it basically puts together head, body and foot. \verb+\GFM at LB@Head+ and \verb+\GFM at LB@Foot+ only contain the format of the head and foot. Inside these commands, the parameters songbook, song variant and number are available, therefore the correct meta data, like the correct title, author, etc. is automatically selected, when the \verb+\print+ command is used (see the example on page \pageref{LiUsCrEx} and also \ref{LiHoTh} \nameref{LiHoTh} \vpageref{LiHoTh})
 
@@ -1307,19 +1465,19 @@
 
 The principle is very simple. In 
 \begin{lstlisting}[numbers=none]
-   \LBHead
+    \LBHead
 \end{lstlisting}
 and
 \begin{lstlisting}[numbers=none]
-   \LBFoot
+    \LBFoot
 \end{lstlisting}
 a format for the head is defined and stored (with some spacing) into
 \begin{lstlisting}[numbers=none]
-   \GFM at LB@Head
+    \GFM at LB@Head
 \end{lstlisting}
 For the foot it is stored into
 \begin{lstlisting}[numbers=none]
-   \GFM at LB@Foot
+    \GFM at LB@Foot
 \end{lstlisting}
 
 Inside them the \verb+\print{<meta data name>}+ is used. It is not defined there and expanding it would result in an undefined-error. But it is defined inside \verb+\LBsong+, where \verb+\GFM at LB@Head+ and \verb+\GFM at LB@Foot+ are called. There it is expanded. Inside the \verb+\LBsong+ songbook, song variant and song number are available and put together to the command sequence, that expands to the correct meta data value (see section \ref{LiHoUs} \nameref{LiHoUs}). The rest of the head and foot definitions are usual \TeX commands. 
@@ -1358,51 +1516,122 @@
 \section{Undefined control sequence $\backslash OT$}
 undefined control sequence \verb+\OT+ maybe caused by ß in meta data. A simple workaround is to use \verb+\def\OT#11{}+ in the preamble.
 
+\section{Undefined control sequence $\backslash GFM at LB@songbook at 123@nt at title$}
+This happens, if a song has no title specified in the metadata, but the listofsongs is used. Everything will still work and the error can be ignored. But the list of songs will not look like such a list is supposed to look like. You can use \verb+tweakMetaData+ to give this song a title. Or you can give it a title in the source. Alternatively you can deactivate the list of songs.
+
+%\section{Undefined control sequence (general likely reason)}
+%Everything, that breaks in an edef, like \verb+\\+, breaks in the metadata. See also the next section \nameref{KnGl}.
+
+%\section{glqq grqq}
+%\label{KnGl}
+%Since \verb+\glqq •\grqq+ are fragile now (I don't think, they used to be), they will break. To avoid breaking, a fix is applied. They are redefined in the preamble to
+%
+%\begin{lstlisting}[numbers=none]
+%    \let\GFM at protect@glqq\glqq%
+%    \def\glqq{\unexpanded{\glqq}}%
+%\end{lstlisting}
+%
+%and AtBeginDocument they are reverted:
+%
+%\begin{lstlisting}[numbers=none]
+%    \AtBeginDocument{%
+%        \let\glqq\GFM at protect@glqq%
+%    }%
+%\end{lstlisting}
+%
+%This idea will be the idea of my (future) teleport package.
+
 \section{Spacing}
 If there is used plus and/or minus in spacing, this (might) result in extra space. The origin is unknown yet.
 
 \chapter{Bug reports}
-Nothing to say here. Post an email to \mbox{text\color{white}.\color{black}\hspace*{-7.5pt} inkerer.1904$@$gmail.com}, if you find one. Note:~Copying the mail address will result in a wrong address. This is for spam precautions. You have to type it off your screen. This is a good memory exercise to keep your mind vital a flexible.
+Nothing to say here. You can post any bug reports on bitbucket, if you find some:
+\begin{quote}
+\url{https://bitbucket.org/maestro-glanz/liederbuch-package/src/main/}
+\end{quote}
+If you don't have a bitbucket account and don't want to create one, you can post an email to \mbox{text\color{white}.\color{black}\hspace*{-7.5pt} inkerer.1904$@$gmail.com} and hope, that I read it within 3 month. Note:~Copying the mail address will fail. This is for spam precautions. You have to type it off your screen. This is a good memory exercise to keep your mind vital a flexible.
 
 
-\section{Revision History}
+\chapter{Revision History}
 \noindent
 \begin{tabular}{l l}
-2017-11-01:& v0.1\\
-2024-12-22:& v1.0
+2017-11-01:& v0.1.0\\
+2024-12-22:& v1.0.0\\
+2025-01-20:& v1.1.0
 \end{tabular}
 
 
 \end{document}
 
-\section{Milestones for Version 1.0}
 
-Liederbuch auf liederbuch ändern
-Lied auf lied ändern
+\section{Milestones for Version 1.1.0}
 
-\section{Milestones for Version 1.1}
+\subsection{listOfSongs}
+%Create custom list listOfSongs
 
-- multilines und mehrfach-Notentext anpassen, dass hier die Abstände zwischen den Strophenzeilen angepasst werden können.
+\listofsongs in printLiederbuch
 
+%   at the fifth style
+   
+% Fix grqqglqq - Check for now.
+
+Fix upper-lower case
+    Griechisch + Gr2
+%Fix unknown tags (lyricist, title, composer don't exist) -> No good fix available yet.
+
+
+\section{Milestones for Version 1.2.0}
 Backgrounds for songs. 4 divisions (fix, stretch, stretch, fix height).
 List may be expanded
 
+TOC bei printliederbuch korrekt mit nummer, variant, title
 
+Fix hyperref
+   twolines style -> Postpone
+       On read sollte das ausgeführt werden.
+   so it points to the right position
+
+
+- multilines -> extra space after line x
+
+
+\sendListOfSongsToTOC[author/title/etc]{los/toc/etc.}[los/toc/etc]{%
+\GFM at LB@listOfSongsTOCa{}
+\GFM at LB@listOfSongsTOCb{}
+\GFM at LB@listOfSongsTOCc{}
+}%
+
+\subsection{verse command}
+
+
+
 \section{Before upload}
+Is the license in 
+- the sty- and tex-files?
+- readme?
 
-Pfade aus packages entfernen
-  - Demoprojekt
-  - Test-Liederbuch
+Is the author name in 
+- the sty- and tex-files?
+- readme?
 
+Is the version number in 
+- the docu text? first page?
+- the sty- and tex-files (+provides package param)?
+- readme?
   
-Revisionsdatum anpassen
+Is the correct revision date in 
+- the docu text?
+- the sty- and tex-files?
+- readme?
 
+Is the repo link in
+- the docu text?
+- the sty- and tex-files? -> no
+- readme? -> no
 
+
 \section{Milestones for Version 1.2}
-Remove any references to fill pages and real page
 
-\verse command - Option für page break in Strophen
-
 \subsection{3 Standard designs}
 %\useLiederbuchStyle{}
 
@@ -1409,20 +1638,12 @@
 %\useLiederbuchColor{}
 analog to moderncv
 
+Style mit \print[\GFM at LB@composer]{Mozart} -> Babel-kompatibel
 
 \chapter*{Todo}
 
 Fix relative paths. Reference to the containing package.
 
-
-AtBeginDocument isn't executed. This results in the fillPages to not work.
-
-Create custom list listOfSongs
-
-Switch the skips, so fills are allowed. -> Test it
-
-fix bug insertfillpages. There's always at least one page. Why?
-
 IfBoolean instead of ifx for stared command in DeclareDocumentCommand
 
 integrate /@car and /@cdr
@@ -1429,8 +1650,6 @@
 
 /extraSpaceBeforeStrophe{Strophennummer}{pt}
 
-/forcePagebreakBeforeStrophe{Strophennummer}
-
 meta data: what breaks in an edef, is only possible with a triple unexpanded.
 
 

Added: trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-babel.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-babel.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-babel.sty	2025-01-21 20:46:10 UTC (rev 73548)
@@ -0,0 +1,783 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                   %
+%      Made by Gabriel Ruprecht     %
+%                                   %
+% This work is published under the  %
+% LaTeX project public license 1.3  %
+%                                   %
+%       Package version 1.1.0       %
+%            2025-01-20             %
+%                                   %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%
+%acadian%
+\addto\captionsacadian{\def\listofsongsname{Chansonier}}%
+\addto\captionsacadian{\def\LBsongComposer{Compositeur}}%
+\addto\captionsacadian{\def\LBsongLyricist{Parolier}}%
+\addto\captionsacadian{\def\LBsongEditor{Éditor}}%
+\addto\captionsacadian{\def\LBsongYear{An}}%
+\addto\captionsacadian{\def\LBsongCopyright{Drets d'autor}}%
+\addto\captionsacadian{\def\LBsongEditorialOffice{Redaksyon}}%
+\addto\captionsacadian{\def\LBsongEditon{Edision}}%
+\addto\captionsacadian{\def\LBsongPrint{Imprenta}}%
+%
+%afrikaans%
+\addto\captionsafrikaans{\def\listofsongsname{Liedjieboek}}%
+\addto\captionsafrikaans{\def\LBsongComposer{Komponis}}%
+\addto\captionsafrikaans{\def\LBsongLyricist{Lirikus}}%
+\addto\captionsafrikaans{\def\LBsongEditor{Redakteur}}%
+\addto\captionsafrikaans{\def\LBsongYear{Jaar}}%
+\addto\captionsafrikaans{\def\LBsongCopyright{Kopiereg}}%
+\addto\captionsafrikaans{\def\LBsongEditorialOffice{Redaksie}}%
+\addto\captionsafrikaans{\def\LBsongEditon{Uitgawe}}%
+\addto\captionsafrikaans{\def\LBsongPrint{Druk}}%
+%
+%albanian%
+\addto\captionsalbanian{\def\listofsongsname{Regjistër këngësh}}%
+\addto\captionsalbanian{\def\LBsongComposer{Kompozitor}}%
+\addto\captionsalbanian{\def\LBsongLyricist{Tekstshkrues}}%
+\addto\captionsalbanian{\def\LBsongEditor{Redaktor}}%
+\addto\captionsalbanian{\def\LBsongYear{Vit}}%
+\addto\captionsalbanian{\def\LBsongCopyright{Të drejtat e autorit}}%
+\addto\captionsalbanian{\def\LBsongEditorialOffice{Redaksia}}%
+\addto\captionsalbanian{\def\LBsongEditon{Botim}}%
+\addto\captionsalbanian{\def\LBsongPrint{Shtypje}}%
+%
+%american%
+\addto\captionsamerican{\def\listofsongsname{Song list}}%
+\addto\captionsamerican{\def\LBsongComposer{Composer}}%
+\addto\captionsamerican{\def\LBsongLyricist{Lyricist}}%
+\addto\captionsamerican{\def\LBsongEditor{Editor}}%
+\addto\captionsamerican{\def\LBsongYear{Year}}%
+\addto\captionsamerican{\def\LBsongCopyright{Copyright}}%
+\addto\captionsamerican{\def\LBsongEditorialOffice{Editorial office}}%
+\addto\captionsamerican{\def\LBsongEditon{Edition}}%
+\addto\captionsamerican{\def\LBsongPrint{Print}}%
+%
+%australian%
+\addto\captionsaustralian{\def\listofsongsname{Song list}}%
+\addto\captionsaustralian{\def\LBsongComposer{Composer}}%
+\addto\captionsaustralian{\def\LBsongLyricist{Lyricist}}%
+\addto\captionsaustralian{\def\LBsongEditor{Editor}}%
+\addto\captionsaustralian{\def\LBsongYear{Year}}%
+\addto\captionsaustralian{\def\LBsongCopyright{Copyright}}%
+\addto\captionsaustralian{\def\LBsongEditorialOffice{Editorial office}}%
+\addto\captionsaustralian{\def\LBsongEditon{Edition}}%
+\addto\captionsaustralian{\def\LBsongPrint{Print}}%
+%
+%austrian%
+\addto\captionsaustrian{\def\listofsongsname{Liederverzeichnis}}%
+\addto\captionsaustrian{\def\LBsongComposer{Komponist}}%
+\addto\captionsaustrian{\def\LBsongLyricist{Textdichter}}%
+\addto\captionsaustrian{\def\LBsongEditor{Herausgeber}}%
+\addto\captionsaustrian{\def\LBsongYear{Jahr}}%
+\addto\captionsaustrian{\def\LBsongCopyright{Urheberrecht}}%
+\addto\captionsaustrian{\def\LBsongEditorialOffice{Redaktion}}%
+\addto\captionsaustrian{\def\LBsongEditon{Auflage}}%
+\addto\captionsaustrian{\def\LBsongPrint{Druck}}%
+%
+%bahasa%
+\addto\captionsbahasa{\def\listofsongsname{Daftar lagu}}%
+\addto\captionsbahasa{\def\LBsongComposer{Komposer}}%
+\addto\captionsbahasa{\def\LBsongLyricist{Penulis lirik}}%
+\addto\captionsbahasa{\def\LBsongEditor{Editor}}%
+\addto\captionsbahasa{\def\LBsongYear{Tahun}}%
+\addto\captionsbahasa{\def\LBsongCopyright{Hak cipta}}%
+\addto\captionsbahasa{\def\LBsongEditorialOffice{Pejabat editorial}}%
+\addto\captionsbahasa{\def\LBsongEditon{Edisi}}%
+\addto\captionsbahasa{\def\LBsongPrint{Cetak}}%
+%
+%bahasai%
+\addto\captionsbahasai{\def\listofsongsname{Daftar lagu}}%
+\addto\captionsbahasai{\def\LBsongComposer{Komposer}}%
+\addto\captionsbahasai{\def\LBsongLyricist{Penulis lirik}}%
+\addto\captionsbahasai{\def\LBsongEditor{Editor}}%
+\addto\captionsbahasai{\def\LBsongYear{Tahun}}%
+\addto\captionsbahasai{\def\LBsongCopyright{Hak cipta}}%
+\addto\captionsbahasai{\def\LBsongEditorialOffice{Pejabat editorial}}%
+\addto\captionsbahasai{\def\LBsongEditon{Edisi}}%
+\addto\captionsbahasai{\def\LBsongPrint{Cetak}}%
+%
+%bahasam%
+\addto\captionsbahasam{\def\listofsongsname{Senarai lagu}}%
+\addto\captionsbahasam{\def\LBsongComposer{Komposer}}%
+\addto\captionsbahasam{\def\LBsongLyricist{Penulis lirik}}%
+\addto\captionsbahasam{\def\LBsongEditor{Editor}}%
+\addto\captionsbahasam{\def\LBsongYear{Tahun}}%
+\addto\captionsbahasam{\def\LBsongCopyright{Hak cipta}}%
+\addto\captionsbahasam{\def\LBsongEditorialOffice{Pejabat editorial}}%
+\addto\captionsbahasam{\def\LBsongEditon{Edisi}}%
+\addto\captionsbahasam{\def\LBsongPrint{Cetak}}%
+%
+%basque%
+\addto\captionsbasque{\def\listofsongsname{Abesti zerrenda}}%
+\addto\captionsbasque{\def\LBsongComposer{Konposatzailea}}%
+\addto\captionsbasque{\def\LBsongLyricist{Letra idazlea}}%
+\addto\captionsbasque{\def\LBsongEditor{Editorea}}%
+\addto\captionsbasque{\def\LBsongYear{Urtea}}%
+\addto\captionsbasque{\def\LBsongCopyright{Egile eskubideak}}%
+\addto\captionsbasque{\def\LBsongEditorialOffice{Editore bulegoa}}%
+\addto\captionsbasque{\def\LBsongEditon{Argitalpen}}%
+\addto\captionsbasque{\def\LBsongPrint{Inpresio}}%
+%
+%brazil%
+\addto\captionsbrazil{\def\listofsongsname{Índice de canções}}%
+\addto\captionsbrazil{\def\LBsongComposer{Compositor}}%
+\addto\captionsbrazil{\def\LBsongLyricist{Letrista}}%
+\addto\captionsbrazil{\def\LBsongEditor{Editor}}%
+\addto\captionsbrazil{\def\LBsongYear{Ano}}%
+\addto\captionsbrazil{\def\LBsongCopyright{Direitos autorais}}%
+\addto\captionsbrazil{\def\LBsongEditorialOffice{Editoria}}%
+\addto\captionsbrazil{\def\LBsongEditon{Edição}}%
+\addto\captionsbrazil{\def\LBsongPrint{Impressão}}%
+%
+%brazilian%
+\addto\captionsbrazilian{\def\listofsongsname{Índice de canções}}%
+\addto\captionsbrazilian{\def\LBsongComposer{Compositor}}%
+\addto\captionsbrazilian{\def\LBsongLyricist{Letrista}}%
+\addto\captionsbrazilian{\def\LBsongEditor{Editor}}%
+\addto\captionsbrazilian{\def\LBsongYear{Ano}}%
+\addto\captionsbrazilian{\def\LBsongCopyright{Direitos autorais}}%
+\addto\captionsbrazilian{\def\LBsongEditorialOffice{Editoria}}%
+\addto\captionsbrazilian{\def\LBsongEditon{Edição}}%
+\addto\captionsbrazilian{\def\LBsongPrint{Impressão}}%
+%
+%breton%
+\addto\captionsbreton{\def\listofsongsname{Roll songs}}%
+\addto\captionsbreton{\def\LBsongComposer{Kompozitour}}%
+\addto\captionsbreton{\def\LBsongLyricist{Skrivadur baladenn}}%
+\addto\captionsbreton{\def\LBsongEditor{Merour}}%
+\addto\captionsbreton{\def\LBsongYear{Bloaz}}%
+\addto\captionsbreton{\def\LBsongCopyright{Hiziv aotrouiezh}}%
+\addto\captionsbreton{\def\LBsongEditorialOffice{Burev lezenn}}%
+\addto\captionsbreton{\def\LBsongEditon{Vugeladenn}}%
+\addto\captionsbreton{\def\LBsongPrint{Presañ}}%
+%
+%british%
+\addto\captionsbritish{\def\listofsongsname{Song list}}%
+\addto\captionsbritish{\def\LBsongComposer{Composer}}%
+\addto\captionsbritish{\def\LBsongLyricist{Lyricist}}%
+\addto\captionsbritish{\def\LBsongEditor{Editor}}%
+\addto\captionsbritish{\def\LBsongYear{Year}}%
+\addto\captionsbritish{\def\LBsongCopyright{Copyright}}%
+\addto\captionsbritish{\def\LBsongEditorialOffice{Editorial office}}%
+\addto\captionsbritish{\def\LBsongEditon{Edition}}%
+\addto\captionsbritish{\def\LBsongPrint{Print}}%
+%
+%bulgarian%
+\addto\captionsbulgarian{\def\listofsongsname{Списък на песни}}%
+\addto\captionsbulgarian{\def\LBsongComposer{Композитор}}%
+\addto\captionsbulgarian{\def\LBsongLyricist{Текстописец}}%
+\addto\captionsbulgarian{\def\LBsongEditor{Редактор}}%
+\addto\captionsbulgarian{\def\LBsongYear{Година}}%
+\addto\captionsbulgarian{\def\LBsongCopyright{Aвторски права}}%
+\addto\captionsbulgarian{\def\LBsongEditorialOffice{Pедакция}}%
+\addto\captionsbulgarian{\def\LBsongEditon{Издание}}%
+\addto\captionsbulgarian{\def\LBsongPrint{Печат}}%
+%
+%canadian%
+\addto\captionscanadian{\def\listofsongsname{Chansonniers}}%
+\addto\captionscanadian{\def\LBsongComposer{Composer}}%
+\addto\captionscanadian{\def\LBsongLyricist{Lyricist}}%
+\addto\captionscanadian{\def\LBsongEditor{Editor}}%
+\addto\captionscanadian{\def\LBsongYear{Year}}%
+\addto\captionscanadian{\def\LBsongCopyright{Copyright}}%
+\addto\captionscanadian{\def\LBsongEditorialOffice{Editorial office}}%
+\addto\captionscanadian{\def\LBsongEditon{Edition}}%
+\addto\captionscanadian{\def\LBsongPrint{Print}}%
+%
+%canadien%
+\addto\captionscanadien{\def\listofsongsname{Liste de chansons}}%
+\addto\captionscanadien{\def\LBsongComposer{Compositeur}}%
+\addto\captionscanadien{\def\LBsongLyricist{Parolier}}%
+\addto\captionscanadien{\def\LBsongEditor{Éditeur}}%
+\addto\captionscanadien{\def\LBsongYear{Année}}%
+\addto\captionscanadien{\def\LBsongCopyright{Droit d'auteur}}%
+\addto\captionscanadien{\def\LBsongEditorialOffice{Rédaction}}%
+\addto\captionscanadien{\def\LBsongEditon{Édition}}%
+\addto\captionscanadien{\def\LBsongPrint{Impression}}%
+%
+%catalan%
+\addto\captionscatalan{\def\listofsongsname{Llistat de cançons}}%
+\addto\captionscatalan{\def\LBsongComposer{Compositor}}%
+\addto\captionscatalan{\def\LBsongLyricist{Letrista}}%
+\addto\captionscatalan{\def\LBsongEditor{Editor}}%
+\addto\captionscatalan{\def\LBsongYear{Any}}%
+\addto\captionscatalan{\def\LBsongCopyright{Drets d'autor}}%
+\addto\captionscatalan{\def\LBsongEditorialOffice{Redacció}}%
+\addto\captionscatalan{\def\LBsongEditon{Edició}}%
+\addto\captionscatalan{\def\LBsongPrint{Impressió}}%
+%
+%croatian%
+\addto\captionscroatian{\def\listofsongsname{Popis pjesama}}%
+\addto\captionscroatian{\def\LBsongComposer{Kompozitor}}%
+\addto\captionscroatian{\def\LBsongLyricist{Tekstopisac}}%
+\addto\captionscroatian{\def\LBsongEditor{Urednik}}%
+\addto\captionscroatian{\def\LBsongYear{Godina}}%
+\addto\captionscroatian{\def\LBsongCopyright{Autorska prava}}%
+\addto\captionscroatian{\def\LBsongEditorialOffice{Uredništvo}}%
+\addto\captionscroatian{\def\LBsongEditon{Izdanje}}%
+\addto\captionscroatian{\def\LBsongPrint{Tisak}}%
+%
+%czech%
+\addto\captionsczech{\def\listofsongsname{Seznam písní}}%
+\addto\captionsczech{\def\LBsongComposer{Skladatel}}%
+\addto\captionsczech{\def\LBsongLyricist{Textař}}%
+\addto\captionsczech{\def\LBsongEditor{Editor}}%
+\addto\captionsczech{\def\LBsongYear{Rok}}%
+\addto\captionsczech{\def\LBsongCopyright{Autorská práva}}%
+\addto\captionsczech{\def\LBsongEditorialOffice{Redakce}}%
+\addto\captionsczech{\def\LBsongEditon{Vydání}}%
+\addto\captionsczech{\def\LBsongPrint{Tisk}}%
+%
+%danish%
+\addto\captionsdanish{\def\listofsongsname{Sangliste}}%
+\addto\captionsdanish{\def\LBsongComposer{Komponist}}%
+\addto\captionsdanish{\def\LBsongLyricist{Tekstforfatter}}%
+\addto\captionsdanish{\def\LBsongEditor{Redaktør}}%
+\addto\captionsdanish{\def\LBsongYear{År}}%
+\addto\captionsdanish{\def\LBsongCopyright{Ophavsret}}%
+\addto\captionsdanish{\def\LBsongEditorialOffice{Redaktion}}%
+\addto\captionsdanish{\def\LBsongEditon{Udgave}}%
+\addto\captionsdanish{\def\LBsongPrint{Tryk}}%
+%
+%dutch%
+\addto\captionsdutch{\def\listofsongsname{Liedjeslijst}}%
+\addto\captionsdutch{\def\LBsongComposer{Componist}}%
+\addto\captionsdutch{\def\LBsongLyricist{Tekstschrijver}}%
+\addto\captionsdutch{\def\LBsongEditor{Redacteur}}%
+\addto\captionsdutch{\def\LBsongYear{Jaar}}%
+\addto\captionsdutch{\def\LBsongCopyright{Auteursrecht}}%
+\addto\captionsdutch{\def\LBsongEditorialOffice{Redactie}}%
+\addto\captionsdutch{\def\LBsongEditon{Editie}}%
+\addto\captionsdutch{\def\LBsongPrint{Druk}}%
+%
+%english%
+\addto\captionsenglish{\def\listofsongsname{Song list}}%
+\addto\captionsenglish{\def\LBsongComposer{Composer}}%
+\addto\captionsenglish{\def\LBsongLyricist{Lyricist}}%
+\addto\captionsenglish{\def\LBsongEditor{Editor}}%
+\addto\captionsenglish{\def\LBsongYear{Year}}%
+\addto\captionsenglish{\def\LBsongCopyright{Copyright}}%
+\addto\captionsenglish{\def\LBsongEditorialOffice{Editorial office}}%
+\addto\captionsenglish{\def\LBsongEditon{Edition}}%
+\addto\captionsenglish{\def\LBsongPrint{Print}}%
+%
+%esperanto%
+\addto\captionsesperanto{\def\listofsongsname{Kanto registro}}%
+\addto\captionsesperanto{\def\LBsongComposer{Kompozitoro}}%
+\addto\captionsesperanto{\def\LBsongLyricist{Tekstverkisto}}%
+\addto\captionsesperanto{\def\LBsongEditor{Redaktoro}}%
+\addto\captionsesperanto{\def\LBsongYear{Jaro}}%
+\addto\captionsesperanto{\def\LBsongCopyright{Kopirajto}}%
+\addto\captionsesperanto{\def\LBsongEditorialOffice{Redaktejo}}%
+\addto\captionsesperanto{\def\LBsongEditon{Eldono}}%
+\addto\captionsesperanto{\def\LBsongPrint{Presado}}%
+%
+%estonian%
+\addto\captionsestonian{\def\listofsongsname{Laulude loend}}%
+\addto\captionsestonian{\def\LBsongComposer{Koomposiitor}}%
+\addto\captionsestonian{\def\LBsongLyricist{Laulusõnade autor}}%
+\addto\captionsestonian{\def\LBsongEditor{Toimetaja}}%
+\addto\captionsestonian{\def\LBsongYear{Aasta}}%
+\addto\captionsestonian{\def\LBsongCopyright{Autoriõigus}}%
+\addto\captionsestonian{\def\LBsongEditorialOffice{Toimetus}}%
+\addto\captionsestonian{\def\LBsongEditon{Väljaanne}}%
+\addto\captionsestonian{\def\LBsongPrint{Trükk}}%
+%
+%finnish%
+\addto\captionsfinnish{\def\listofsongsname{Laululuettelo}}%
+\addto\captionsfinnish{\def\LBsongComposer{Kocomposer}}%
+\addto\captionsfinnish{\def\LBsongLyricist{Sanoittaja}}%
+\addto\captionsfinnish{\def\LBsongEditor{Toimittaja}}%
+\addto\captionsfinnish{\def\LBsongYear{Vuosi}}%
+\addto\captionsfinnish{\def\LBsongCopyright{Tekijänoikeus}}%
+\addto\captionsfinnish{\def\LBsongEditorialOffice{Toimitus}}%
+\addto\captionsfinnish{\def\LBsongEditon{Painos}}%
+\addto\captionsfinnish{\def\LBsongPrint{Painatus}}%
+%
+%francais%
+\addto\captionsfrancais{\def\listofsongsname{Répertoire de chansons}}%
+\addto\captionsfrancais{\def\LBsongComposer{Compositeur}}%
+\addto\captionsfrancais{\def\LBsongLyricist{Parolier}}%
+\addto\captionsfrancais{\def\LBsongEditor{Éditeur}}%
+\addto\captionsfrancais{\def\LBsongYear{Année}}%
+\addto\captionsfrancais{\def\LBsongCopyright{Droit d'auteur}}%
+\addto\captionsfrancais{\def\LBsongEditorialOffice{Rédaction}}%
+\addto\captionsfrancais{\def\LBsongEditon{Édition}}%
+\addto\captionsfrancais{\def\LBsongPrint{Impression}}%
+%
+%french%
+\addto\captionsfrench{\def\listofsongsname{Répertoire de chansons}}%
+\addto\captionsfrench{\def\LBsongComposer{Compositeur}}%
+\addto\captionsfrench{\def\LBsongLyricist{Parolier}}%
+\addto\captionsfrench{\def\LBsongEditor{Éditeur}}%
+\addto\captionsfrench{\def\LBsongYear{Année}}%
+\addto\captionsfrench{\def\LBsongCopyright{Droit d'auteur}}%
+\addto\captionsfrench{\def\LBsongEditorialOffice{Rédaction}}%
+\addto\captionsfrench{\def\LBsongEditon{Édition}}%
+\addto\captionsfrench{\def\LBsongPrint{Impression}}%
+%
+%frenchb%
+\addto\captionsfrenchb{\def\listofsongsname{Répertoire de chansons}}%
+\addto\captionsfrenchb{\def\LBsongComposer{Compositeur}}%
+\addto\captionsfrenchb{\def\LBsongLyricist{Parolier}}%
+\addto\captionsfrenchb{\def\LBsongEditor{Éditeur}}%
+\addto\captionsfrenchb{\def\LBsongYear{Année}}%
+\addto\captionsfrenchb{\def\LBsongCopyright{Droit d'auteur}}%
+\addto\captionsfrenchb{\def\LBsongEditorialOffice{Rédaction}}%
+\addto\captionsfrenchb{\def\LBsongEditon{Édition}}%
+\addto\captionsfrenchb{\def\LBsongPrint{Impression}}%
+%
+%galician%
+\addto\captionsgalician{\def\listofsongsname{Lista de cancións}}%
+\addto\captionsgalician{\def\LBsongComposer{Compositor}}%
+\addto\captionsgalician{\def\LBsongLyricist{Letrista}}%
+\addto\captionsgalician{\def\LBsongEditor{Editor}}%
+\addto\captionsgalician{\def\LBsongYear{Ano}}%
+\addto\captionsgalician{\def\LBsongCopyright{Dereitos de autor}}%
+\addto\captionsgalician{\def\LBsongEditorialOffice{Redacción}}%
+\addto\captionsgalician{\def\LBsongEditon{Edición}}%
+\addto\captionsgalician{\def\LBsongPrint{Impressión}}%
+%
+%german%
+\addto\captionsgerman{\def\listofsongsname{Liederverzeichnis}}%
+\addto\captionsgerman{\def\LBsongComposer{Komponist}}%
+\addto\captionsgerman{\def\LBsongLyricist{Texter}}%
+\addto\captionsgerman{\def\LBsongEditor{Herausgeber}}%
+\addto\captionsgerman{\def\LBsongYear{Jahr}}%
+\addto\captionsgerman{\def\LBsongCopyright{Urheberrecht}}%
+\addto\captionsgerman{\def\LBsongEditorialOffice{Redaktion}}%
+\addto\captionsgerman{\def\LBsongEditon{Auflage}}%
+\addto\captionsgerman{\def\LBsongPrint{Druck}}%
+%
+%germanb%
+\addto\captionsgermanb{\def\listofsongsname{Liederverzeichnis}}%
+\addto\captionsgermanb{\def\LBsongComposer{Komponist}}%
+\addto\captionsgermanb{\def\LBsongLyricist{Texter}}%
+\addto\captionsgermanb{\def\LBsongEditor{Herausgeber}}%
+\addto\captionsgermanb{\def\LBsongYear{Jahr}}%
+\addto\captionsgermanb{\def\LBsongCopyright{Urheberrecht}}%
+\addto\captionsgermanb{\def\LBsongEditorialOffice{Redaktion}}%
+\addto\captionsgermanb{\def\LBsongEditon{Auflage}}%
+\addto\captionsgermanb{\def\LBsongPrint{Druck}}%
+%
+%greek%
+\addto\captionsgreek{\def\listofsongsname{Κατάλογος τραγουδιών}}%
+\addto\captionsgreek{\def\LBsongComposer{Συνθέτης}}%
+\addto\captionsgreek{\def\LBsongLyricist{Στιχουργός}}%
+\addto\captionsgreek{\def\LBsongEditor{Eκδότης}}%
+\addto\captionsgreek{\def\LBsongYear{Χρόνος}}%
+\addto\captionsgreek{\def\LBsongCopyright{Πνευματικά δικαιώματα}}%
+\addto\captionsgreek{\def\LBsongEditorialOffice{Συντακτική ομάδα}}%
+\addto\captionsgreek{\def\LBsongEditon{Éκδοση}}%
+\addto\captionsgreek{\def\LBsongPrint{Εκτύπωση}}%
+%
+%hebrew%
+\addto\captionshebrew{\def\listofsongsname{רשימת שירים}}%
+\addto\captionshebrew{\def\LBsongComposer{מלחין}}%
+\addto\captionshebrew{\def\LBsongLyricist{מחבר מילים}}%
+\addto\captionshebrew{\def\LBsongEditor{עורך}}%
+\addto\captionshebrew{\def\LBsongYear{שנה}}%
+\addto\captionshebrew{\def\LBsongCopyright{זכויות יוצרים}}%
+\addto\captionshebrew{\def\LBsongEditorialOffice{מערכת}}%
+\addto\captionshebrew{\def\LBsongEditon{מהדורה}}%
+\addto\captionshebrew{\def\LBsongPrint{הדפסה}}%
+%
+%hungarian%
+\addto\captionshungarian{\def\listofsongsname{Daljegyzék}}%
+\addto\captionshungarian{\def\LBsongComposer{Komponista}}%
+\addto\captionshungarian{\def\LBsongLyricist{Szövegíró}}%
+\addto\captionshungarian{\def\LBsongEditor{Szerkesztő}}%
+\addto\captionshungarian{\def\LBsongYear{Év}}%
+\addto\captionshungarian{\def\LBsongCopyright{Szerzői jog}}%
+\addto\captionshungarian{\def\LBsongEditorialOffice{Szerkesztőség}}%
+\addto\captionshungarian{\def\LBsongEditon{Kiadás}}%
+\addto\captionshungarian{\def\LBsongPrint{Nyomtatás}}%
+%
+%icelandic%
+\addto\captionsicelandic{\def\listofsongsname{Söngskrá}}%
+\addto\captionsicelandic{\def\LBsongComposer{Tonlistarmaður}}%
+\addto\captionsicelandic{\def\LBsongLyricist{Söngtextahöfundur}}%
+\addto\captionsicelandic{\def\LBsongEditor{Útgefandi}}%
+\addto\captionsicelandic{\def\LBsongYear{Ár}}%
+\addto\captionsicelandic{\def\LBsongCopyright{Höfundarréttur}}%
+\addto\captionsicelandic{\def\LBsongEditorialOffice{Ritstjórn}}%
+\addto\captionsicelandic{\def\LBsongEditon{Útgáfa}}%
+\addto\captionsicelandic{\def\LBsongPrint{Prentun}}%
+%
+%indon%
+\addto\captionsindon{\def\listofsongsname{Daftar lagu}}%
+\addto\captionsindon{\def\LBsongComposer{Komposer}}%
+\addto\captionsindon{\def\LBsongLyricist{Penulis lirik}}%
+\addto\captionsindon{\def\LBsongEditor{Editor}}%
+\addto\captionsindon{\def\LBsongYear{Tahun}}%
+\addto\captionsindon{\def\LBsongCopyright{Hak cipta}}%
+\addto\captionsindon{\def\LBsongEditorialOffice{Kantor editorial}}%
+\addto\captionsindon{\def\LBsongEditon{Edisi}}%
+\addto\captionsindon{\def\LBsongPrint{Cetak}}%
+%
+%indonesian%
+\addto\captionsindonesian{\def\listofsongsname{Daftar lagu}}%
+\addto\captionsindonesian{\def\LBsongComposer{Komposer}}%
+\addto\captionsindonesian{\def\LBsongLyricist{Penulis lirik}}%
+\addto\captionsindonesian{\def\LBsongEditor{Editor}}%
+\addto\captionsindonesian{\def\LBsongYear{Tahun}}%
+\addto\captionsindonesian{\def\LBsongCopyright{Hak cipta}}%
+\addto\captionsindonesian{\def\LBsongEditorialOffice{Kantor editorial}}%
+\addto\captionsindonesian{\def\LBsongEditon{Edisi}}%
+\addto\captionsindonesian{\def\LBsongPrint{Cetak}}%
+%
+%interlingua%
+\addto\captionsinterlingua{\def\listofsongsname{Indice de cantos}}%
+\addto\captionsinterlingua{\def\LBsongComposer{Compositor}}%
+\addto\captionsinterlingua{\def\LBsongLyricist{Scribitor de textos}}%
+\addto\captionsinterlingua{\def\LBsongEditor{Editor}}%
+\addto\captionsinterlingua{\def\LBsongYear{Anno}}%
+\addto\captionsinterlingua{\def\LBsongCopyright{Derectos de autor}}%
+\addto\captionsinterlingua{\def\LBsongEditorialOffice{Officio editorial}}%
+\addto\captionsinterlingua{\def\LBsongEditon{Edition}}%
+\addto\captionsinterlingua{\def\LBsongPrint{Impression}}%
+%
+%irish%
+\addto\captionsirish{\def\listofsongsname{Liosta amhrán}}%
+\addto\captionsirish{\def\LBsongComposer{Comhalóir}}%
+\addto\captionsirish{\def\LBsongLyricist{File}}%
+\addto\captionsirish{\def\LBsongEditor{Eagarthóir}}%
+\addto\captionsirish{\def\LBsongYear{Bliain}}%
+\addto\captionsirish{\def\LBsongCopyright{Cearta údar}}%
+\addto\captionsirish{\def\LBsongEditorialOffice{Na hiriseoirí}}%
+\addto\captionsirish{\def\LBsongEditon{Eagrán}}%
+\addto\captionsirish{\def\LBsongPrint{Priontáil}}%
+%
+%italian%
+\addto\captionsitalian{\def\listofsongsname{Elenco delle canzoni}}%
+\addto\captionsitalian{\def\LBsongComposer{Compositore}}%
+\addto\captionsitalian{\def\LBsongLyricist{Saggista}}%
+\addto\captionsitalian{\def\LBsongEditor{Editore}}%
+\addto\captionsitalian{\def\LBsongYear{Anno}}%
+\addto\captionsitalian{\def\LBsongCopyright{Diritti d'autore}}%
+\addto\captionsitalian{\def\LBsongEditorialOffice{Redazione}}%
+\addto\captionsitalian{\def\LBsongEditon{Edizione}}%
+\addto\captionsitalian{\def\LBsongPrint{Stampa}}%
+%
+%latin%
+\addto\captionslatin{\def\listofsongsname{Index carminum}}%
+\addto\captionslatin{\def\LBsongComposer{Componista}}%
+\addto\captionslatin{\def\LBsongLyricist{Versificator}}%
+\addto\captionslatin{\def\LBsongEditor{Editor}}%
+\addto\captionslatin{\def\LBsongYear{Annus}}%
+\addto\captionslatin{\def\LBsongCopyright{Iura auctoris}}%
+\addto\captionslatin{\def\LBsongEditorialOffice{Redactio}}%
+\addto\captionslatin{\def\LBsongEditon{Editio}}%
+\addto\captionslatin{\def\LBsongPrint{Impressio}}%
+%
+%lowersorbian%
+\addto\captionslowersorbian{\def\listofsongsname{Lědowe zapiska}}%
+\addto\captionslowersorbian{\def\LBsongComposer{Kompozytor}}%
+\addto\captionslowersorbian{\def\LBsongLyricist{Tekstowy pisar}}%
+\addto\captionslowersorbian{\def\LBsongEditor{Redaktora}}%
+\addto\captionslowersorbian{\def\LBsongYear{Rok}}%
+\addto\captionslowersorbian{\def\LBsongCopyright{Autorowe prawa}}%
+\addto\captionslowersorbian{\def\LBsongEditorialOffice{Redakcija}}%
+\addto\captionslowersorbian{\def\LBsongEditon{Wudowa}}%
+\addto\captionslowersorbian{\def\LBsongPrint{Druk}}%
+%
+%magyar%
+\addto\captionsmagyar{\def\listofsongsname{Daljegyzék}}%
+\addto\captionsmagyar{\def\LBsongComposer{Komponista}}%
+\addto\captionsmagyar{\def\LBsongLyricist{Szövegíró}}%
+\addto\captionsmagyar{\def\LBsongEditor{Szerkesztő}}%
+\addto\captionsmagyar{\def\LBsongYear{Év}}%
+\addto\captionsmagyar{\def\LBsongCopyright{Szerzői jog}}%
+\addto\captionsmagyar{\def\LBsongEditorialOffice{Szerkesztőség}}%
+\addto\captionsmagyar{\def\LBsongEditon{Kibocsátás}}%
+\addto\captionsmagyar{\def\LBsongPrint{Nyomtatás}}%
+%
+%malay%
+\addto\captionsmalay{\def\listofsongsname{Senarai lagu}}%
+\addto\captionsmalay{\def\LBsongComposer{Komposer}}%
+\addto\captionsmalay{\def\LBsongLyricist{Penulis lirik}}%
+\addto\captionsmalay{\def\LBsongEditor{Editor}}%
+\addto\captionsmalay{\def\LBsongYear{Tahun}}%
+\addto\captionsmalay{\def\LBsongCopyright{Hak cipta}}%
+\addto\captionsmalay{\def\LBsongEditorialOffice{Pejabat editorial}}%
+\addto\captionsmalay{\def\LBsongEditon{Edisi}}%
+\addto\captionsmalay{\def\LBsongPrint{Cetak}}%
+%
+%meyalu%
+\addto\captionsmeyalu{\def\listofsongsname{Senarai lagu}}%
+\addto\captionsmeyalu{\def\LBsongComposer{Komposer}}%
+\addto\captionsmeyalu{\def\LBsongLyricist{Penulis lirik}}%
+\addto\captionsmeyalu{\def\LBsongEditor{Editor}}%
+\addto\captionsmeyalu{\def\LBsongYear{Tahun}}%
+\addto\captionsmeyalu{\def\LBsongCopyright{Hak cipta}}%
+\addto\captionsmeyalu{\def\LBsongEditorialOffice{Pejabat editorial}}%
+\addto\captionsmeyalu{\def\LBsongEditon{Edisi}}%
+\addto\captionsmeyalu{\def\LBsongPrint{Cetak}}%
+%
+%naustrian%
+\addto\captionsnaustrian{\def\listofsongsname{Liederverzeichnis}}%
+\addto\captionsnaustrian{\def\LBsongComposer{Komponist}}%
+\addto\captionsnaustrian{\def\LBsongLyricist{Textdichter}}%
+\addto\captionsnaustrian{\def\LBsongEditor{Herausgeber}}%
+\addto\captionsnaustrian{\def\LBsongYear{Jahr}}%
+\addto\captionsnaustrian{\def\LBsongCopyright{Urheberrecht}}%
+\addto\captionsnaustrian{\def\LBsongEditorialOffice{Redaktion}}%
+\addto\captionsnaustrian{\def\LBsongEditon{Auflage}}%
+\addto\captionsnaustrian{\def\LBsongPrint{Druck}}%
+%
+%newzealand%
+\addto\captionsnewzealand{\def\listofsongsname{Song list}}%
+\addto\captionsnewzealand{\def\LBsongComposer{Composer}}%
+\addto\captionsnewzealand{\def\LBsongLyricist{Lyricist}}%
+\addto\captionsnewzealand{\def\LBsongEditor{Editor}}%
+\addto\captionsnewzealand{\def\LBsongYear{Year}}%
+\addto\captionsnewzealand{\def\LBsongCopyright{Copyright}}%
+\addto\captionsnewzealand{\def\LBsongEditorialOffice{Editorial office}}%
+\addto\captionsnewzealand{\def\LBsongEditon{Edition}}%
+\addto\captionsnewzealand{\def\LBsongPrint{Print}}%
+%
+%ngerman%
+\addto\captionsngerman{\def\listofsongsname{Liederverzeichnis}}%
+\addto\captionsngerman{\def\LBsongComposer{Komponist}}%
+\addto\captionsngerman{\def\LBsongLyricist{Texter}}%
+\addto\captionsngerman{\def\LBsongEditor{Herausgeber}}%
+\addto\captionsngerman{\def\LBsongYear{Jahr}}%
+\addto\captionsngerman{\def\LBsongCopyright{Urheberrecht}}%
+\addto\captionsngerman{\def\LBsongEditorialOffice{Redaktion}}%
+\addto\captionsngerman{\def\LBsongEditon{Auflage}}%
+\addto\captionsngerman{\def\LBsongPrint{Druck}}%
+%
+%norsk%
+\addto\captionsnorsk{\def\listofsongsname{Sangliste}}%
+\addto\captionsnorsk{\def\LBsongComposer{Komponist}}%
+\addto\captionsnorsk{\def\LBsongLyricist{Tekstforfatter}}%
+\addto\captionsnorsk{\def\LBsongEditor{Redaktør}}%
+\addto\captionsnorsk{\def\LBsongYear{År}}%
+\addto\captionsnorsk{\def\LBsongCopyright{Opphavsrett}}%
+\addto\captionsnorsk{\def\LBsongEditorialOffice{Redaksjon}}%
+\addto\captionsnorsk{\def\LBsongEditon{Utgave}}%
+\addto\captionsnorsk{\def\LBsongPrint{Trykk}}%
+%
+%nynorsk%
+\addto\captionsnynorsk{\def\listofsongsname{Songliste}}%
+\addto\captionsnynorsk{\def\LBsongComposer{Komponist}}%
+\addto\captionsnynorsk{\def\LBsongLyricist{Tekstforfattar}}%
+\addto\captionsnynorsk{\def\LBsongEditor{Redaktør}}%
+\addto\captionsnynorsk{\def\LBsongYear{År}}%
+\addto\captionsnynorsk{\def\LBsongCopyright{Opphavsrett}}%
+\addto\captionsnynorsk{\def\LBsongEditorialOffice{Redaksjon}}%
+\addto\captionsnynorsk{\def\LBsongEditon{Utgåve}}%
+\addto\captionsnynorsk{\def\LBsongPrint{Trykk}}%
+%
+%polish%
+\addto\captionspolish{\def\listofsongsname{Wykaz piosenek}}%
+\addto\captionspolish{\def\LBsongComposer{Kompozytor}}%
+\addto\captionspolish{\def\LBsongLyricist{Autor tekstów}}%
+\addto\captionspolish{\def\LBsongEditor{Redaktor}}%
+\addto\captionspolish{\def\LBsongYear{Rok}}%
+\addto\captionspolish{\def\LBsongCopyright{Prawo autorskie}}%
+\addto\captionspolish{\def\LBsongEditorialOffice{Redakcja}}%
+\addto\captionspolish{\def\LBsongEditon{Wydanie}}%
+\addto\captionspolish{\def\LBsongPrint{Druk}}%
+%
+%polutonikogreek%
+\addto\captionspolutonikogreek{\def\listofsongsname{Kατάλογος τραγουδιών}}%
+\addto\captionspolutonikogreek{\def\LBsongComposer{Συνθέτης}}%
+\addto\captionspolutonikogreek{\def\LBsongLyricist{Στιχουργός}}%
+\addto\captionspolutonikogreek{\def\LBsongEditor{Eκδότης}}%
+\addto\captionspolutonikogreek{\def\LBsongYear{Xρόνος}}%
+\addto\captionspolutonikogreek{\def\LBsongCopyright{Πνευματικά δικαιώματα}}%
+\addto\captionspolutonikogreek{\def\LBsongEditorialOffice{Συντακτική ομάδα}}%
+\addto\captionspolutonikogreek{\def\LBsongEditon{Éκδοση}}%
+\addto\captionspolutonikogreek{\def\LBsongPrint{Eκτύπωση}}%
+%
+%portuges%
+\addto\captionsportugues{\def\listofsongsname{Índice de canções}}%
+\addto\captionsportuges{\def\LBsongComposer{Compositor}}%
+\addto\captionsportuges{\def\LBsongLyricist{Letrista}}%
+\addto\captionsportuges{\def\LBsongEditor{Editor}}%
+\addto\captionsportuges{\def\LBsongYear{Ano}}%
+\addto\captionsportuges{\def\LBsongCopyright{Direitos autorais}}%
+\addto\captionsportuges{\def\LBsongEditorialOffice{Redação}}%
+\addto\captionsportuges{\def\LBsongEditon{Edição}}%
+\addto\captionsportuges{\def\LBsongPrint{Impressão}}%
+%
+%portuguese%
+\addto\captionsportuguese{\def\listofsongsname{Índice de canções}}%
+\addto\captionsportuguese{\def\LBsongComposer{Compositor}}%
+\addto\captionsportuguese{\def\LBsongLyricist{Letrista}}%
+\addto\captionsportuguese{\def\LBsongEditor{Editor}}%
+\addto\captionsportuguese{\def\LBsongYear{Ano}}%
+\addto\captionsportuguese{\def\LBsongCopyright{Direitos autorais}}%
+\addto\captionsportuguese{\def\LBsongEditorialOffice{Redação}}%
+\addto\captionsportuguese{\def\LBsongEditon{Edição}}%
+\addto\captionsportuguese{\def\LBsongPrint{Impressão}}%
+%
+%romanian%
+\addto\captionsromanian{\def\listofsongsname{Listă de cântece}}%
+\addto\captionsromanian{\def\LBsongComposer{Compozitor}}%
+\addto\captionsromanian{\def\LBsongLyricist{Textier}}%
+\addto\captionsromanian{\def\LBsongEditor{Editor}}%
+\addto\captionsromanian{\def\LBsongYear{An}}%
+\addto\captionsromanian{\def\LBsongCopyright{Drepturi de autor}}%
+\addto\captionsromanian{\def\LBsongEditorialOffice{Redacție}}%
+\addto\captionsromanian{\def\LBsongEditon{Ediție}}%
+\addto\captionsromanian{\def\LBsongPrint{Tipărire}}%
+%
+%russian%
+\addto\captionsrussian{\def\listofsongsname{Cписок песен}}%
+\addto\captionsrussian{\def\LBsongComposer{Kомпозитор}}%
+\addto\captionsrussian{\def\LBsongLyricist{Aвтор текстов}}%
+\addto\captionsrussian{\def\LBsongEditor{Pедактор}}%
+\addto\captionsrussian{\def\LBsongYear{Год}}%
+\addto\captionsrussian{\def\LBsongCopyright{Aвторские права}}%
+\addto\captionsrussian{\def\LBsongEditorialOffice{Pедакция}}%
+\addto\captionsrussian{\def\LBsongEditon{Издание}}%
+\addto\captionsrussian{\def\LBsongPrint{Печать}}%
+%
+%samin%
+\addto\captionssamin{\def\listofsongsname{Lávvut bokte}}%
+\addto\captionssamin{\def\LBsongComposer{Kompozitør}}%
+\addto\captionssamin{\def\LBsongLyricist{Lyrikforfattar}}%
+\addto\captionssamin{\def\LBsongEditor{Editor}}%
+\addto\captionssamin{\def\LBsongYear{År}}%
+\addto\captionssamin{\def\LBsongCopyright{Forfattarréttindi}}%
+\addto\captionssamin{\def\LBsongEditorialOffice{Ritstjórn}}%
+\addto\captionssamin{\def\LBsongEditon{Útgåva}}%
+\addto\captionssamin{\def\LBsongPrint{Prentun}}%
+%
+%scottish%
+\addto\captionsscottish{\def\listofsongsname{Song list}}%
+\addto\captionsscottish{\def\LBsongComposer{Composer}}%
+\addto\captionsscottish{\def\LBsongLyricist{Lyricist}}%
+\addto\captionsscottish{\def\LBsongEditor{Editor}}%
+\addto\captionsscottish{\def\LBsongYear{Year}}%
+\addto\captionsscottish{\def\LBsongCopyright{Copyright}}%
+\addto\captionsscottish{\def\LBsongEditorialOffice{Editorial office}}%
+\addto\captionsscottish{\def\LBsongEditon{Edition}}%
+\addto\captionsscottish{\def\LBsongPrint{Print}}%
+%
+%serbian%
+\addto\captionsserbian{\def\listofsongsname{Листа песама}}%
+\addto\captionsserbian{\def\LBsongComposer{Kомпозитор}}%
+\addto\captionsserbian{\def\LBsongLyricist{Tекстописац}}%
+\addto\captionsserbian{\def\LBsongEditor{Уредник}}%
+\addto\captionsserbian{\def\LBsongYear{Година}}%
+\addto\captionsserbian{\def\LBsongCopyright{Aуторска права}}%
+\addto\captionsserbian{\def\LBsongEditorialOffice{Pедакција}}%
+\addto\captionsserbian{\def\LBsongEditon{Іzdanje}}%
+\addto\captionsserbian{\def\LBsongPrint{Печат}}%
+%
+%slovak%
+\addto\captionsslovak{\def\listofsongsname{Zoznam piesní}}%
+\addto\captionsslovak{\def\LBsongComposer{Skladateľ}}%
+\addto\captionsslovak{\def\LBsongLyricist{Textár}}%
+\addto\captionsslovak{\def\LBsongEditor{Editor}}%
+\addto\captionsslovak{\def\LBsongYear{Rok}}%
+\addto\captionsslovak{\def\LBsongCopyright{Autorské práva}}%
+\addto\captionsslovak{\def\LBsongEditorialOffice{Redakcia}}%
+\addto\captionsslovak{\def\LBsongEditon{Vydanie}}%
+\addto\captionsslovak{\def\LBsongPrint{Tlač}}%
+%
+%slovene%
+\addto\captionsslovene{\def\listofsongsname{Seznam pesmi}}%
+\addto\captionsslovene{\def\LBsongComposer{Kompozitor}}%
+\addto\captionsslovene{\def\LBsongLyricist{Besedni pisec}}%
+\addto\captionsslovene{\def\LBsongEditor{Urednik}}%
+\addto\captionsslovene{\def\LBsongYear{Leto}}%
+\addto\captionsslovene{\def\LBsongCopyright{Avtorska pravica}}%
+\addto\captionsslovene{\def\LBsongEditorialOffice{Uredništvo}}%
+\addto\captionsslovene{\def\LBsongEditon{Izdaja}}%
+\addto\captionsslovene{\def\LBsongPrint{Tiskanje}}%
+%
+%spanish%
+\addto\captionsspanish{\def\listofsongsname{Lista de canciones}}%
+\addto\captionsspanish{\def\LBsongComposer{Compositor}}%
+\addto\captionsspanish{\def\LBsongLyricist{Letrista}}%
+\addto\captionsspanish{\def\LBsongEditor{Editor}}%
+\addto\captionsspanish{\def\LBsongYear{Año}}%
+\addto\captionsspanish{\def\LBsongCopyright{Derechos de autor}}%
+\addto\captionsspanish{\def\LBsongEditorialOffice{Redacción}}%
+\addto\captionsspanish{\def\LBsongEditon{Edición}}%
+\addto\captionsspanish{\def\LBsongPrint{Impresión}}%
+%
+%swedish%
+\addto\captionsswedish{\def\listofsongsname{Låtlista}}%
+\addto\captionsswedish{\def\LBsongComposer{Kompositör}}%
+\addto\captionsswedish{\def\LBsongLyricist{Textförfattare}}%
+\addto\captionsswedish{\def\LBsongEditor{Redaktör}}%
+\addto\captionsswedish{\def\LBsongYear{År}}%
+\addto\captionsswedish{\def\LBsongCopyright{Upphovsrätt}}%
+\addto\captionsswedish{\def\LBsongEditorialOffice{Redaktion}}%
+\addto\captionsswedish{\def\LBsongEditon{Upplaga}}%
+\addto\captionsswedish{\def\LBsongPrint{Tryck}}%
+%
+%turkish%
+\addto\captionsturkish{\def\listofsongsname{Şarkı listesi}}%
+\addto\captionsturkish{\def\LBsongComposer{Besteci}}%
+\addto\captionsturkish{\def\LBsongLyricist{Şarkı sözleri yazarı}}%
+\addto\captionsturkish{\def\LBsongEditor{Editör}}%
+\addto\captionsturkish{\def\LBsongYear{Yıl}}%
+\addto\captionsturkish{\def\LBsongCopyright{Telif hakkı}}%
+\addto\captionsturkish{\def\LBsongEditorialOffice{Editörlük}}%
+\addto\captionsturkish{\def\LBsongEditon{Basım}}%
+\addto\captionsturkish{\def\LBsongPrint{Basım}}%
+%
+%ukrainian%
+\addto\captionsukrainian{\def\listofsongsname{Cписок пісень}}%
+\addto\captionsukrainian{\def\LBsongComposer{Kомпозитор}}%
+\addto\captionsukrainian{\def\LBsongLyricist{Aвтор текстів}}%
+\addto\captionsukrainian{\def\LBsongEditor{Pедактор}}%
+\addto\captionsukrainian{\def\LBsongYear{Pік}}%
+\addto\captionsukrainian{\def\LBsongCopyright{Aвторські права}}%
+\addto\captionsukrainian{\def\LBsongEditorialOffice{Pедакція}}%
+\addto\captionsukrainian{\def\LBsongEditon{Видання}}%
+\addto\captionsukrainian{\def\LBsongPrint{Друк}}%
+%
+%uppersorbian%
+\addto\captionsuppersorbian{\def\listofsongsname{Lědowe zapiska}}%
+\addto\captionsuppersorbian{\def\LBsongComposer{Kompozytor}}%
+\addto\captionsuppersorbian{\def\LBsongLyricist{Tekstowy pisar}}%
+\addto\captionsuppersorbian{\def\LBsongEditor{Redaktora}}%
+\addto\captionsuppersorbian{\def\LBsongYear{Rok}}%
+\addto\captionsuppersorbian{\def\LBsongCopyright{Autorowe prawa}}%
+\addto\captionsuppersorbian{\def\LBsongEditorialOffice{Redakcija}}%
+\addto\captionsuppersorbian{\def\LBsongEditon{Wudowa}}%
+\addto\captionsuppersorbian{\def\LBsongPrint{Druk}}%
+%
+%welsh%
+\addto\captionswelsh{\def\listofsongsname{Rhestr cân}}%
+\addto\captionswelsh{\def\LBsongComposer{Compositor}}%
+\addto\captionswelsh{\def\LBsongLyricist{Cyfansoddwr geiriau}}%
+\addto\captionswelsh{\def\LBsongEditor{Golygydd}}%
+\addto\captionswelsh{\def\LBsongYear{Blwyddyn}}%
+\addto\captionswelsh{\def\LBsongCopyright{Hawlfraint}}%
+\addto\captionswelsh{\def\LBsongEditorialOffice{Ystafell golygydd}}%
+\addto\captionswelsh{\def\LBsongEditon{Argraffiad}}%
+\addto\captionswelsh{\def\LBsongPrint{Argraffu}}%
+%
+%UKenglish%
+\addto\captionsUKenglish{\def\listofsongsname{Song list}}%
+\addto\captionsUKenglish{\def\LBsongComposer{Composer}}%
+\addto\captionsUKenglish{\def\LBsongLyricist{Lyricist}}%
+\addto\captionsUKenglish{\def\LBsongEditor{Editor}}%
+\addto\captionsUKenglish{\def\LBsongYear{Year}}%
+\addto\captionsUKenglish{\def\LBsongCopyright{Copyright}}%
+\addto\captionsUKenglish{\def\LBsongEditorialOffice{Editorial office}}%
+\addto\captionsUKenglish{\def\LBsongEditon{Edition}}%
+\addto\captionsUKenglish{\def\LBsongPrint{Print}}%
+%
+%USenglish%
+\addto\captionsUSenglish{\def\listofsongsname{Song list}}%
+\addto\captionsUSenglish{\def\LBsongComposer{Composer}}%
+\addto\captionsUSenglish{\def\LBsongLyricist{Lyricist}}%
+\addto\captionsUSenglish{\def\LBsongEditor{Editor}}%
+\addto\captionsUSenglish{\def\LBsongYear{Year}}%
+\addto\captionsUSenglish{\def\LBsongCopyright{Copyright}}%
+\addto\captionsUSenglish{\def\LBsongEditorialOffice{Editorial office}}%
+\addto\captionsUSenglish{\def\LBsongEditon{Edition}}%
+\addto\captionsUSenglish{\def\LBsongPrint{Print}}%
+%
+%EOF%


Property changes on: trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-babel.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Added: trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-listofsongs.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-listofsongs.sty	                        (rev 0)
+++ trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-listofsongs.sty	2025-01-21 20:46:10 UTC (rev 73548)
@@ -0,0 +1,202 @@
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                   %
+%      Made by Gabriel Ruprecht     %
+%                                   %
+% This work is published under the  %
+% LaTeX project public license 1.3  %
+%                                   %
+%       Package version 1.1.0       %
+%            2025-01-20             %
+%                                   %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesPackage{liederbuch-listofsongs}[version 1.1.0]
+
+% Default names; Has Babel support in liederbuch.sty
+\def\listofsongsname{List of Songs}
+\def\LBsongComposer{composer}%
+\def\LBsongLyricist{lyricist}%
+\def\LBsongEditor{editor}%
+\def\LBsongYear{year}%
+\def\LBsongCopyright{copyright}%
+\def\LBsongEditorialOffice{editorial office}%
+\def\LBsongEditon{edition}%
+\def\LBsongPrint{print}%
+
+
+% The command, that outputs the list of songs. Mostly taken from listoffigures
+\def\listofsongs{%
+    \newif\ifGFM at LB@chapterExists%
+    \GFM at LB@chapterExiststrue%
+    %
+    \ifx\undefined\chapter\relax%
+        \GFM at LB@chapterExistsfalse%
+    \fi%
+    %
+    \if at twocolumn%
+        \@restonecoltrue%
+        \onecolumn %
+    \else%
+        \@restonecolfalse%
+    \fi%
+    \ifGFM at LB@chapterExists\relax%
+    %starred/unstarred?%
+        \chapter*{\listofsongsname}%
+    \else%
+        \section*{\listofsongsname}%
+    \fi%
+    \@mkboth{\MakeUppercase \listofsongsname }{\MakeUppercase \listofsongsname }%
+    %Print nothing for one run, when the los style is changed
+    \ifx\listofsongsstyleprevrun\listofsongsstylevalue%
+    \else%
+    \def\l at song##1##2{}%
+    \fi%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    %Most important line is here:
+    \@starttoc{los}%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+    \if at restonecol%
+        \twocolumn%
+    \fi%
+}
+
+
+% This is needed to check, if the same style is used than last
+% time. If not, there will be no output for one compilation.
+\AtEndDocument{
+\write\@auxout{\noexpand\gdef\noexpand\listofsongsstyleprevrun{\listofsongsstylevalue}}
+}
+
+
+% For checking, if a valid style had been selected.
+\newif\iflistofsongsstyleExists\relax
+\listofsongsstyleExistsfalse
+
+% Selects the style. Contains the default styles.
+\def\listofsongsstyle#1{%
+    \edef\listofsongsstylevalue{#1}%
+    \def\GFM at compareB{twolines}%
+    \ifx\listofsongsstylevalue\GFM at compareB\relax%
+    \listofsongsstyleTwolines\relax%
+    \listofsongsstyleExiststrue%
+    \fi%
+    \def\GFM at compareB{semitwolines}%
+    \ifx\listofsongsstylevalue\GFM at compareB\relax%
+    \listofsongsstyleSemiTwolines\relax%
+    \listofsongsstyleExiststrue%
+    \fi%
+    \def\GFM at compareB{simple}%
+    \ifx\listofsongsstylevalue\GFM at compareB\relax%
+    \listofsongsstyleSimple\relax%
+    \listofsongsstyleExiststrue%
+    \fi%
+    \def\GFM at compareB{simple with number}%
+    \ifx\listofsongsstylevalue\GFM at compareB\relax%
+    \listofsongsstyleSimplewithnumber\relax%
+    \listofsongsstyleExiststrue%
+    \fi%
+    \def\GFM at compareB{simple with document number}%
+    \ifx\listofsongsstylevalue\GFM at compareB\relax%
+    \listofsongsstyleSimplewithdocumentnumber\relax%
+    \listofsongsstyleExiststrue%
+    \fi%
+    % TODO: create style registering and 
+    \iflistofsongsstyleExists%
+    \else%
+    \PackageError{liederbuch}{liederbuch-listofsongs.sty, line 102: You tried to call a style for the list of songs, that is not defined.}{Did you make a typo? The default style is 'simple' and will automatically be used, if you don't use the command listofsongsstyle.}%
+    \fi%
+    \listofsongsstyleExistsfalse%
+}
+
+\@onlypreamble\listofsongsstyle
+
+% Default style twolines:
+% The definion of this is 90% taken from l at figure:
+\def\listofsongsstyleTwolines{%
+    \newdimen\GFM at LB@losDimA\relax%
+    \newdimen\GFM at LB@losDimB\relax%
+    \GFM at LB@losDimA=1.5em\relax%
+    \GFM at LB@losDimB=2.3em\relax%
+    %
+%    \let\l at song\l at figure
+    \def\l at song##1##2{%
+        \show##1\relax%
+        \wlog{This is a marker}
+%        \show##2\relax%
+        \def\GFM at LB@extract####1\csname ####2 at title\endcsname####3{
+            \def\GFM at LB@expandedNamePre{####1}%
+            \def\GFM at LB@expandedName{####2}%
+            \def\GFM at LB@expandedNameAfter{####3}%
+        }%
+        \expandafter\GFM at LB@extract##1\relax%
+%
+%%        \def\split####1={%
+% %           \def\GFM at LB@expandedName{####1}%
+%  %      }\split##1 at title=\relax%
+        \show\GFM at LB@expandedName%
+        \vskip 0.5em plus 0.05em minus 0.02em\relax%
+        \vskip \z@ \@plus .2\p@ %
+        {\leftskip \GFM at LB@losDimA\relax\rightskip \@tocrmarg \parfillskip -\rightskip \parindent \GFM at LB@losDimA\relax \@afterindenttrue \interlinepenalty \@M \leavevmode \@tempdima \GFM at LB@losDimB\relax \advance \leftskip \@tempdima \null \nobreak \hskip -\leftskip {\csname \GFM at LB@expandedName @title\endcsname }\newline\null%
+        \expandafter\ifx\csname \GFM at LB@expandedName @composer\endcsname \empty%
+        \else%
+        \csname \GFM at LB@expandedName @composer\endcsname\ -- \fi\csname%
+        \GFM at LB@expandedName @lyricist\endcsname%
+        \nobreak \leaders \hbox {$\m at th \mkern \@dotsep mu\hbox {.}\mkern \@dotsep mu$}\hfill \nobreak \hb at xt@ \@pnumwidth {\hfil \normalfont \normalcolor ##2\kern -\p@ \kern \p@ }\par }%
+    }%
+    \def\GFM at LB@addcontentsline{%
+        \addcontentsline{los}{song}{\unexpanded{\unexpanded{\csname}}\GFM at LB@expandedName @title\unexpanded{\unexpanded{\endcsname}}}%
+    }%
+}
+
+% Default style semitwolines
+% The definion of this is 90% taken from l at figure:
+\def\listofsongsstyleSemiTwolines{%
+    \newdimen\GFM at LB@losDimA\relax%
+    \newdimen\GFM at LB@losDimB\relax%
+    \GFM at LB@losDimA=1.5em\relax%
+    \GFM at LB@losDimB=2.3em\relax%
+    %
+    \def\l at song##1##2{%
+        \def\split####1&####2&####3={%
+            \def\GFM at LB@losTitle{####1}%
+            \def\GFM at LB@losComposer{####2}%
+            \def\GFM at LB@losLyricist{####3}%
+        }\split##1=\relax%
+        \vskip 0.5em plus 0.05em minus 0.02em\relax%
+        \vskip \z@ \@plus .2\p@ %
+        {\leftskip \GFM at LB@losDimA\relax\rightskip \@tocrmarg \parfillskip -\rightskip \parindent \GFM at LB@losDimA\relax \@afterindenttrue \interlinepenalty \@M \leavevmode \@tempdima \GFM at LB@losDimB\relax \advance \leftskip \@tempdima \null \nobreak \hskip -\leftskip {\GFM at LB@losTitle}\ifx\GFM at LB@losComposer\empty\else\newline\null\GFM at LB@losComposer\ -- \fi\GFM at LB@losLyricist%
+        \nobreak \leaders \hbox {$\m at th \mkern \@dotsep mu\hbox {.}\mkern \@dotsep mu$}\hfill \nobreak \hb at xt@ \@pnumwidth {\hfil \normalfont \normalcolor ##2\kern -\p@ \kern \p@ }\par }%
+    }%
+    \def\GFM at LB@addcontentsline{%
+        \addcontentsline{los}{song}{%
+            \csname \GFM at LB@expandedName @title\endcsname &\csname \GFM at LB@expandedName @composer\endcsname &\csname \GFM at LB@expandedName @lyricist\endcsname%
+        }%
+    }%
+}
+
+
+% Default style simple:
+\def\listofsongsstyleSimple{%
+    \let\l at song\l at figure\relax%
+    \def\GFM at LB@addcontentsline{%
+        \addcontentsline{los}{song}{\csname \GFM at LB@expandedName @title\endcsname }%
+    }%
+}
+
+% Default style simple with number
+\def\listofsongsstyleSimplewithnumber{%
+    \let\l at song\l at figure\relax%
+    \def\GFM at LB@addcontentsline{%
+        \addcontentsline{los}{song}{\numberline{\GFM at LB@number }\csname \GFM at LB@expandedName @title\endcsname }%
+    }%
+}
+
+% Default style simple with document number
+\def\listofsongsstyleSimplewithdocumentnumber{%
+    \let\l at song\l at figure\relax%
+    \def\GFM at LB@addcontentsline{%
+        \addcontentsline{los}{song}{\numberline {\arabic{liedcounter}}\csname \GFM at LB@expandedName @title\endcsname }%
+    }%
+}
+
+%default value:
+\listofsongsstyle{simple}


Property changes on: trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch-listofsongs.sty
___________________________________________________________________
Added: svn:eol-style
## -0,0 +1 ##
+native
\ No newline at end of property
Modified: trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch.sty	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/tex/latex/liederbuch/liederbuch.sty	2025-01-21 20:46:10 UTC (rev 73548)
@@ -1,11 +1,74 @@
-\ProvidesPackage{liederbuch}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                   %
+%      Made by Gabriel Ruprecht     %
+%                                   %
+% This work is published under the  %
+% LaTeX project public license 1.3  %
+%                                   %
+%       Package version 1.1.0       %
+%            2025-01-20             %
+%                                   %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesPackage{liederbuch}[version 1.1.0]
 \RequirePackage{etoolbox}
 \RequirePackage{environ}
 \RequirePackage{xparse}
 \RequirePackage{pgfmath}
 
+\RequirePackage{liederbuch-listofsongs}
 
+%expands twice:
+%\edef\expandhere{\unexpanded\expandafter\expandafter\expandafter{\xy}}
 
+
+%%%%%%%%%%%%%
+%%% Babel %%%
+%%%%%%%%%%%%%
+
+%Make sure Babel is loaded before Liederbuch - part 1
+\newif\ifGFM at babel@loaded at before@LB
+\GFM at babel@loaded at before@LBfalse
+
+
+\@ifpackageloaded{babel}
+{%
+%Make sure Babel is loaded before Liederbuch - part 2
+\GFM at babel@loaded at before@LBtrue
+%
+\input{liederbuch-babel.sty}%
+%
+%%%This is obsolete code now:
+%%Make German quotes less fragile - part 1:
+%\let\GFM at protect@glqq\glqq%
+%\let\GFM at protect@grqq\grqq%
+%%
+%\def\glqq{\unexpanded{\glqq}}%
+%\def\grqq{\unexpanded{\grqq}}%
+%%
+%%
+%%
+%\AtBeginDocument{%
+%%
+%%Make German quotes less fragile - part 2:
+%\let\glqq\GFM at protect@glqq%
+%\let\grqq\GFM at protect@grqq%
+%%
+%}%
+%
+%
+}{}%@ifpackageloaded{babel}
+
+\AtBeginDocument{%
+%Make sure Babel is loaded before Liederbuch - part 3
+\ifGFM at babel@loaded at before@LB%
+\else%
+    \@ifpackageloaded{babel}{%
+        \PackageError{liederbuch.sty}{You must load babel before liederbuch, not after}{I will continue anyway and hope for the best. Some things might break.}%
+    }{}%
+\fi%
+}
+
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%% Special music characters %%%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
@@ -14,11 +77,12 @@
 \newcommand{\repeatright}{:\raisebox{-0.28em}{\hspace{-0.01em}\rule{0.025em}{1em}\hspace{0.075em}\rule{0.075em}{1em}\hspace{0.075em}}} 
 
 
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
-%%% Handling of the meta data %%%
+%%% Handling of the metadata %%%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
-%%% parse meta data
+%%% parse metadata
 %unpackages a list of data in the form of [first=xy & second = xz& third= som3thing ...]
 %This creates the macros:
 %\GFM at LB@lied@<songbookname>@<song variant>@<song number>@first{xy}
@@ -50,28 +114,40 @@
 	\loop%
 		\ifnum\ipp>1000\relax%
 			\loopingfalse\relax%
-			\wlog{Error: Too much meta data (>1000 Elements)}%
+			    \PackageError{liederbuch}{Too many metadata elements (>1000 elements)}{Check your metadata definitions in your source songbook, the one you imported / built in the preamble.}%
 		\fi%
 		\expandafter\ifx\csname tempList\the\ipp\endcsname\relax%
 			\loopingfalse\relax%
 		\else%
-			\edef\temp{\csuse{tempList\the\ipp}}%
+		    %select parse list element and copy to temp:
+            \expandafter\let%
+                \expandafter\temp%
+                \csname tempList\the\ipp\endcsname\relax%
 			\edef\tempA{\expandafter\choppyA\temp}%
-			\edef\tempB{\expandafter\choppyB\temp}%
-			\trim at spaces@in{\tempA}%
-			\trim at spaces@in{\tempB}%
-			%
-			%Most important line is here:
-			%
-			\global\csedef{GFM at LB@lied@\GFM at LB@LiederbuchNameTmp @\GFM at LB@LiederbuchVariantTmp @\GFM at LB@LiederbuchNumberTmp @\tempA}{\expandafter\noexpand\tempB}%songbook at song variant at song number
-			\advance\ipp by1\relax%
-		\fi%
-	\iflooping\repeat%
-	}%
+            %expand temp twice and save to tempB, 
+            %weird stuff, don't touch:
+			\edef\tempB{%
+                \unexpanded\expandafter%
+                \expandafter\expandafter%
+                {%
+			    \expandafter\choppyB\temp%
+			    }%
+            }%
+            %trim spaces on both:
+            \trim at spaces@in{\tempA}%
+            \trim at spaces@in{\tempB}%
+            %
+            %Most important line is here:
+            %
+            \global\cslet{GFM at LB@lied@\GFM at LB@songbook @\GFM at LB@variant @\GFM at LB@number @\tempA}{\tempB}%songbook at song variant at song number
+            \advance\ipp by1\relax%
+        \fi%
+    \iflooping\repeat%
+    }%
 }}%
 
 
-%tweakMetadata allows completing or editing meta data of a certain song.
+%tweakMetadata allows completing or editing metadata of a certain song.
 \def\tweakMetadata#1#2#3#4{{%structure is analogue to \LBsong
 	\def\GFM at LB@LiederbuchNameTmp{#1}%songbook
 	\def\GFM at LB@LiederbuchNumberTmp{#2}%song number
@@ -179,11 +255,11 @@
 }
 
 
-\NewDocumentCommand\notenzeile{O{\linewidth} m m O{\empty} O{\empty} O{\empty} O{\empty} O{\empty}}{%
+\NewDocumentCommand\notenzeile{O{\linewidth} m m o o o o o}{%
 	{%
 		%Multilines
-		\ifx\multiline\undefined%
-			\NewDocumentCommand{\multiline}{m m m O{\empty} O{\empty} O{\empty} O{\empty}}{%
+%		\ifx\multiline\undefined%
+			\DeclareDocumentCommand{\multiline}{m m m o o o o}{%
 				\parbox[c]{##1}{%
 					\newdimen\temp%
 					\temp=\dimexpr\f at size pt%				
@@ -191,30 +267,26 @@
 					\makebox[\linewidth]{##2}%
 					\spaceBetweenSongLyrics%
 					\makebox[\linewidth]{##3}%
-					\ifx##4\empty%
-					\else%
+                    \IfNoValueTF{##4}{}{%
 						\spaceBetweenSongLyrics%
 						\makebox[\linewidth]{##4}%
-					\fi%
-					\ifx##5\empty%
-					\else%
+					}%
+                    \IfNoValueTF{##5}{}{%
 						\spaceBetweenSongLyrics%
 						\makebox[\linewidth]{##5}%
-					\fi%
-					\ifx##6\empty%
-					\else%
+					}%
+                    \IfNoValueTF{##6}{}{%
 						\spaceBetweenSongLyrics%
 						\makebox[\linewidth]{##6}%
-					\fi%
-					\ifx##7\empty%
-					\else%
+					}%
+                    \IfNoValueTF{##7}{}{%
 						\spaceBetweenSongLyrics%
 						\makebox[\linewidth]{##7}%
-					\fi%
+					}%
 %					\vskip 0.27\temp%%
 				}%
 			}%
-		\fi% multiline undefined?
+%		\fi% multiline undefined?
 		%
 		\noindent%
 		\begin{minipage}{#1}%
@@ -224,31 +296,26 @@
 			\relax\mbox{}\spaceAfterNotes%
 			\spaceBeforeSongLyrics%
 			\GFM at LB@songLyrics{#3}%
-			\ifx#4\empty%
-			\else%
+            \IfNoValueTF{#4}{}{%
 				\spaceBetweenSongLyrics%
 				\GFM at LB@songLyrics{#4}%
-			\fi%
-			\ifx#5\empty%
-			\else%
+			}%
+            \IfNoValueTF{#5}{}{%
 				\spaceBetweenSongLyrics%
 				\GFM at LB@songLyrics{#5}%
-			\fi%
-			\ifx#6\empty%
-			\else%
+			}%
+            \IfNoValueTF{#6}{}{%
 				\spaceBetweenSongLyrics%
 				\GFM at LB@songLyrics{#6}%
-			\fi%
-			\ifx#7\empty%
-			\else%
+			}%
+            \IfNoValueTF{#7}{}{%
 				\spaceBetweenSongLyrics%
 				\GFM at LB@songLyrics{#7}%
-			\fi%
-			\ifx#8\empty%
-			\else%
+			}%
+            \IfNoValueTF{#8}{}{%
 				\spaceBetweenSongLyrics%
 				\GFM at LB@songLyrics{#8}%
-			\fi%
+			}%
 			\spaceAfterSongLyrics%
 		\end{minipage}\vskip0pt%
 			\ifnum\c at GFM@staveLineNumberBreakPointA=\c at staveLineNumber\relax%
@@ -285,6 +352,7 @@
 \pageBreakAllowedfalse %default
 \newlength{\GFM at LB@indent at temp@length}
 
+%automatic strophe numbering
 \newcounter{GFM at strophe@counter}
 \setcounter{GFM at strophe@counter}{-1}
 
@@ -307,9 +375,24 @@
 }
 
 
-%automatic strophe numbering
+%Set a verse separator
+\long\def\setVerseSeparator#1{%
+  \long\def\GFM at LB@verseSeparator{#1}%
+}
 
-\NewEnviron{strophe}[1][-1]{
+%default value
+\long\def\GFM at LB@verseSeparator{ }%
+
+%strophe environment
+\NewEnviron{strophe}[1][-1]{%
+  % The verse command shall only be available inside strophe to minimize possible interference.
+  \DeclareDocumentCommand{\verse}{o}{%
+    \unskip\null\IfNoValueTF{##1}{\GFM at LB@verseSeparator}{##1%
+    \null\ignorespaces}%
+  }%
+%
+%
+%
   \ifnum#1=-1%
   %leer
   \else%
@@ -434,24 +517,62 @@
 }%
 
 
+%%%%%%%%%%%%%%%%%%%%%%%%
+%%%                  %%%
+%%% Automatic labels %%%
+%%%                  %%%
+%%%%%%%%%%%%%%%%%%%%%%%%
 
+
+\newif\ifGFM at LB@duplicate at label@warning%
+\GFM at LB@duplicate at label@warningtrue
+
+\def\LBduplicateLabelWarningOn{%
+    \GFM at LB@duplicate at label@warningtrue%
+}%
+
+\def\LBduplicateLabelWarningOff{%
+    \GFM at LB@duplicate at label@warningoff%
+}%
+
+\def\GFM at LB@iteratedLabel#1{%
+    \ifcsundef{c@#1counter}{%
+        \newcounter{#1counter}%
+        \setcounter{#1counter}{1}%
+        \label{#1}%
+    }{%
+        \label{#1_\alph{#1counter}}%
+        \stepcounter{#1counter}%
+        \ifGFM at LB@duplicate at label@warning%
+        \PackageWarning{liederbuch.sty - line 546}{You included [Songbook: \GFM at LB@songbook ][Number: \GFM at LB@number ][Variant: \GFM at LB@variant ] more than once. Is this intentional? You can switch this message off via \unexpanded{\LBduplicateLabelWarningOff}. Warning occured}%
+        \fi%
+    }%
+}
+
+
+
+
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 %%% Environments for creating  %%%
-%%% the songbooks (liederbuch) %%% 
+%%% the songbooks (liederbuch) %%%
 %%% and the songs (lied)       %%%
 %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
 
+\newcounter{liedcounter}
+\setcounter{liedcounter}{0}
+
 %liederbuch environment
 \NewEnviron{liederbuch}[2][]{%
-\def\GFM at LB@LiederbuchNameTmp{#2}%
+\def\GFM at LB@songbook{#2}%
 %%lied environment %cslet
 \NewEnviron{lied}[3][]{% 
-%##1=meta data ##2=variant ##3=nummer
-\def\GFM at LB@LiederbuchVariantTmp{##2}%
-\def\GFM at LB@LiederbuchNumberTmp{##3}%
+%##1=metadata ##2=variant ##3=nummer
+\def\GFM at LB@variant{##2}%
+\def\GFM at LB@number{##3}%
+\edef\GFM at LB@expandedName{GFM at LB@lied@\GFM at LB@songbook @\GFM at LB@variant @\GFM at LB@number}%
 \GFM at LB@unpackage{##1}%
 \GFM at LB@unpackage{#1}%
-\global\cslet{liedBody;\GFM at LB@LiederbuchNameTmp;##2;##3}\BODY%
+\global\cslet{\GFM at LB@expandedName liedBody}\BODY%
 }%
 \BODY% Without this, the command sequences inside the environment won't be defined. That means, the whole content of the songbook (liederbuch) is thrown away.
 }
@@ -461,26 +582,62 @@
 \newcommand{\LBsong}[3]{%
 %#1=songbook #2=number #3=variant
 {%local
+\def\GFM at LB@songbook{#1}%
+\def\GFM at LB@number{#2}%
+\def\GFM at LB@variant{#3}%
+\edef\GFM at LB@expandedName{GFM at LB@lied@\GFM at LB@songbook @\GFM at LB@variant @\GFM at LB@number}%
 \setlength{\parindent}{0pt}%
 \setlength{\parskip}{0pt}%
 %
 %
 \NewDocumentCommand{\print}{O{\empty} m}{%
-    \expandafter\ifx\csname GFM at LB@lied@#1@#3@#2@##2\endcsname\relax%
+    \expandafter\ifx\csname \GFM at LB@expandedName @##2\endcsname\relax%
     \else%
         ##1%
     \fi%
-    \csname GFM at LB@lied@#1@#3@#2@##2\endcsname%
+    \csname \GFM at LB@expandedName @##2\endcsname%
     \mbox{}%
 }%
-\GFM at LB@Head%
 %
-\setcounter{staveLineNumber}{1}%reset note line counter
+\expandafter\ifx\csname\GFM at LB@expandedName liedBody\endcsname\relax%
+    \PackageError{liederbuch}{You tried to call the song \GFM at LB@expandedName , but it doesn't exist.}{Verify, that the song exists. Check songbook, songnumber and variant.}%
+\else%
+    %
+    \GFM at LB@Head%
+    %
+    \xdef\@currentlabelname{%
+        \csname%
+        \GFM at LB@expandedName @title%
+        \endcsname%
+    }%
+    %
+    % (Hyper)ref functionality:
+    \refstepcounter{liedcounter}%
+%    \let\GFM at currentlabel\@currentlabel%
+    %
+    % Labeling, so each song can be referred to
+    % by a well-known label:
+    \GFM at LB@iteratedLabel{%
+        LBsong%
+        _\GFM at LB@songbook %
+        _\GFM at LB@variant %
+        _\GFM at LB@number %
+    }%
+    %
+    % adds song to list of songs
+    \csname GFM at LB@addcontentsline\endcsname% For safety, in case an invalid style name was selected.
+    %
+    \setcounter{staveLineNumber}{1}%reset note line counter
+    %
+    %%%%%%%%%%%%%%%%%%%%%%%%%%
+    \csuse{\GFM at LB@expandedName liedBody}%
+    %%%%%%%%%%%%%%%%%%%%%%%%%%
+    %
+    \GFM at LB@Foot%
+    %
+    %
+\fi%
 %
-%%%%%%%%%%%%%%%%%%%%%%%%%%
-\csuse{liedBody;#1;#3;#2}%
-%%%%%%%%%%%%%%%%%%%%%%%%%%
-%
 %reset page break points = no page breaks:
 \setcounter{GFM at staveLineNumberBreakPointA}{0}%
 \setcounter{GFM at staveLineNumberBreakPointB}{0}%
@@ -496,10 +653,8 @@
 \setcounter{GFM at stropheNumberBreakPointF}{0}%
 %
 %
-\GFM at LB@Foot%
-%
-%
 }%local
+%\let\@currentlabel\GFM at currentlabel
 \penalty-3500%
 }%
 
@@ -523,7 +678,7 @@
 \setSpaceAfterStropheValue{0pt plus 3pt}
 \setSpaceBetweenSongLyricsValue{0pt plus 3pt}
 \setSpaceBeforeSongLyricsValue{0pt plus 1pt}
-\setSpaceAfterSongLyricsValue{0pt plus 3pt}
+\setSpaceAfterSongLyricsValue{3pt plus 3pt}
 \setSpaceBeforeFootValue{0pt plus 3pt}
 \setSpaceAfterFootValue{0pt plus 70pt}
 

Modified: trunk/Master/texmf-dist/tex/latex/liederbuch/printliederbuch.sty
===================================================================
--- trunk/Master/texmf-dist/tex/latex/liederbuch/printliederbuch.sty	2025-01-21 20:45:44 UTC (rev 73547)
+++ trunk/Master/texmf-dist/tex/latex/liederbuch/printliederbuch.sty	2025-01-21 20:46:10 UTC (rev 73548)
@@ -1,18 +1,35 @@
-\ProvidesPackage{printLiederbuch}
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+%                                   %
+%      Made by Gabriel Ruprecht     %
+%                                   %
+% This work is published under the  %
+% LaTeX project public license 1.3  %
+%                                   %
+%       Package version 1.1.0       %
+%            2025-01-20             %
+%                                   %
+%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
+\ProvidesPackage{printliederbuch}[version 1.1.0]
 
 \RequirePackage{liederbuch}
 \RequirePackage{hyperref}
 
-%toc @ begin
-%\AtBeginDocument{\tableofcontents}
+\listofsongsstyle{simple with number}
 
 \ExplSyntaxOn
 
 
 \newcommand{\printLiederbuch}[1]{
+% Select the highest toc level
+% depending on the document class
+\ifx\chapter\undefined
 \section{#1}
+\else
+\chapter{#1}
+\fi
   \fbox
    {
+   % Print songbook metadata
     \begin{tabular}{l l}
     Meta ~ data ~ name & Meta ~ data ~ value ~ \\
     \hline
@@ -24,8 +41,9 @@
 }
 
 
-\RenewEnviron{Liederbuch}[2][]{
+\RenewEnviron{liederbuch}[2][]{
   \gdef\equals{=}
+  \xdef\GFM at LB@songbook{#2}
   \global\cslet{liederbuchBody;#2}\BODY
   \tl_set:Nn \l_tmpa_tl { #1 }
   \tl_replace_all:Nnn \l_tmpa_tl { & } { \\ }
@@ -34,22 +52,53 @@
 }
 
 
-\NewDocumentEnvironment{Lied}{O{}mm +b}
+\NewDocumentEnvironment{lied}{O{}mm +b}
  {
-  \subsection{#3\ --\ Variant:\ #2}
-  \tl_set:Nn \l_tmpa_tl { #1 }
-  \tl_replace_all:Nnn \l_tmpa_tl { & } { \\ }
-  \tl_replace_all:Nnn \l_tmpa_tl { = } { & }
-  \fbox
-   {
-    \begin{tabular}{l l}
-    Meta ~ data ~ name & Meta ~ data ~ value ~ \\
-    \hline
-    \tl_use:N \l_tmpa_tl
-    \end{tabular}
-   }%fbox
-  \par#4\par
+    %Meta data unboxing is necessary to fill the listofsongs with content:
+    \def\GFM at LB@number{#2}%
+    \def\GFM at LB@variant{#3}%
+    \edef\GFM at LB@expandedName{GFM at LB@lied@\GFM at LB@songbook @\GFM at LB@variant @\GFM at LB@number}%
+    \GFM at LB@unpackage{#1}%
+    \def\GFM at LB@number{#3}%
+    \def\GFM at LB@variant{#2}%
+    
+    % Select the second highest toc level
+    % depending on the document class
+    \ifx\chapter\undefined
+        \subsection{#3\ --\ Variant:\ #2}
+    \else
+        \section{#3\ --\ Variant:\ #2}
+    \fi
+    
+    % Print song metadata
+    \tl_set:Nn \l_tmpa_tl { #1 }
+    \tl_replace_all:Nnn \l_tmpa_tl { & } { \\ }
+    \tl_replace_all:Nnn \l_tmpa_tl { = } { & }
+    \fbox
+    {
+        \begin{tabular}{l l}
+            Meta ~ data ~ name & Meta ~ data ~ value ~ \\
+            \hline
+            \tl_use:N \l_tmpa_tl
+        \end{tabular}
+    }%fbox
+    
+    % list of songs:
+    \xdef\@currentlabelname{\csname \GFM at LB@expandedName @title\endcsname}
+    \refstepcounter{liedcounter}
+    \addcontentsline{los}{song}{
+    \expandafter\ifx\csname \GFM at LB@expandedName @title\endcsname\relax
+    $<$ ~ No ~ title ~ $>$
+    \else
+    \csname \GFM at LB@expandedName @title\endcsname
+    \fi
+    }
+    
+    % Actual content
+    \par#4\par
 }{}
+
+
 \ExplSyntaxOff
 
 



More information about the tex-live-commits mailing list.