2015-01-14 22:12 GMT+01:00 Noeck <noeck.marb...@gmx.de>: > Hi Abraham, > > Am 14.01.2015 um 17:24 schrieb tisimst: >> P.S. I'm with Alistair, though. Is there any reason \arpeggioArrow[Up/Down] >> isn't designed to work by itself rather than requiring another explicit >> \arpeggio? > > I think, it is simply implemented in analogy to all the other Up/Down/Neutral > settings: { \slurUp a( a) \slurNeutral a( a) } etc. > In that sense it is very consistent: You set the direction before you use it > and > it is valid until you reset the direction to netural again. It is just a > shortcut for overrides as the other direction settings are. > > However, I feel like the arpeggio is a bit odd in this list: > arpeggio, slurs, phrasing slurs, stems, tuplet brackets, augmentation dots > etc. > first because it is more often than not a one-time thing and second because it > is written in a long form anyway: '\arpeggio' and not like slurs '(' or > implicitly by the duration '4.'. So writing '\arpeggioUp' would not hurt. And, > in contrast to slur for example, the direction markers ^ and _ do not work to > set the direction of the arpeggio arrow. > > So I understand why it works the way it is – and it has some logic – but at > the > same time I understand you, that there would be more straight forward (more > easy > to understand) solutions. It is perhaps a case where consistency is not the > primary goal. > > Cheers, > Joram
Some coding ideas, not all convincing, imho. Just a little brain-storming: \version "2.19.15" \paper { indent = 0 } \layout { \markLengthOn \override Score.RehearsalMark.self-alignment-X = #LEFT } arpeggioUp = -\tweak #'stencil #ly:arpeggio::print -\tweak #'X-extent #ly:arpeggio::width -\tweak #'arpeggio-direction #UP \arpeggio \relative c'' { \mark "\"default\"" <g b d g>2\arpeggio \mark "\"some overrides applied\"" \override Arpeggio.stencil = #(lambda (grob) (grob-interpret-markup grob "xy")) \override Arpeggio.X-extent = #'(0 . 5) <g b d g>\arpeggio \mark \markup \column { "\"new short-cut\"" "\"previous overrides not in action\"" } <g b d g>\arpeggioUp \mark "\"overrides persists!\"" <g b d g>\arpeggio \mark "\"arpeggioArrowUp clears overrides\"" \arpeggioArrowUp <g b d g>\arpeggio <g b d g>\arpeggio } foo = #(define-music-function (parser location mus)(ly:music?) (music-map (lambda (m) (if (music-is-of-type? m 'arpeggio-event) (make-music 'ArpeggioEvent 'tweaks (list (cons 'arpeggio-direction (ly:music-property m 'direction)))) m)) mus)) \foo \relative c'' { \mark "sort of post-processing" <g b d g>4\arpeggio <g b d g>4^\arpeggio <g b d g>4_\arpeggio } Cheers, Harm _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user