[ << Changing defaults ] | [Top][Contents][Index][ ? ] | [ Notation manual tables >> ] | ||
[ < Using music functions ] | [ Up : Using music functions ] | [ Substitution function examples > ] |
5.6.1 Substitution function syntax
Making a function that substitutes a variable into LilyPond code is easy. The general form of these functions is
function = #(define-music-function (parser location arg1 arg2 …) (type1? type2? …) #{ …music… #})
where
| nth argument |
| a scheme type predicate for which |
| normal LilyPond input, using |
The parser
and location
arguments are mandatory, and
are used in some advanced situations as described in the
‘Extending’ manual (see
Music functions). For
substitution functions, just be sure to include them.
The list of type predicates is also required. Some of the most common type predicates used in music functions are:
boolean? cheap-list? (use instead of ‘list?’ for faster processing) ly:music? markup? number? pair? string? symbol?
For a list of available type predicates, see Predefined type predicates. User-defined type predicates are also allowed.
See also
Notation Reference: Predefined type predicates.
Extending: Music functions.
Installed Files: ‘lily/music-scheme.cc’, ‘scm/c++.scm’, ‘scm/lily.scm’.
[ << Changing defaults ] | [Top][Contents][Index][ ? ] | [ Notation manual tables >> ] | ||
[ < Using music functions ] | [ Up : Using music functions ] | [ Substitution function examples > ] |
Andere Sprachen: español.