Re: occasional ragged-right lines in the interior of mostly non-ragged-right score
Robert Gaebler wrote: I understand to set ragged-right = ##f to get an even (all aligned) right hand edge, and set ragged-right=##t to get a ragged right edge. However this setting affects the entire score. I would like to make occasional exceptions here and there in the score. Have a look at http://lsr.di.unimi.it/LSR/Item?id=1098 (and be sure to read all the small print) Cheers, Robin
Re: Change size of all notes in one voice with partCombine
This is the intended behavior of partCombine. In the usual use case, with the same notehead size you still want to be able to follow each voice, so partCombine doesn’t merge them into chords when they’re crossed. (This is obscured in your first example because you are using \stemUp there, otherwise you would see the stems indicating the voicing). Anyway you can easily override this behavior by using partCombineChords, like … basso = { \partCombineChords d'4 e' \stemUp f'' g' a'2 } … HTH /Leo > 1 juli 2021 kl. 06:52 skrev Dinh Hoang Tu : > > Sorry for short description in my last email. > I mean when 2nd voice has notes going upper and lower than 1st voice, > \partCombine won't combine 2 notes. > There is a gap between 2 stems, as in attached image. > > Many thanks, > Tu' > > On Thu, 1 Jul 2021 at 09:35, Dinh Hoang Tu wrote: > 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 wrote: >> Le 30/06/2021 16:47, Dinh Hoang Tu 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
Re: Change size of all notes in one voice with partCombine
As a more general tip: if you want all stems to be pointing up you can specify that on document or score level in a layout block, like \layout { \context { \Voice \override Stem.direction = #UP }} Or on a staff level in \with statements, like \new Staff \with { \stemUp } ### music goes here > 1 juli 2021 kl. 10:54 skrev Leo Correia de Verdier > : > > This is the intended behavior of partCombine. In the usual use case, with the > same notehead size you still want to be able to follow each voice, so > partCombine doesn’t merge them into chords when they’re crossed. (This is > obscured in your first example because you are using \stemUp there, otherwise > you would see the stems indicating the voicing). > > Anyway you can easily override this behavior by using partCombineChords, like > … > > basso = { \partCombineChords d'4 e' \stemUp f'' g' a'2 } > > … > HTH > /Leo > >> 1 juli 2021 kl. 06:52 skrev Dinh Hoang Tu : >> >> Sorry for short description in my last email. >> I mean when 2nd voice has notes going upper and lower than 1st voice, >> \partCombine won't combine 2 notes. >> There is a gap between 2 stems, as in attached image. >> >> Many thanks, >> Tu' >> >> On Thu, 1 Jul 2021 at 09:35, Dinh Hoang Tu wrote: >> 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 wrote: >>> Le 30/06/2021 16:47, Dinh Hoang Tu 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 >
Partcombine gilssandi
Dear list! I’m attempting to use partCombine on a pair of voices that contain glissandi, like this: %% \version "2.22.1" \partCombine {c''8 b' \glissando a'2. } {e'4 \glissando f'2. } %%% Is there any way to make that work? There is also a possibly harder case I will come across in this piece, glissandi through headless notes: %%% \version "2.22.1" t = \tweak NoteHead.transparent ##t \etc \partCombine { f''8 \glissando \temporary \override NoteColumn.glissando-skip = ##t \t e'' \t d'' \t d'' \t c''4 \t b' \revert NoteColumn.glissando.skip g'1 } {\repeat unfold 8 f'8 g'1 } %%% If the first was is possible, can this work too? Love /Leo
Re: Change size of all notes in one voice with partCombine
Hello Leo, Thanks for your explanation. Got your point, totally agree it should not combine when 2 voices are identical, otherwise it's confusing: cannot distinguish 2 voices. But when I use different font-sizes to distinguish 2 voices, I can only combine them when 2 voices are on same side of one another. If 2nd voice goes both upper and lower than 1st one, I cannot combine them. I found a trick, not nice, but at least works for this case: skip exceptional note of 2nd voice, and render it on 1st voice with tweak (I know this won't work if baritone has a separate lyrics, and here midi is not correct either. Fortunately these are not my case ^^) \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 } basso = { d'4 e' f'' g' a'2 } alto = { d'4 e' \stemUp f'' g' a'2 } tenor = { d'4 e' f'' g' a'2 } \new Score { \new Staff << \partCombine \soprano \basso >> } % correct but not expected \new Score { \new Staff << \partCombine \soprano \alto >> } % expected, without tweak, can combine but cannot confusing \new Score { \new Staff << \partCombine \soprano \localFontSize -3 \tenor >> } % distinguish 2 voices, but not combined mezzo = { f'4 g'4 4 b'4 c''2 } baritone = { d'4 e' \skip 4 g' a'2 } \new Score { \new Staff << \partCombine \mezzo \localFontSize -3 \baritone >> } % trick Thanks to all. Have a good day. Tu' On Thu, 1 Jul 2021 at 16:07, Leo Correia de Verdier < leo.correia.de.verd...@gmail.com> wrote: > As a more general tip: if you want all stems to be pointing up you can > specify that on document or score level in a layout block, like > > > \layout { > \context { > \Voice > \override Stem.direction = #UP > }} > > > Or on a staff level in \with statements, like > > > \new Staff > \with { \stemUp } > ### music goes here > > > > 1 juli 2021 kl. 10:54 skrev Leo Correia de Verdier < > leo.correia.de.verd...@gmail.com>: > > > > This is the intended behavior of partCombine. In the usual use case, > with the same notehead size you still want to be able to follow each voice, > so partCombine doesn’t merge them into chords when they’re crossed. (This > is obscured in your first example because you are using \stemUp there, > otherwise you would see the stems indicating the voicing). > > > > Anyway you can easily override this behavior by using partCombineChords, > like > > … > > > > basso = { \partCombineChords d'4 e' \stemUp f'' g' a'2 } > > > > … > > HTH > > /Leo > > > >> 1 juli 2021 kl. 06:52 skrev Dinh Hoang Tu : > >> > >> Sorry for short description in my last email. > >> I mean when 2nd voice has notes going upper and lower than 1st voice, > \partCombine won't combine 2 notes. > >> There is a gap between 2 stems, as in attached image. > >> > >> Many thanks, > >> Tu' > >> > >> On Thu, 1 Jul 2021 at 09:35, Dinh Hoang Tu wrote: > >> 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 > wrote: > >>> Le 30/06/2021 16:47, Dinh Hoang Tu 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
Re: Change size of all notes in one voice with partCombine
If you use the \partCombineChords command in one of the voices (as in the snippet I sent with last mail) it should override the default behavior of partCombine and work without tricks or problems. Did you try it? > 1 juli 2021 kl. 17:44 skrev Dinh Hoang Tu : > > Hello Leo, > > Thanks for your explanation. Got your point, totally agree it should not > combine when 2 voices are identical, otherwise it's confusing: cannot > distinguish 2 voices. > But when I use different font-sizes to distinguish 2 voices, I can only > combine them when 2 voices are on same side of one another. > If 2nd voice goes both upper and lower than 1st one, I cannot combine them. > > I found a trick, not nice, but at least works for this case: skip exceptional > note of 2nd voice, and render it on 1st voice with tweak > (I know this won't work if baritone has a separate lyrics, and here midi is > not correct either. Fortunately these are not my case ^^) > > \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 } > basso = { d'4 e' f'' g' a'2 } > alto = { d'4 e' \stemUp f'' g' a'2 } > tenor = { d'4 e' f'' g' a'2 } > \new Score { \new Staff << \partCombine \soprano \basso >> } % correct but > not expected > \new Score { \new Staff << \partCombine \soprano \alto >> } % expected, > without tweak, can combine but cannot confusing > \new Score { \new Staff << \partCombine \soprano \localFontSize -3 \tenor >> > } % distinguish 2 voices, but not combined > > mezzo = { f'4 g'4 4 b'4 c''2 } > baritone = { d'4 e' \skip 4 g' a'2 } > \new Score { \new Staff << \partCombine \mezzo \localFontSize -3 \baritone >> > } % trick > > Thanks to all. > Have a good day. > > Tu' > >> On Thu, 1 Jul 2021 at 16:07, Leo Correia de Verdier >> wrote: >> As a more general tip: if you want all stems to be pointing up you can >> specify that on document or score level in a layout block, like >> >> >> \layout { >> \context { >> \Voice >> \override Stem.direction = #UP >> }} >> >> >> Or on a staff level in \with statements, like >> >> >> \new Staff >> \with { \stemUp } >> ### music goes here >> >> >> > 1 juli 2021 kl. 10:54 skrev Leo Correia de Verdier >> > : >> > >> > This is the intended behavior of partCombine. In the usual use case, with >> > the same notehead size you still want to be able to follow each voice, so >> > partCombine doesn’t merge them into chords when they’re crossed. (This is >> > obscured in your first example because you are using \stemUp there, >> > otherwise you would see the stems indicating the voicing). >> > >> > Anyway you can easily override this behavior by using partCombineChords, >> > like >> > … >> > >> > basso = { \partCombineChords d'4 e' \stemUp f'' g' a'2 } >> > >> > … >> > HTH >> > /Leo >> > >> >> 1 juli 2021 kl. 06:52 skrev Dinh Hoang Tu : >> >> >> >> Sorry for short description in my last email. >> >> I mean when 2nd voice has notes going upper and lower than 1st voice, >> >> \partCombine won't combine 2 notes. >> >> There is a gap between 2 stems, as in attached image. >> >> >> >> Many thanks, >> >> Tu' >> >> >> >> On Thu, 1 Jul 2021 at 09:35, Dinh Hoang Tu wrote: >> >> 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 wrote: >> >>> Le 30/06/2021 16:47, Dinh Hoang Tu a écrit : >> >>> >> >>> >> >>> Hello Jean, Xavier, >>
Hiding the key signature?
Hi. Another newbie question. How do I hide a key engraver after the first instance? I want it at the top, then not on the following staves, which is the default behaviour. I'm sure there is a hide.engraver-thing somewhere... -- \version "2.22" tune = \relative c'' { \clef treble \key des \major \repeat volta 2 { \bar ".|:" R1 R1 R1 R1 } \break % key sig here \repeat volta 2 { R1 R1 R1 R1 } % no key sig? \repeat volta 2 { R1 R1 R1 R1 } % no key sig? } \score { << \new Staff \tune >> } -- TIA .. mark.
Re: Change size of all notes in one voice with partCombine
Yes, I did try \partCombineChords, but it doesn't seem what I expect. Expectation is 2 notes on same stem, one upper, one lower, not on separate stems. Below is the test and attached result (2 notes have separate stems) \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 } basso = { d'4 e' f'' g' a'2 } alto = { d'4 e' \stemUp f'' g' a'2 } tenor = { d'4 e' f'' g' a'2 } \new Score { \new Staff << \partCombineChords \soprano \basso >> } \new Score { \new Staff << \partCombineChords \soprano \alto >> } \new Score { \new Staff << \partCombineChords \soprano \localFontSize -3 \tenor >> } Please advice if any mistake or missing. Thanks! On Thu, 1 Jul 2021 at 23:05, Leo Correia de Verdier < leo.correia.de.verd...@gmail.com> wrote: > If you use the \partCombineChords command in one of the voices (as in the > snippet I sent with last mail) it should override the default behavior of > partCombine and work without tricks or problems. Did you try it? > > 1 juli 2021 kl. 17:44 skrev Dinh Hoang Tu : > > Hello Leo, > > Thanks for your explanation. Got your point, totally agree it should not > combine when 2 voices are identical, otherwise it's confusing: cannot > distinguish 2 voices. > But when I use different font-sizes to distinguish 2 voices, I can only > combine them when 2 voices are on same side of one another. > If 2nd voice goes both upper and lower than 1st one, I cannot combine them. > > I found a trick, not nice, but at least works for this case: skip > exceptional note of 2nd voice, and render it on 1st voice with tweak > (I know this won't work if baritone has a separate lyrics, and here midi > is not correct either. Fortunately these are not my case ^^) > > \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 } > basso = { d'4 e' f'' g' a'2 } > alto = { d'4 e' \stemUp f'' g' a'2 } > tenor = { d'4 e' f'' g' a'2 } > \new Score { \new Staff << \partCombine \soprano \basso >> } % correct but > not expected > \new Score { \new Staff << \partCombine \soprano \alto >> } % expected, > without tweak, can combine but cannot confusing > \new Score { \new Staff << \partCombine \soprano \localFontSize -3 \tenor > >> } % distinguish 2 voices, but not combined > > mezzo = { f'4 g'4 4 b'4 c''2 } > baritone = { d'4 e' \skip 4 g' a'2 } > \new Score { \new Staff << \partCombine \mezzo \localFontSize -3 \baritone > >> } % trick > > Thanks to all. > Have a good day. > > Tu' > > On Thu, 1 Jul 2021 at 16:07, Leo Correia de Verdier < > leo.correia.de.verd...@gmail.com> wrote: > >> As a more general tip: if you want all stems to be pointing up you can >> specify that on document or score level in a layout block, like >> >> >> \layout { >> \context { >> \Voice >> \override Stem.direction = #UP >> }} >> >> >> Or on a staff level in \with statements, like >> >> >> \new Staff >> \with { \stemUp } >> ### music goes here >> >> >> > 1 juli 2021 kl. 10:54 skrev Leo Correia de Verdier < >> leo.correia.de.verd...@gmail.com>: >> > >> > This is the intended behavior of partCombine. In the usual use case, >> with the same notehead size you still want to be able to follow each voice, >> so partCombine doesn’t merge them into chords when they’re crossed. (This >> is obscured in your first example because you are using \stemUp there, >> otherwise you would see the stems indicating the voicing). >> > >> > Anyway you can easily override this behavior by using >> partCombineChords, like >> > … >> > >> > basso = { \partCombineChords d'4 e' \stemUp f'' g' a'2 } >> > >> > … >> > HTH >> > /Leo >> > >> >> 1 juli 2021 kl. 06:52 skrev Dinh Hoang Tu : >> >> >> >> Sorry for short description in my last email. >> >> I mean when 2nd voice has notes going upper and lower than 1st voice, >> \partCombine won't combine 2 notes. >> >> There is a gap between 2 stems, as in attached image. >> >> >> >> Many thanks, >> >> Tu' >> >> >> >> On Thu, 1 Jul 2021 at 09:35, Dinh Hoang Tu wrote: >> >> 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.
Re: Hiding the key signature?
On Fri 02 Jul 2021 at 13:15:07 (+1000), Mark Probert wrote: > Another newbie question. How do I hide a key engraver after the first > instance? I want it at the top, then not on the following staves, which > is the default behaviour. I'm sure there is a hide.engraver-thing > somewhere... Put \omit Staff.KeySignature anywhere after the first measure of music. Any earlier and you might not get even the first one. Cheers, David.
Re: Change size of all notes in one voice with partCombine
On 2021-07-01 10:11 pm, Dinh Hoang Tu wrote: Yes, I did try \partCombineChords, but it doesn't seem what I expect. Expectation is 2 notes on same stem, one upper, one lower, not on separate stems. Below is the test and attached result (2 notes have separate stems) \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 } basso = { d'4 e' f'' g' a'2 } alto = { d'4 e' \stemUp f'' g' a'2 } tenor = { d'4 e' f'' g' a'2 } \new Score { \new Staff << \partCombineChords \soprano \basso >> } \new Score { \new Staff << \partCombineChords \soprano \alto >> } \new Score { \new Staff << \partCombineChords \soprano \localFontSize -3 \tenor >> } Please advice if any mistake or missing. \partCombineChords is not a substitute for \partCombine. The former just sets an internal state for the part combiner, however you must use \partCombine to invoke the combiner. Consider: soprano = { f'4 g'4 a'4 b'4 c''2 } tenor = { d'4 e' f'' g' a'2 } \partCombine { \partCombineChords \soprano } { \stemUp \localFontSize -3 \tenor } -- Aaron Hill
Re: Change size of all notes in one voice with partCombine
On 2021-07-01 10:44 pm, Aaron Hill wrote: [...] Also, here's a minor refactor of \localFontSize better separating some concerns: \version "2.22.0" localFontSize = #(define-music-function (font-size music) (number? ly:music?) (map (lambda (m) (ly:music-set-property! m 'tweaks (cons `(font-size . ,font-size) (ly:music-property m 'tweaks (extract-typed-music music 'rhythmic-event)) music) soprano = \fixed c' { f4 g a b c'2 } tenor = \fixed c' { d4 e \tweak color #red f' g 2 } \partCombine { \partCombineChords \soprano } { \stemUp \localFontSize -3 \tenor } The test case below includes an inline \tweak and a chord within the tenor part. -- Aaron Hill