lilypond-user
[Top][All Lists]
Advanced

[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




reply via email to

[Prev in Thread] Current Thread [Next in Thread]