\version "2.18" #(define Ez_numbers-engraver (list (cons 'acknowledgers (list (cons 'note-head-interface (lambda (engraver grob source-engraver) (let* ((context (ly:translator-context engraver)) (tonic-pitch (ly:context-property context 'tonic)) (tonic-name (ly:pitch-notename tonic-pitch)) (grob-pitch (ly:event-property (event-cause grob) 'pitch)) (grob-name (ly:pitch-notename grob-pitch)) (delta (modulo (- grob-name tonic-name) 7)) (note-names (make-vector 7 (number->string (1+ delta))))) (ly:grob-set-property! grob 'note-names note-names)))))))) EzNum = { \easyHeadsOn \override Staff.StaffSymbol #'staff-space = #1.5 \override Staff.StaffSymbol #'line-thickness = #1.5 \override Staff.NoteHead #'font-size = #+3.25 \override Staff.Clef #'font-size = #+1.35 \override Staff.TimeSignature #'font-size = #+1.35 \override Staff.Accidental #'font-size = #+1.35 \override Voice.NoteHead #'font-size = #-5.25 } %%%%%%%%%%%%%%%%%%% #(define Ez_solfege-sngraver (list (cons 'acknowledgers (list (cons 'note-head-interface (lambda (engraver grob source-engraver) (let* ((context (ly:translator-context engraver)) (tonic-pitch (ly:context-property context 'tonic)) (tonic-name (ly:pitch-notename tonic-pitch)) (delta (- 7 tonic-name)) (solfege-base (circular-list "d" "r" "m" "f" "s" "l" "t")) (solfege (take (drop solfege-base delta) 7)) (note-names (apply vector solfege))) ; (display solfege)(newline) (ly:grob-set-property! grob 'note-names note-names)))))))) EzSol = { \easyHeadsOn \override Staff.StaffSymbol.staff-space = #1.5 \override Staff.StaffSymbol.line-thickness = #1.5 \override Staff.NoteHead.font-size = #+3.25 \override Staff.Clef.font-size = #+1.35 \override Staff.TimeSignature.font-size = #+1.35 \override Staff.Accidental.font-size = #+1.35 \override Voice.NoteHead.font-size = #-5.25 } % { \language "english.ly" global = { \key c\major \time 4/4 } muxI = \relative c'' { \global c1 d2 e2 f4 g4 a8 b8 r4 \key f\major f1 g2 a2 b4 c4 d8 e8 r4 } muxII = \relative c' { \global c1 d2 e f4 g a8 b8 r4 \key f\major f1 g2 a b4 c d8 e8 r4 } \score { \new Staff << \new Voice = "sop" { \voiceOne \EzNum \muxI } \new Voice = "alt" { \voiceTwo \EzSol \muxII } >> \layout { \context { \Voice \consists \Ez_numbers-engraver } \context { \Voice \consists \Ez_solfege-sngraver } } } \score { \new Staff << \new Voice = "sop" { \voiceOne \EzNum \muxI } \new Voice = "alt" { \voiceTwo \EzSol \muxII } >> \layout { \context { \VoiceOne \consists \Ez_solfege-sngraver } \context { \VoiceTwo \consists \Ez_numbers-engraver } } } %}