von Manuela » Fr 28. Mär 2025, 19:32
Wenn ich den Liedtext als Variable definiere, dann werden keine Zeilenumbrüche durchgeführt, selbst wenn ich den reinen Text zwischen \beginverse \endverse schreibe.
Mache ich etwas falsch oder ist dieses Verhalten beabsichtigt?
\documentclass[10pt,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\usepackage[a4paper,margin=4cm,top=4cm,nomarginpar,nofoot,nohead,headheight=0cm,headsep=0cm,footskip=0cm,bottom=4cm]{geometry}
\usepackage[lyric,noshading,nomeasures,noindexes]{songs}
\setlength{\sbarheight}{0.4pt}
\setlength{\cbarwidth}{0pt}
\setlength\parindent{0pt}
\versesep=1ex
\songcolumns{1}
\renewcommand\lyricfont{\normalfont\large}
\renewcommand\stitlefont{\normalfont\bfseries\huge}
\renewcommand{\versejustify}{\justifyleft}
\nosongnumbers
\pagenumbering{gobble}
\settowidth{\versenumwidth}{\it\LARGE 1-8\ }
\renewcommand{\printversenum}[1]{\lyricfont\makebox[\versenumwidth][r]{\it\LARGE#1\ }}
\newcommand{\liedtext}{
\beginverse
Alle Menschen müssen sterben,\\
alles Fleisch vergeht wie Heu.\\
Was da lebet, muß verderben,\\
soll es anders werden neu.\\
Dieser Leib, der muss verwesen,\\
wenn er anders soll genesen\\
zu der großen Herrlichkeit,\\
die den Frommen ist bereit.\\
\endverse
}
\newcommand{\liedtxt}{
Alle Menschen müssen sterben,
alles Fleisch vergeht wie Heu.
Was da lebet, muß verderben,
soll es anders werden neu.
Dieser Leib, der muss verwesen,
wenn er anders soll genesen
zu der großen Herrlichkeit,
die den Frommen ist bereit.
}
\newcommand{\titel}{Alle Menschen müssen sterben}
\begin{document}
\begin{songs}{}
\beginsong{\vspace{2mm} \titel}[
,sr={\Large Johann Georg Albinus (1624-1679)
} ]
\liedtext
\beginverse
Alle Menschen müssen sterben,
alles Fleisch vergeht wie Heu.
Was da lebet, muß verderben,
soll es anders werden neu.
Dieser Leib, der muss verwesen,
wenn er anders soll genesen
zu der großen Herrlichkeit,
die den Frommen ist bereit.
\endverse
\beginverse
\liedtxt
\endverse
\endsong
\end{songs}
\end{document}
Wenn ich den Liedtext als Variable definiere, dann werden keine Zeilenumbrüche durchgeführt, selbst wenn ich den reinen Text zwischen \beginverse \endverse schreibe.
Mache ich etwas falsch oder ist dieses Verhalten beabsichtigt?
[code]\documentclass[10pt,ngerman]{article}
\usepackage[T1]{fontenc}
\usepackage{fontspec}
\usepackage[a4paper,margin=4cm,top=4cm,nomarginpar,nofoot,nohead,headheight=0cm,headsep=0cm,footskip=0cm,bottom=4cm]{geometry}
\usepackage[lyric,noshading,nomeasures,noindexes]{songs}
\setlength{\sbarheight}{0.4pt}
\setlength{\cbarwidth}{0pt}
\setlength\parindent{0pt}
\versesep=1ex
\songcolumns{1}
\renewcommand\lyricfont{\normalfont\large}
\renewcommand\stitlefont{\normalfont\bfseries\huge}
\renewcommand{\versejustify}{\justifyleft}
\nosongnumbers
\pagenumbering{gobble}
\settowidth{\versenumwidth}{\it\LARGE 1-8\ }
\renewcommand{\printversenum}[1]{\lyricfont\makebox[\versenumwidth][r]{\it\LARGE#1\ }}
\newcommand{\liedtext}{
\beginverse
Alle Menschen müssen sterben,\\
alles Fleisch vergeht wie Heu.\\
Was da lebet, muß verderben,\\
soll es anders werden neu.\\
Dieser Leib, der muss verwesen,\\
wenn er anders soll genesen\\
zu der großen Herrlichkeit,\\
die den Frommen ist bereit.\\
\endverse
}
\newcommand{\liedtxt}{
Alle Menschen müssen sterben,
alles Fleisch vergeht wie Heu.
Was da lebet, muß verderben,
soll es anders werden neu.
Dieser Leib, der muss verwesen,
wenn er anders soll genesen
zu der großen Herrlichkeit,
die den Frommen ist bereit.
}
\newcommand{\titel}{Alle Menschen müssen sterben}
\begin{document}
\begin{songs}{}
\beginsong{\vspace{2mm} \titel}[
,sr={\Large Johann Georg Albinus (1624-1679)
} ]
\liedtext
\beginverse
Alle Menschen müssen sterben,
alles Fleisch vergeht wie Heu.
Was da lebet, muß verderben,
soll es anders werden neu.
Dieser Leib, der muss verwesen,
wenn er anders soll genesen
zu der großen Herrlichkeit,
die den Frommen ist bereit.
\endverse
\beginverse
\liedtxt
\endverse
\endsong
\end{songs}
\end{document}[/code]