-\version "1.7.0" %% or actually: 1.7.1 ...
+\version "2.7.39"
+
\header {
-texidoc= "Using make-music, you can add
-various stuff to notes. Here is an example
-how to add an extra fingering.
+texidoc= "@cindex make-music Fingering
+You can add various stuff to notes using @code{make-music}.
+In this example, an extra fingering is attached to a note.
-In general, first do a display of the music you want ot
-create, then write a function that will build the structure for you."
+In general, first do a @code{display} of the music you want to
+create, then write a function that will structure the music for you.
+"
}
#(define (make-text-script x)
- (let ((m (make-music-by-name 'TextScriptEvent)))
- (ly-set-mus-property! m 'text-type 'finger)
- (ly-set-mus-property! m 'text x)
- m))
+ (make-music 'TextScriptEvent
+ 'direction DOWN
+ 'text (make-simple-markup x)))
#(define (add-text-script m x)
- (if (equal? (ly-music-name m) 'RequestChord)
- (ly-set-mus-property! m 'elements
- (cons (make-text-script x)
- (ly-get-mus-property m 'elements)))
-
- (let ((es (ly-get-mus-property m 'elements))
- (e (ly-get-mus-property m 'element)) )
+ (if (equal? (ly:music-property m 'name) 'EventChord)
+ (set! (ly:music-property m 'elements)
+ (cons (make-text-script x)
+ (ly:music-property m 'elements)))
+ (let ((es (ly:music-property m 'elements))
+ (e (ly:music-property m 'element)))
(map (lambda (y) (add-text-script y x)) es)
- (if (music? e)
+ (if (ly:music? e)
(add-text-script e x))))
m)
\score {
- \apply #(lambda (x) (add-text-script x "6") (display x) x ) \notes { c4-3 }
+ \applyMusic #(lambda (x) (add-text-script x "6") (display-music x) x ) { c'4-3 }
+ \layout{ ragged-right = ##t }
}
+