* An orchestral score::
* Part extraction::
* end of tutorial:: The end
+* Pre-cooked makefile::
@end menu
@node Introduction
Music (TM), have a look at the @ref{Mutopia project}.
+
+[TODO figure out what to do with this: ]
+
+
+@node Pre-cooked makefile
+@section Pre-cooked makefile
+
+@c waar deze info? is uiteindelijk wel handig, schat ik.
+[TODO: cut blabla]
+
+If you have a big music project, or just a lot of LilyPond input files,
+all generated output from LilyPond, @TeX{} and metafont will clutter
+your working directory. LilyPond comes with a one-size-fits-all
+pre-cooked makefile that helps you manage producing ouptut. It will
+produce all output in @file{out}, generate and track dependencies.
+Also, it helps in preparing your submission to the @ref{Mutopia
+project}.
+
+@file{make/ly.make}
+@example
+mkdir my-project
+cd my-project
+cp /usr/share/lilypond/make/ly.make GNUmakefile
+cp /usr/share/doc/lilypond/examples/input/tutorial/menuet.ly .
+make menuet
+[..]
+Generated out/menuet.ps for target menuet.
+@end example
+
+Type @samp{make help} to see possible targets.
+
+[TODO]
+@file{/usr/share/lilypond/doc/lilypond/examples/input/mutopia-header.ly}
+
(grob-property-description 'arithmetic-multiplier number? "see @ref{spacing-spanner-interface}.")
(grob-property-description 'attachment pair? "cons of symbols, '(LEFT-TYPE . RIGHT-TYPE), where both types may be alongside-stem, stem, head or loose-end.")
-(grob-property-description 'attachment-angle number? "Where does the stem
+(grob-property-description 'attachment-slope number? "Where does the stem
attach to the notehead?")
(grob-property-description 'attachment-offset pair? "cons of offsets,
'(LEFT-offset . RIGHT-offset). This offset is added to the
(grob-property-description 'shortest-starter-duration moment? "duration of the shortest notes that starts exactly in this column.")
(grob-property-description 'side-relative-direction dir? "if set: get the direction from a different object, and multiply by this.")
(grob-property-description 'side-support list? "the support, a list of grobs.")
+(grob-property-description 'slope number? "some kind of slope")
(grob-property-description 'slope-limit number? "set slope to zero if slope is running away steeper than this.")
+(grob-property-description 'space-alist list? "Alist of break align spacing tuples. See basic-property.scm")
(grob-property-description 'space-function procedure? "function of type multiplicity -> real (in staffspace).")
(grob-property-description 'spacing-procedure procedure? "procedure
taking grob as argument. This is called after
;;;; Jan Nieuwenhuizen <janneke@gnu.org>
-; should include default value?
+ ; should include default value?
;;; FIXME: naming.
(define (grob-description name . interfaces)
(let* ((ifs (cons general-grob-interface interfaces))
(props (map caddr ifs))
-; (prop-typep-pairs (map (lambda (x) (cons (car x) (cadr x)))
-; (apply append props)))
+ ; (prop-typep-pairs (map (lambda (x) (cons (car x) (cadr x)))
+ ; (apply append props)))
(syms (map car ifs))
- )
+ )
(list (cons 'separator "\n\n\n") ;easy printing.
(cons 'name name)
(cons 'interfaces syms)
(cons 'interface-descriptions ifs)
- ; (cons 'interface-descriptions (cadr merged))
+ ; (cons 'interface-descriptions (cadr merged))
;; description of the grob itself?
-; (cons 'properties prop-typep-pairs)
- )))
+ ; (cons 'properties prop-typep-pairs)
+ )))
(lily-interface
'(
left-padding
right-padding
- ))
+ ))
'note-head-interface
"Note head"
'(
- style attachment-angle note-character
+ style attachment-slope note-character
))
'(direction
))
+(lily-interface
+ 'percent-repeat-interface
+ "Repeats that look like percent signs"
+ '(slope thickness))
- (lily-interface
- 'volta-bracket-interface
- "Volta bracket with number"
- '(
- bars
- thickness
- height
- ))
+(lily-interface
+ 'volta-bracket-interface
+ "Volta bracket with number"
+ '(
+ bars
+ thickness
+ height
+ ))
- (lily-interface
- 'span-bar-interface
- "A bar line that spans other barlines (typically used to get cross-staff barlines."
- '(
- ))
+(lily-interface
+ 'span-bar-interface
+ "A bar line that spans other barlines (typically used to get cross-staff barlines."
+ '(
+ ))
(eval (cons
(define (interface-names) (map (lambda (x) (symbol->string (car x))) all-interfaces))
+