]> git.donarmstrong.com Git - lilypond.git/blob - lilyponddefs.tex
1e098eb271cb6a70743e7a77598a6bff691ce961
[lilypond.git] / lilyponddefs.tex
1 %%
2 %% include file for LilyPond
3
4 \def\mdef#1#2{\def#1{{\musicfnt\char#2}}}
5
6 %% musix defs
7         \parindent=0pt
8         \newdimen\interlinedist
9         \newcount\n
10         \newdimen\balkhoog
11         \newdimen\staffrulethickness
12         \newdimen\interstaffrule
13
14 \def\musixtwentydefs{
15         \font\slurufont=xslu20
16         \font\slurdfont=xsld20
17         \font\slurhfont=xslz20
18         \font\hslurufont=xslhu20
19         \font\hslurdfont=xslhd20
20         \font\hslurhfont=xslhz20
21         \font\musicfnt=musix20
22         \balkhoog=20pt
23         \staffrulethickness=0.4pt
24 }
25
26 \def\musixcalc{
27         \interstaffrule=\balkhoog
28         \advance\interstaffrule by-\staffrulethickness
29         \divide\interstaffrule by 4
30         \advance\interstaffrule by -\staffrulethickness
31 }
32
33
34 \musixtwentydefs
35 \musixcalc
36 \def\slurcharh#1{{\slurhfont\char#1}}
37 \def\slurcharu#1{{\slurufont\char#1}}
38 \def\slurchard#1{{\slurdfont\char#1}}
39 \def\hslurcharh#1{{\hslurhfont\char#1}}
40 \def\hslurcharu#1{{\hslurufont\char#1}}
41 \def\hslurchard#1{{\hslurdfont\char#1}}
42
43 \mdef\quartball{'007}
44 \mdef\halfball{'010}
45 \mdef\wholeball{'011}
46 \mdef\halfrest{'074}
47 \mdef\wholerest{'075}
48 \mdef\quartrest{62}
49 \mdef\eighthrest{63}
50 \mdef\sixteenthrest{64}
51 \mdef\thirtysecondrest{65}
52 \mdef\sharp{52}
53 \mdef\flat{50}
54 \mdef\natural{54}
55 \mdef\sharpsharp{53}
56 \mdef\flatflat{51}
57
58 \mdef\singledot{'00}
59 \mdef\doubledot{'01}
60 \mdef\tripledot{'02}
61 \mdef\mussepline{155}
62 \mdef\violinclef{71}
63 \mdef\bassclef{73}
64
65 \mdef\deigthflag{45}
66 \mdef\dsixteenthflag{46}
67 \mdef\dthirtysecondflag{47}
68
69 % pointing up
70 \mdef\ueigthflag{40}
71 \mdef\usixteenthflag{41}
72 \mdef\uthirtysecondflag{42}
73
74 \def\maatstreep{\vrule height\balkhoog}
75 \def\finishbar{\vrule height\balkhoog  width 1pt}
76 \def\generalmeter#1#2{\vbox to 0pt{\vss\rm\hbox{#1}\hbox{#2}}}
77 \def\lineseparator{\vbox{\mussepline\vskip -5pt\mussepline}}
78
79 \def\beauty{%
80         \par\vskip 10pt plus 30pt minus 10pt\par
81         \hskip -5pt\lineseparator
82         \par\vskip 10pt plus 30pt minus 10pt\par
83 }
84
85 \def\interstaffline{%
86         \vskip 10pt
87 %       \nointerlineskip
88 %       \vbox{\hbox to 0pt{\vrule width20pt height1pt\hss}}
89 }
90 \def\ugly{\nointerlineskip\par
91 \vskip 40pt\par\vbox{\hbox to 0pt{\vrule width30pt height1pt\hss}}\par\vskip 40pt
92 }
93 \def\interscoreline{\beauty}
94
95
96 \def\lines#1#2{%
97  \vbox{\kern-\interstaffrule
98         \n=0\nointerlineskip%
99         \loop\ifnum\n<#1\advance\n by1%
100                 \kern\interstaffrule
101                 \hrule height \staffrulethickness width#2
102                 \repeat
103         }}
104
105 \def\toplines#1{ % why space needed here?
106         \vbox to 0pt{\hbox{\kern-6pt\lines{#1}{12pt}}\vss}}
107 \def\botlines#1{ % idem ditto
108         \vbox to 0pt{\vss\hbox{\kern-6pt\lines{#1}{12pt}}}}
109
110 %
111 % a staffsymbol with #1 lines, width #2
112 % bottom at baseline
113 \def\linestafsym#1#2{\hbox to 0pt{\vbox to 0pt{\vss\lines{#1}{#2}}\hss}}
114
115 \def\vcenter#1{\vbox to 0pt{\vss #1\vss}}
116 \def\topalign#1{\vbox to 0pt{#1\vss}}
117
118 \def\eigthflag{\topalign{\ueigthflag}}
119 \def\sixteenthflag{\topalign{\usixteenthflag}}
120 \def\thirtysecondflag{\topalign{\uthirtysecondflag}}
121
122 \def\cquartrest{\vcenter\quartrest}
123 \def\ceighthrest{\vcenter\eighthrest}
124 \def\csixteenthrest{\vcenter\sixteenthrest}
125 \def\cthirtysecondrest{\vcenter\thirtysecondrest}
126
127 \def\lsingledot{\kern-6pt\singledot}
128 \def\ldoubledot{\kern-6pt\doubledot}
129 \def\ltripledot{\kern-6pt\tripledot}
130
131
132
133 \def\stem#1#2{\vrule height#2 depth-#1}
134
135 \def\placebox#1#2#3{%
136         \vbox to 0pt{\vss\hbox{\raise #1\hbox to 0pt{\kern #2{}#3\hss}}}%
137 }
138
139
140 \def\beamslope#1#2{{\count0=#2\advance\count0 by#1\musicfnt\char\count0}}
141 \def\rulesym#1#2{\vrule height #1 width #2}