Hello Jean and all,

I would love to contribute if I can :)

Using this in one music sheet, if 2nd voice has notes going upper and lower
than 1st voice, \partCombine will not work.

\version "2.22.1"
localFontSize =
#(define-music-function (font-size music) (number? ly:music?)
   (for-some-music
     (lambda (m)
       (if (music-is-of-type? m 'rhythmic-event)
           (begin
             (set! (ly:music-property m 'tweaks)
                   (cons `(font-size . ,font-size)
                         (ly:music-property m 'tweaks)))
             #t)
           #f))
     music)
   music)
soprano = { f'4 g'4 a'4 b'4 c''2 }
alto = { d'4 e' \stemUp f'' g' a'2 }
basso = { d'4 e' \stemUp f'' g' a'2 }
tenor = { d'4 e' \stemUp \tweak font-size #-3 f'' g' a'2 }
\new Score { \new Staff << \partCombine \soprano \alto >> }
\new Score { \new Staff << \partCombine \soprano \localFontSize -3 \basso
>> }
\new Score { \new Staff << \partCombine \soprano \tenor >> }

Many thanks again to any help.

Best,
Tu'

On Thu, 1 Jul 2021 at 04:00, Jean Abou Samra <j...@abou-samra.fr> wrote:

> Le 30/06/2021 16:47, Dinh Hoang Tu <dhoan...@gmail.com> a écrit :
>
>
> Hello Jean, Xavier,
>
> I think these music functions are useful enough to be integrated into
> Lilypond itself.
> I put them in my local music-functions-init.ly for personal use.
> But it will be helpful for Lilypond users, including myself, to have these
> handy features by default.
>
> Thank you and have a good day.
>
> Tu'
>
>
> Hello,
>
> Actually this particular music function is rather hacky. It only applies
> to notes and rests (not articulations or dynamics) and would fail with
> things like quoted music or events inserted via the edition engraver. In
> summary: it is not mature enough to be integrated in the core right away.
>
> As described in my previous email, one of the projects on my stack would
> make \override just work as expected, so I would prioritize working on
> this.
>
> Best regards,
> Jean
>

Reply via email to