]> git.donarmstrong.com Git - lilypond.git/blobdiff - tex/titledefs.tex
release: 1.2.17
[lilypond.git] / tex / titledefs.tex
index 37ed8eb9ba7611f642658e3b9ea9c3762548d312..5b02ba912f9ce46da21a2b5c0c74d9fc0c8b6eaa 100644 (file)
@@ -2,6 +2,8 @@
 % ideally, we should create a LaTeX/TeX class
 % for setting music in different sizes.
 %
+% Version 0.1
+%
 \input lilyponddefs
 \def\EndLilyPondOutput{\endinput}
 %
 \def\thecomposer{}
 \def\thearranger{}
 \def\theinstrument{}
+\def\theopus{}
+\def\thepiece{}
+\def\themeter{}
+\def\thepoet{}
 %
-\def\title#1{\def\thetitle{#1\\}}
-\def\subtitle#1{\def\thesubtitle{#1}}
-\def\composer#1{\def\thecomposer{#1}}
-\def\arranger#1{\def\thearranger{#1}}
-\def\instrument#1{\def\theinstrument{#1}}
+% duh.  LaTeX has a \title too.
+\renewcommand*{\title}[1]{\def\thetitle{#1}}
+\newcommand*{\subtitle}[1]{\def\thesubtitle{#1}}
+\newcommand*{\composer}[1]{\def\thecomposer{#1}}
+\newcommand*{\arranger}[1]{\def\thearranger{#1}}
+\newcommand*{\instrument}[1]{\def\theinstrument{#1}}
+\newcommand*{\opus}[1]{\def\theopus{#1}}
+\newcommand*{\piece}[1]{\def\thepiece{#1}}
+\newcommand*{\meter}[1]{\def\themeter{#1}}
+\newcommand*{\poet}[1]{\def\thepoet{#1}}
 %
-\def\makelilytitle{
-  \begin{center}
-    {\huge\bfseries\thetitle}{\large\bfseries\thesubtitle}
-  \end{center}
-  {\hfill\scshape\thecomposer}{\flushleft\theinstrument}{\hfill\thearranger}
-  %\bigskip
-  }
-
-
-
-
-\endinput
-
+\newcommand*{\mudelatitle}[1]{\def\thetitle{#1}}
+\newcommand*{\mudelasubtitle}[1]{\def\thesubtitle{#1}}
+\newcommand*{\mudelacomposer}[1]{\def\thecomposer{#1}}
+\newcommand*{\mudelaarranger}[1]{\def\thearranger{#1}}
+\newcommand*{\mudelainstrument}[1]{\def\theinstrument{#1}}
+\newcommand*{\mudelaopus}[1]{\def\theopus{#1}}
+\newcommand*{\mudelapiece}[1]{\def\thepiece{#1}}
+\newcommand*{\mudelametre}[1]{\def\themeter{#1}}
+\newcommand*{\mudelameter}[1]{\def\themeter{#1}}
+\newcommand*{\mudelapoet}[1]{\def\thepoet{#1}}
 %
-% ideally, we should create a LaTeX/TeX class
-% for setting music in different sizes.
 %
-\input lilyponddefs
-\def\EndLilyPondOutput{\endinput}
-\def\thetitle{}
-\def\thecomposer{}
-\def\thearranger{}
-\def\theinstrument{}
-\def\theLineOne{}
-\def\theLineTwo{}
-\def\theLineThree{}
-\def\lineOne#1{\def\theLineOne{#1}}
-\def\lineTwo#1{\def\theLineTwo{#1}}
-\def\lineThree#1{\def\theLineThree{#1}}
-\def\title#1{\def\thetitle{#1}}
-\def\composer#1{\def\thecomposer{#1}}
-\def\arranger#1{\def\thearranger{#1}}
-\def\instrument#1{\def\theinstrument{#1}}
-
-\def\makelilytitle{
+\def\mudelanull{}%
+%
+\def\makelilytitle{%
   \begin{center}
-    {\Large\bfseries\thetitle}\\
-    \vskip12pt
-    {\scshape\theLineOne}
-    {\hfill\scshape\thecomposer}
-    \vskip4pt
-    {\bfseries\theLineTwo}
-    {\bfseries\thearranger}
+        \bfseries
+        \ifx\mudelanull\thetitle\else{\huge\thetitle}\\ \fi
+        \ifx\mudelanull\thesubtitle\else{\Large\thesubtitle}\\ \fi
   \end{center}
-  \bfseries\theLineThree
-  \bfseries\theinstrument
   \bigskip
-  }
+  % urg
+  \edef\saveparskip{\parskip}\parskip-5mm
+  \begin{minipage}[t]{0.45\textwidth}
+        \ifx\mudelanull\thepoet\else{\thepoet}\\ \fi
+        \ifx\mudelanull\themeter\else{\themeter}\\ \fi
+  \end{minipage}\hspace*{\fill}
+  \begin{minipage}[t]{0.45\textwidth}
+      \begin{flushright}
+          \ifx\mudelanull\thecomposer\else{\large\normalfont\scshape\thecomposer}\\ \fi
+          \ifx\mudelanull\theopus\else{\theopus}\\ \fi
+          \ifx\mudelanull\thearranger\else{\thearranger}\\ \fi
+        \end{flushright}%
+  \end{minipage}\par
+  \parskip\saveparskip
+  {\center{\large\theinstrument}\par}
+  {\flushleft{\large\normalfont\scshape\thepiece}}
+%  \leavevmode
+  \global\let\theopus\relax%
+  \global\let\thepiece\relax%
+}
+\def\makelilypiecetitle
+{
+  \bigskip
+  {\flushright{\theopus}\par}
+  {\flushleft{\large\normalfont\scshape\thepiece}}
+  \global\let\theopus\relax%
+  \global\let\thepiece\relax%
+}
+\endinput
+