78 lines
2.1 KiB
Plaintext
78 lines
2.1 KiB
Plaintext
[% PROCESS purpose_processing.tt;
|
|
IF assignments;
|
|
PROCESS "$assignments";
|
|
END;
|
|
IF overrides != '';
|
|
"\[% $overrides %\]" | evaltt;
|
|
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;
|
|
IF parts;
|
|
GET '\lilypondfile{';
|
|
IF parts == 'band' || parts == 'full';
|
|
IF scores.full;
|
|
GET "${directory}/${scores.full}";
|
|
ELSIF 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;
|
|
ELSE;
|
|
IF scores.${parts};
|
|
GET "${directory}/${scores.$parts}";
|
|
ELSE;
|
|
IF scores.full;
|
|
GET "${directory}/${scores.full}";
|
|
ELSIF scores.leadsheet;
|
|
GET "${directory}/${scores.leadsheet}";
|
|
ELSE;
|
|
GET "${directory}/${scores.SATB}";
|
|
END;
|
|
END;
|
|
END;
|
|
GET "}\n";
|
|
ELSE;
|
|
IF scores.congregation;
|
|
GET "\\lilypondfile{${directory}/${scores.congregation}}\n";
|
|
END;
|
|
END;
|
|
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 -%]
|
|
}
|