Files
songsheet_generator/templates/song_template.tt
T

59 lines
1.5 KiB
Plaintext

[% PROCESS purpose_processing.tt;
IF variables;
PROCESS "$variables";
END;
-%]
\song{[% purpose_print ? purpose_print : purpose %]}{[% song_title -%]}{
[% before_song -%]
\begin{samepage}
[% IF scores;
IF scores.gregorian AND (gregorian OR NOT scores.congregation);
IF NOT gregorian;
GET "\\textbf{\\LARGE{Activate gregorian}}\n";
ELSE;
GET "\\gregorioscore{${directory}/${scores.gregorian}}\n";
END;
ELSE;
GET '\lilypondfile{';
IF parts;
IF parts == 'band';
IF scores.leadsheet;
GET "${directory}/${scores.leadsheet}";
ELSE;
GET "${directory}/${scores.SATB}";
END;
ELSIF parts == 'SATB';
IF scores.SATB;
GET "${directory}/${scores.SATB}";
ELSE;
GET "${directory}/${scores.leadsheet}";
END;
END;
ELSE;
GET "${directory}/${scores.congregation}";
END;
GET "}\n";
END;
ELSIF lyrics;
GET lyrics;
END; %]
[% IF credits -%]
\leavevmode\\*
[% FOREACH key = credits.keys;
# Workaround because PERL keeps resolving \\$ to $
s = "\\ ${key}{${credits.$key}}\n";
GET s.replace('(\W) ', '$1');
END; -%]
[% END -%]
\end{samepage}
[% content -%]
[% IF (meditation && meditations) || (parts && meditation) -%]
\leavevmode\par\smallskip
[% meditation %]
[% END -%]
[% IF after_song -%]
\leavevmode\par\smallskip
[% after_song %]
[% END -%]
}