1 %%%% This file is part of LilyPond, the GNU music typesetter.
3 %%%% Copyright (C) 1996--2011 Han-Wen Nienhuys <hanwen@xs4all.nl>
4 %%%% Jan Nieuwenhuizen <janneke@gnu.org>
6 %%%% LilyPond is free software: you can redistribute it and/or modify
7 %%%% it under the terms of the GNU General Public License as published by
8 %%%% the Free Software Foundation, either version 3 of the License, or
9 %%%% (at your option) any later version.
11 %%%% LilyPond is distributed in the hope that it will be useful,
12 %%%% but WITHOUT ANY WARRANTY; without even the implied warranty of
13 %%%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 %%%% GNU General Public License for more details.
16 %%%% You should have received a copy of the GNU General Public License
17 %%%% along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
21 %% < 1.8 compatibility switch
22 #(ly
:set-option
'old-relative
)
25 breve
= #(ly
:make-duration -
1 0)
26 longa
= #(ly
:make-duration -
2 0)
27 maxima
= #(ly
:make-duration -
3 0)
29 \include "music-functions-init.ly"
30 \include "toc-init.ly"
32 %% default note names are dutch
33 #(set
! default-language
"nederlands")
34 #(note-names-language parser default-language
)
36 \include "drumpitch-init.ly"
37 \include "chord-modifiers-init.ly"
38 \include "script-init.ly"
40 \include "chord-repetition-init.ly"
42 #(define default-fret-table
(make-hash-table
101))
43 #(define chord-shape-table
(make-hash-table
29))
45 % declarations for standard directions
57 %% should also set \override Beam #'breakable, but how to do it "portably"? (ie. also
58 %% working with lyric sections)
60 %% try \once \override Score.Beam #'breakable = ##t
62 %% rather name \newline, \pageBreak ?
63 break
= #(make-event-chord
(list
(make-music
'LineBreakEvent
'break-permission
'force
)))
64 noBreak
= #(make-event-chord
(list
(make-music
'LineBreakEvent
'break-permission
'())))
65 %% \pageBreak, \noPageBreak, \pageTurn, \noPageTurn, \allowPageTurn are defined
68 stopStaff
= #(make-event-chord
(list
(make-span-event
'StaffSpanEvent STOP
)))
69 startStaff
= #(make-event-chord
(list
(make-span-event
'StaffSpanEvent START
)))
73 % Code articulation definitions
75 noBeam
= #(make-music
'BeamForbidEvent
)
76 pipeSymbol
= #(make-music
'BarCheck
)
77 bracketOpenSymbol
= #(make-span-event
'BeamEvent START
)
78 bracketCloseSymbol
= #(make-span-event
'BeamEvent STOP
)
79 tildeSymbol
= #(make-music
'TieEvent
)
80 parenthesisOpenSymbol
= #(make-span-event
'SlurEvent START
)
81 parenthesisCloseSymbol
= #(make-span-event
'SlurEvent STOP
)
82 escapedExclamationSymbol
= #(make-span-event
'CrescendoEvent STOP
)
83 escapedParenthesisOpenSymbol
= #(make-span-event
'PhrasingSlurEvent START
)
84 escapedParenthesisCloseSymbol
= #(make-span-event
'PhrasingSlurEvent STOP
)
85 escapedBiggerSymbol
= #(make-span-event
'DecrescendoEvent START
)
86 escapedSmallerSymbol
= #(make-span-event
'CrescendoEvent START
)
89 \include "scale-definitions-init.ly"
91 melisma
= #(context-spec-music
(make-property-set
'melismaBusy
#t
) 'Bottom
)
92 melismaEnd
= #(context-spec-music
(make-property-unset
'melismaBusy
) 'Bottom
)
94 laissezVibrer
= #(make-music
'LaissezVibrerEvent
)
95 repeatTie
= #(make-music
'RepeatTieEvent
)
97 \include "dynamic-scripts-init.ly"
98 \include "spanners-init.ly"
100 %% MAKE-HASH-TABLE in GUILE 1.6 takes mandatory size parameter.
101 #(define musicQuotes
(make-hash-table
29))
103 #(define toplevel-book-handler print-book-with-defaults
)
104 #(define toplevel-bookpart-handler collect-bookpart-for-book
)
105 #(define toplevel-music-handler collect-music-for-book
)
106 #(define toplevel-score-handler collect-scores-for-book
)
107 #(define toplevel-text-handler collect-scores-for-book
)
109 #(define book-bookpart-handler ly
:book-add-bookpart
!)
110 #(define book-music-handler collect-book-music-for-book
)
111 #(define book-score-handler ly
:book-add-score
!)
112 #(define book-text-handler ly
:book-add-score
!)
114 #(define bookpart-score-handler ly
:book-add-score
!)
115 #(define bookpart-text-handler ly
:book-add-score
!)
116 #(define bookpart-music-handler collect-book-music-for-book
)
118 \include "predefined-fretboards-init.ly"
119 \include "string-tunings-init.ly"
120 \include "property-init.ly"
122 \include "grace-init.ly"
123 \include "midi-init.ly"
124 \include "paper-defaults-init.ly"
127 mm
= #(ly
:output-def-lookup $defaultpaper
'mm
)
128 unit
= #(ly
:output-def-lookup $defaultpaper
'unit
)
134 \include "engraver-init.ly"
136 #(set-paper-dimension-variables
(current-module
))
139 #(set-default-paper-size
(ly
:get-option
'paper-size
))
140 partCombineListener
= \layout {
143 skipTypesetting
= ##t
144 ignoreBarChecks
= ##t
149 setDefaultDurationToQuarter
= { c4 }