Hi Barry, nevertheless, here is a working solution (derived from http://lilypond.org/doc/v2.18/Documentation/learning/advanced-tweaks-with-scheme). Beware though: The notehead style is chosen here on a by-sounding-pitch basis, so it has to be adapted for pieces in another key. But for the reasons I explained, I'm not sure that this is not basically "right".
Of course, there certainly is a way to write a routine in such a way that you can give the desired style and desired key signature once while issuing \override AmbitusNoteHead.style = ... - the routine then rotate the note heads around accordingly - but this exceeds both my scheme skills and available time :-). \version "2.19.44" #(define (style-sacredHarp-notehead grob) "Change the notehead style according to pitch class." (let ((mod-position (modulo (ly:grob-property grob 'staff-position) 7))) (case mod-position ;; Return styles ((1) 'fa) ; for C ((2) 'sol) ; for D ((3) 'la) ; for E ((4) 'fa) ; for F ((5) 'sol) ; for G ((6) 'la) ; for A ((0) 'mi) ; for B ))) % Standard definitions for \aikenHeads or \sacredHarpHeads may be % found in lilypond/usr/share/lilypond/current/ly/property-init.ly: % % % aikenHeads = \set shapeNoteStyles = ##(do re miMirror fa sol la ti) % aikenHeadsMinor = \set shapeNoteStyles = ##(la ti do re miMirror fa sol) % funkHeads = \set shapeNoteStyles = ##(doFunk reFunk miFunk faFunk solFunk laFunk tiFunk) % funkHeadsMinor = \set shapeNoteStyles = ##(laFunk tiFunk doFunk reFunk miFunk faFunk solFunk) % sacredHarpHeads = \set shapeNoteStyles = ##(fa sol la fa sol la mi) % sacredHarpHeadsMinor = \set shapeNoteStyles = ##(la mi fa sol la fa sol) % southernHarmonyHeads = \set shapeNoteStyles = ##(faThin sol laThin faThin sol laThin miThin) % southernHarmonyHeadsMinor = \set shapeNoteStyles = ##(laThin miThin faThin sol laThin faThin sol) % walkerHeads = \set shapeNoteStyles = ##(doWalker reWalker miWalker faWalker solFunk laWalker tiWalker) % walkerHeadsMinor = \set shapeNoteStyles = ##(laWalker tiWalker doWalker reWalker miWalker faWalker solFunk) \layout { \context { \Voice \consists "Ambitus_engraver" } \override AmbitusNoteHead.style = #style-sacredHarp-notehead } \relative { \sacredHarpHeads c'4 d e b' } 2017-08-11 10:47 GMT+02:00 Lukas-Fabian Moser <l...@gmx.de>: > Hi Barry, > > unfortunately I do not have a ready-made solution - while it's possible to > change the ambitus note heads to a single specific sign by issuing (for > example) \override AmbitusNoteHead.style = #'do in the \layout block, this > is not a solution since it changes both ambitus note heads at the same time > -, I just want to point out an inherent problem: > As far as I understand, \sacredHarpHeads and \aikenHeads depend on the key > signature chosen (in much the same way that movable do syllables do). So, > it's a bit dodgy to issue ambitus information using these signs since the > key signature might change in the course of the piece. (Strictly speaking, > the ambitus signs occur at a place before a key signature is issued - but > this slight inconsistency applies to ambitus marks in general since they > show note heads *left* to the first clef ever encountered by the singer.) > > Best > Lukas > > > 2017-08-11 10:02 GMT+02:00 Barry Parsons <oulip...@gmail.com>: > >> Hi all, >> >> As a newbie to this wonderful software I have a slightly odd request. >> >> I set vocal music using shape notes (\sacredHarpHeads or \aikenHeads). >> I've recently discovered the ambitus function, which is really useful. >> >> I wonder, is it possible to add the correct shaped noteheads to the >> ambitus at the start of a score, instead of ordinary round noteheads? >> >> Thanks in advance, >> Barry >> >> >> _______________________________________________ >> lilypond-user mailing list >> lilypond-user@gnu.org >> https://lists.gnu.org/mailman/listinfo/lilypond-user >> >> >
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user