]> git.donarmstrong.com Git - lilypond.git/blobdiff - tex/titledefs.tex
* lily/stem.cc (get_default_stem_end_position): use beam_count - 1
[lilypond.git] / tex / titledefs.tex
index 7e33f301902ff266f246eb1da46d4723e9bdadfe..fd680ff7e47c0eb8420d93633ab35549f0467d8c 100644 (file)
@@ -1,26 +1,35 @@
-%
-% LilyPond titling for LaTeX
-%
+%%
+%% 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}
+        \ifx\lilyponddedication\undefined\else{\normalfont\lilyponddedication\\}\fi
         \bfseries
-        \ifx\lilypondtitle\undefined\else{\huge\lilypondtitle}\\ \fi
-        \ifx\lilypondsubtitle\undefined\else{\Large\lilypondsubtitle}\\ \fi
-        \ifx\lilypondsubsubtitle\undefined\else{\large\lilypondsubsubtitle}\\ \fi
+        \ifx\lilypondtitle\undefined\else{\huge\lilypondtitle\\}\fi
+        \ifx\lilypondsubtitle\undefined\else{\Large\lilypondsubtitle\\}\fi
+        \ifx\lilypondsubsubtitle\undefined\else{\large\lilypondsubsubtitle\\}\fi
   \end{center}
   \bigskip
   % urg
   \edef\saveparskip{\parskip}\parskip-5mm
   \begin{minipage}[t]{0.45\textwidth}
-        \ifx\lilypondpoet\undefined\else{\lilypondpoet}\\ \fi
-        \ifx\lilypondmeter\undefined\else{\lilypondmeter}\\ \fi
+        \ifx\lilypondpoet\undefined\else{\lilypondpoet\\}\fi
+        \ifx\lilypondtexttranslator\undefined\else{\lilypondtexttranslator\\}\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
+          \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
@@ -29,6 +38,7 @@
 %  \leavevmode
   \global\let\lilypondopus\relax%
   \global\let\lilypondpiece\relax%
+  \global\let\mustmakelilypondtitle\undefined%
 }
 %
 \def\makelilypondpiecetitle
   \nopagebreak%
   \global\let\lilypondopus\relax%
   \global\let\lilypondpiece\relax%
+  \global\let\mustmakelilypondpiecetitle\undefined%
+}
+% header -- head ?
+% these names can't be changed: they're uses in mutopia headers
+\def\theheader
+{
+  \ifx\lilypondhead\undefined\relax\else%
+    \lilypondhead\fi
+}
+\def\thefooter
+{
+  \ifx\lilypondfooter\undefined\relax\else%
+    \lilypondfooter\fi
 }
+\def\makelilypondtagline
+{
+  \ifx\undefined\lilypondtagline\relax\else\lilypondtagline\fi
+}
+\def\thecopyright
+{
+  \ifx\lilypondcopyright\undefined\thefooter\else%
+    \lilypondcopyright\fi
+}
+%
+% Moved header and footer definitions here from the ly2dvi script.
+% Separate page styles for first, last and ordinary (plain) pages.
+\makeatletter
+\renewcommand{\ps@plain}{
+  \renewcommand{\@oddfoot}{\parbox{\textwidth}{\mbox{}\thefooter}}%
+  \renewcommand{\@evenfoot}{\@oddfoot}%
+  \renewcommand{\@evenhead}{\hbox to\textwidth{\textbf{\thepage}\hfill{\small\theheader}}}
+  \renewcommand{\@oddhead}{\hbox to
+  \textwidth{{\small\theheader}\hfill\textbf{\thepage}}}}
+\newcommand{\ps@firstpage}{
+  \renewcommand{\@oddfoot}{\parbox{\textwidth}{\mbox{}\thecopyright}}%
+  \renewcommand{\@evenfoot}{\@oddfoot}}
+\newcommand{\ps@lastpage}{
+  \renewcommand{\@oddfoot}{\parbox{\textwidth}{\mbox{}\makelilypondtagline}}%
+  \renewcommand{\@evenfoot}{\@oddfoot}}
+\makeatother
 \endinput