[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Combining notes and articualtions
From: |
Jean Abou Samra |
Subject: |
Re: Combining notes and articualtions |
Date: |
Mon, 20 Dec 2021 23:36:39 +0100 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.3.1 |
Le 20/12/2021 à 22:28, Leo Correia de Verdier a écrit :
Dear list!
Could you help me with a clever way to copy/clone the articulations from
simultaneous notes in one sequential expression to another?
So that I could for instance enter the total articulations of a phrase as
\version "2.23.3"
<<
\new RhythmicStaff \with { \override Script.Y-offset = #-1.7 }
<< { s16_> s16_> s16 s16_. s16_- s8_> s16_! s8__ s8__ s16_. s8_- s16_. }
{ f'16 16 16 16 16 8 16 8 8 16 8 16 } >>
% but also apply the first sequential expressions, with the articulations, to
for instance
\new RhythmicStaff { c'8. 16 8. 16 8 r8 8. 16 }
% so that the result would be
\new RhythmicStaff { c'8._> 16-. 8._- 16_! 8__ r8 8.-. 16-. }
% or to
\new RhythmicStaff {c'16 16 16 16 r8. 16 r8 16 16 r16 8. }
% getting
\new RhythmicStaff {c'16_> 16_> 16 16_. r8. 16_! r8 16__ 16 r16 8._- }
Thanks a lot!
/Leo
I'd do this:
\version "2.22.1"
\layout {
\override Voice.Script.before-line-breaking =
#(lambda (grob)
(let ((parent (ly:grob-parent grob X)))
(if (or (not (grob::has-interface parent 'note-column-interface))
(not (null? (ly:grob-object parent 'rest))))
(ly:grob-suicide! grob))))
}
articulations = { s16_> s16_> s16 s16_. s16_- s8_> s16_! s8__ s8__
s16_. s8_- s16_. }
\new RhythmicStaff \with { \override Script.Y-offset = #-1.7 }
\new Voice << \articulations { f'16 16 16 16 16 8 16 8 8 16 8 16 } >>
\new RhythmicStaff \new Voice << \articulations { c'8. 16 8. 16 8 r8 8.
16 } >>
\new RhythmicStaff \new Voice << \articulations { c'16 16 16 16 r8. 16
r8 16 16 r16 8. } >>
Best,
Jean