Re: Cue clefs
On Mon, 26 Feb 2024 at 22:13, Gerardo Ballabio wrote: > > Thanks. It says this -- but it works: > > programming error: No spacing entry from BarLine to `cue-clef' > continuing, cross fingers Ah yes, I hadn't paid attention to that. In that case, let's add a spacing entry between BarLine and cue-clef (I used the same spacing as for clef). \override Staff.BarLine.space-alist = #'((ambitus extra-space . 1.0) (time-signature extra-space . 0.75) (custos minimum-space . 2.0) (clef extra-space . 1.0) (cue-clef extra-space . 1.0) (key-signature extra-space . 1.0) (key-cancellation extra-space . 1.0) (first-note semi-shrink-space . 1.3) (next-note semi-fixed-space . 0.9) (right-edge extra-space . 0.0)) https://lilypond.org/doc/v2.25/Documentation/internals/barline > Just in case I need this for something else, where was the cue-clef > before you moved it? See the standard settings in the Internals Reference: https://lilypond.org/doc/v2.25/Documentation/internals/breakalignment > Yes. See attached. Does it come from a handwritten score or from a well-known publishing house? Unless you really want to reproduce the score as is, I'd suggest adding the cue end clef. Gould (probably the most comprehensive contemporary reference on musical notation) mentions on page 573 of Behind Bars: "Reinstate the player's clef before an entry" (and all her examples do it, without exception). By the way, she also mentions "When a cue clef begins immediately after the barline, place the cue clef before the barline" (which is LilyPond's default). Kind regards, Xavier
Re: Cue clefs
Il giorno dom 25 feb 2024 alle ore 22:35 Xavier Scheuer ha scritto: > Add this before the \cueClef (I only moved the cue-clef after staff-bar): Thanks. It says this -- but it works: programming error: No spacing entry from BarLine to `cue-clef' continuing, cross fingers Just in case I need this for something else, where was the cue-clef before you moved it? > But do you have some reference/example of scores putting the cue clef after > the bar line ? Yes. See attached. Gerardo
Re: How to align second repeat verse against second voice
> Reading the rhythm would be easier if you replaced two of the dotted > quarter notes with an eighth note tied to the following quarter note. Yes, that's a great suggestion too and in fact I had already been considering that very modification. Thanks, Andy
Re: How to align second repeat verse against second voice
Hi Andy, Aaron has already answered your question, but I'd like to suggest one more adjustment. Reading the rhythm would be easier if you replaced two of the dotted quarter notes with an eighth note tied to the following quarter note. Here is the modified code: \version "2.18.2" \paper { #(set-paper-size "letter") } \score { << \new ChoirStaff { << \new Staff { << \key c \major \time 4/4 \new Voice = "first" { \relative c' { \partial 4 c8 c \repeat volta 2 { a b8~ b4 r4 a8 c << % maybe there is a better way? { \voiceOne c4. d8 d8. } \new Voice = "second" { \voiceTwo \tiny c4 c8 d8 \normalsize } >> \oneVoice e16 f8 c a c4 c8~ c4 d8 e } \alternative { { f4 r2 c8 c } { f2( d4) c8 c } } f1 \bar "|." } } >> } \new Lyrics \lyricsto "first" { lo lo | la -- la la -- la | la, la la la la la -- la la. la la la | lu mo mo mo __ mi me ru } \new Lyrics \lyricsto "first" { \repeat unfold 2 { \skip 1 } mo -- mu. mi me | \repeat unfold 2 { \skip 1 } ma ma mi me | mu -- mo. ma mi -- mi } \new Lyrics \lyricsto "second" { ma -- mo mu % this ends up shifted down below the second verse } >> } >> \layout { \context { \Score proportionalNotationDuration = #(ly:make-moment 1/8) } } } Best, Jiri On 25. 02. 24 16:24, Andy Bradford wrote: Thus said Aaron Hill on Sat, 24 Feb 2024 20:51:44 -0800: Probably the easiest the option is to \set associatedVoice to temporarily align your lyrics to the alternate notes. The important quirk of associatedVoice is that you must make the change a syllable ahead of when you need it: I see, yes, this works quite well, thank you. It also cleans up some other tricks I had employed to try to get the text aligned (specifically I had some manual \break and also extended the voice longer than it needed to be). Thanks, Andy
Re: \section across staves
On 26/02/2024 02:04, Garrett Fitzgerald wrote: I see this has been raised before, and is intentional behavior, but I just wanted to be clear. When typesetting band marches, I have a \rehearsalMarks definition that includes double bars as needed. I define all the parts in a single file (for example, MaineFestival.ly) and then have multiple part files (MFestClar1.ly) and score files (MFestScore.ly). In MFestClar1.ly, I will include both \rehearsalMarks and \clarinetOne, and get the bars as specified. In MFestScore.ly, I will only include \rehearsalMarks with the \fluteOne staff, and the bars carry down through all the other staves. Now, with the advent of \section, I thought I could do this the same way. It worked fine for the Clar1 part, but when I tried the score, I found that the \section double bars only appeared in the flute staff where they were included, and did not carry down to the cornet staff where I had the actual music that I had put in up to this point. So, should I basically give up on \section? Should I include it in the individual parts, instead of relying on the \rehearsalMarks definition? Or am I missing a point somewhere? Here is a possible solution. The SectionBcast engraver listens for section and fine events from the rmarks context and broadcasts them to other contexts. The staff context for the instruments have another engraver (SectionRecv) that listens for the broadcasted events and processes them. You probably want to put the additional code in an include file for easy reuse. \version "2.24.2" %% Put this part in a separate file to be included #(define (add-context-property symbol type?) (set-object-property! symbol 'translation-type? type?) (set-object-property! symbol 'translation-doc "custom context property") (set! all-translation-properties (cons symbol all-translation-properties)) symbol) #(add-context-property 'channel ly:dispatcher?) SectionBcast = #(lambda (context) (make-engraver ((initialize translator) (let* ((channel (ly:make-dispatcher)) (score (ly:context-find context 'Score))) (ly:context-set-property! score 'channel channel))) (listeners ((fine-event engraver event) (let ((score (ly:context-find context 'Score))) (ly:broadcast (ly:context-property score 'channel) event))) ((section-event engraver event) (let ((score (ly:context-find context 'Score))) (ly:broadcast (ly:context-property score 'channel) event)) SectionRecv = #(lambda (context) (make-engraver ((initialize translator) (let* ((score (ly:context-find context 'Score)) (channel (ly:context-property score 'channel))) (ly:connect-dispatchers (ly:context-event-source context) channel) \layout { \context { \Staff \consists \SectionRecv } } %% end of include file rmarks = { s1*2 \mark\default s1*2 \section a1*2 \fine } flute = { \repeat unfold 6 c''1 } oboe = { \repeat unfold 6 f'1 } \score { << \new Devnull \with { \consists \SectionBcast } \rmarks \new Staff \with { instrumentName="flute" } \flute \new Staff \with { instrumentName="oboe" } \oboe >> } -- Timothy Lanfear, Bristol, UK.