[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: fingering
From: |
Neil Puttock |
Subject: |
Re: fingering |
Date: |
Sun, 10 May 2009 23:39:52 +0100 |
2009/5/10 Mario Moles <address@hidden>:
> Caro Neil esiste anche un modo per abbreviare questo?:
>
> " \override StrokeFinger #'text = #(lambda (grob)
> (markup #:center-column (#:lower 2.5 "^" (stroke-finger::calc-text
> grob))))"
You could use identifiers, but here's a better solution, using your
abbreviations:
\include "italiano.ly"
#(set-global-staff-size 18)
#(define (calc-custom-stroke-text grob)
(let ((text (ly:event-property (event-cause grob) 'text)))
(if (string? text)
(markup #:center-column (#:lower 2.5 "^" text))
(stroke-finger::calc-text grob))))
#(define (make-stroke-finger location finger)
(apply make-music
(append
(list
'StrokeFingerEvent
'origin location)
(if (string? finger)
(list 'text finger)
(list 'digit finger)))))
da = #(define-music-function (parser location) ()
(make-stroke-finger location "a"))
dm = #(define-music-function (parser location) ()
(make-stroke-finger location "m"))
di = #(define-music-function (parser location) ()
(make-stroke-finger location "i"))
dp = #(define-music-function (parser location) ()
(make-stroke-finger location "p"))
dan = #(define-music-function (parser location) ()
(make-stroke-finger location 4))
dmn = #(define-music-function (parser location) ()
(make-stroke-finger location 3))
din = #(define-music-function (parser location) ()
(make-stroke-finger location 2))
dpn = #(define-music-function (parser location) ()
(make-stroke-finger location 1))
\relative do, {
\clef "G_8"
\key mi \minor
\cadenzaOn
\set strokeFingerOrientations = #'(up)
\override StrokeFinger #'avoid-slur = #'inside
\override StrokeFinger #'add-stem-support = ##t
\override StrokeFinger #'font-size = #0
\override StrokeFinger #'text = #calc-custom-stroke-text
\voiceOne
\once \override Slur #'height-limit = #4
mi16( <sol'-\din > <si-\dmn > <sol-\din >
<mi'-\dmn > <si-\din > <sol'-\dan > <mi-\dmn >
<si'-\dan > <sol-\dmn > <do-\dan > <mi,-\dmn >)
re,( <mi'-\din > <fad-\dm > <sol-\di >
<la-\da > <si-\di > <do-\da > <la-\di >)
}
Regards,
Neil