Hi Peter,

2012/2/3 Peter Crighton <petecrigh...@googlemail.com>:
> Thanks, that fixed the issue with the accidentals, but it's now
> harmonic again and not harmonic-mixed… the "\override NoteHead" line
> seems to just be ignored. (I also don't see how overriding
> after-line-breaking should alter the noteheads…)

sorry, I concentrated on accidentals and dots and I simply overlooked
that the NoteHeads were'nt changed any more.

Try:

\version "2.14.2"

\paper {
        ragged-right = ##t
}

mixedHarmonicByFret = #(define-music-function (parser location fret
music) (number? ly:music?)
 (_i "Convert @var{music} into mixed harmonics; the resulting notes resemble
harmonics played on a fretted instrument by touching the strings above @var{fret
}.")
 (let* ((fret (number->string fret))
        (pitch (fret->pitch fret)))
       (make-sequential-music
        (list
         #{
           \override TabNoteHead #'stencil =
#(tab-note-head::print-custom-fret-label $fret)
           \override NoteHead #'minimum-Y-extent = #'(-0.1 . 0.1)
           \override NoteHead #'stencil = #(lambda (grob)
                        (ly:grob-set-property! grob 'style 'harmonic-mixed)
                        (ly:note-head::print grob))
         #}
         (make-harmonic
           (calc-harmonic-pitch pitch music))
         #{
           \revert TabNoteHead #'stencil
           \revert NoteHead #'stencil
           \revert NoteHead #'minimum-Y-extent
         #}))))

music = {
 \override StringNumber #'transparent = ##t
 \set harmonicDots = ##t
 \ottava #1
 \mixedHarmonicByFret #12 <e,\6>8
 \mixedHarmonicByFret #12 <e g\3 b\2 e'\1>8.
 \mixedHarmonicByFret #7 <g\3 b\2 e'\1>
 \mixedHarmonicByFret #5 <g\3 b\2 e'\1>
 \mixedHarmonicByFret #7 <g\3 b\2 e'\1>
 \mixedHarmonicByFret #12 <g\3 b\2 e'\1>8 |
  c'4 d' e' f' g'1
}
\score {
 <<
   \new Staff { \clef "G_8" \key e\major \music }
   \new TabStaff { \tabFullNotation \music }
 >>
}

Cheers,
  Harm

_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user

Reply via email to