lilypond-1.3.69
[lilypond.git] / tex / lilyponddefs.tex
blob3a67da91836d9eb87c9ba9d02d920e10954b2c7c
1 %%
2 %% include file for LilyPond
3 %%
4 %% this file defines various macros to accomodate lilypond output
5 %%
6 %% let's not make par before endinput
8 % TeXbook ex 7.7
9 \def\ifundefined#1{\expandafter\ifx\csname#1\endcsname\relax}
11 % skip if included already
12 \def\SkipLilydefs{\endinput}
13 \ifundefined{EndLilyPondOutput}
14 \def\EndLilyPondOutput{\csname bye\endcsname}
15 \def\SkipLilydefs{}
16 \fi
17 \SkipLilydefs
19 % need to do some stuff to turn pagenumbering off
20 \ifundefined{documentclass}
21 \input lilypond-plaintex
22 \else
23 \input lilypond-latex
24 \fi
28 \def\botalign#1{\vbox to 0pt{\vss #1}}
29 \def\leftalign#1{\hbox to 0pt{#1\hss}}
31 \input feta20.tex
33 % Attempt to keep lilypiecetitle together with the piece:
34 \def\myfilbreak{\par\vfil\penalty200\vfilneg}
36 % stacked horizontal lines
37 \def\interscoreline{\vskip 16pt\myfilbreak}
38 \def\placebox#1#2#3{%
39 \botalign{\hbox{\raise #1\leftalign{\kern #2{}#3}}}}%
41 % Are we using PDFTeX? If so, use pdf definitions to translate
42 % \embeddedps commands to embedded PDF.
43 \ifx\pdfoutput\undefined
44 \input lily-ps-defs
45 \else
46 \pdfoutput=1
47 \input lily-pdf-defs
48 \fi
50 \def\EndLilyPondOutput{%
51 \csname bye\endcsname
53 \def\postheader{}
55 % need to do some stuff to turn pagenumbering off
56 % they seriously mess up your fragments.
58 \ifx\csname nolilyfooter\endcsname\relax
59 \message{[footer defined]}%
60 \csname lilyfooter\texsuffix\endcsname%
61 \else
62 \message{[footer empty]}
63 \csname%
64 nolilyfooter\texsuffix\endcsname
65 \fi
67 % fix chord.cc::banter_str before removing these
68 \input fetdefs
70 \endinput