]> git.donarmstrong.com Git - lilypond.git/blobdiff - tex/titledefs.tex
release: 1.3.140
[lilypond.git] / tex / titledefs.tex
index 33cf8133ccada92e50f210d3e7c049f256956d94..92e3747de496574ef465dca179be9c87836a4da2 100644 (file)
@@ -1,15 +1,53 @@
-\def\thetitle{}
-\def\thecomposer{}
-\def\theinstrument{}
-\def\title#1{\def\thetitle{#1}}
-\def\composer#1{\def\thecomposer{#1}}
-\def\instrument#1{\def\theinstrument{#1}}
-
-\def\maketit{
+%%
+%% LilyPond titling for LaTeX
+%%
+%% Note
+%%
+%%    Defining a value, but leaving it empty:
+%%        \def\lilypondfoo{}
+%%    makes LaTeX break on the \\ in:
+%%        \ifx\lilypondfoo\undefined\else{\lilypondfoo\\}\fi
+%%
+\def\makelilypondtitle
+{
   \begin{center}
-    {\Large\bfseries\thetitle}\\
-    \vskip12pt
-    {\bfseries\theinstrument}\hfill{\scshape\thecomposer}
+        \bfseries
+        \ifx\lilypondtitle\undefined\else{\huge\lilypondtitle\\}\fi
+        \ifx\lilypondsubtitle\undefined\else{\Large\lilypondsubtitle\\}\fi
+        \ifx\lilypondsubsubtitle\undefined\else{\large\lilypondsubsubtitle\\}\fi
   \end{center}
   \bigskip
-  }
\ No newline at end of file
+  % urg
+  \edef\saveparskip{\parskip}\parskip-5mm
+  \begin{minipage}[t]{0.45\textwidth}
+        \ifx\lilypondpoet\undefined\else{\lilypondpoet\\}\fi
+        \ifx\lilypondmeter\undefined\else{\lilypondmeter\\}\fi
+  \end{minipage}\hspace*{\fill}
+  \begin{minipage}[t]{0.45\textwidth}
+      \begin{flushright}
+          \ifx\lilypondcomposer\undefined\else{\large\normalfont\scshape\lilypondcomposer\\}\fi
+          \ifx\lilypondopus\undefined\else{\lilypondopus\\}\fi
+          \ifx\lilypondarranger\undefined\else{\lilypondarranger\\}\fi
+        \end{flushright}%
+  \end{minipage}\par
+  \parskip\saveparskip
+  \ifx\lilypondinstrument\undefined\else{\center{\large\lilypondinstrument}\par}\fi
+  \ifx\lilypondpiece\undefined\else{\flushleft{\large\normalfont\scshape\lilypondpiece}\par}\fi
+%  \leavevmode
+  \global\let\lilypondopus\relax%
+  \global\let\lilypondpiece\relax%
+  \global\let\mustmakelilypondtitle\undefined%
+}
+%
+\def\makelilypondpiecetitle
+{
+  \bigskip\myfilbreak
+  \ifx\lilypondopus\undefined\else{\flushright{\lilypondopus}\par}\fi
+  \ifx\lilypondpiece\undefined\else{\flushleft{\large\normalfont\scshape\lilypondpiece}\par}\fi
+  \nopagebreak%
+  \global\let\lilypondopus\relax%
+  \global\let\lilypondpiece\relax%
+  \global\let\mustmakelilypondpiecetitle\undefined%
+}
+\endinput
+