TextScript inside staff, but not colliding with noteheads?

2023-10-17 Thread jarzan
I'm trying to add text that sits on top of (or right below) a notehead
inside of the staff. This is possible with fingerings, but once you put the
number in quotes, or a letter in quotes, it no longer works.

What I've done so far is: disable outside-staff-priority to allow the text
to collide with the staff, and disable staff-padding to allow the text to
fall down (it would fall to the correct spot if this were fingering).

One of the main issues is that disabling outside-staff-priority allows the
text to collide with the noteheads.

\version "2.24.2"
\relative c' {
\omit Score.Stem
  \override TextScript.staff-padding = #'()
  \override TextScript.outside-staff-priority = ##f
  c^"c"
  d^"d"
}


Re: skip of defined length in lyrics?

2023-10-17 Thread David Wright
On Sun 15 Oct 2023 at 15:07:52 (+0100), Graham King wrote:
> Note to self, since this thread has risen to the status of
> documentation for me:  Valentin's method is sensitive to slurs in the
> instrumental line (I suspect that the end of a slur is equivalent to
> \unset melismaBusy), so some adjustment may be necessary.
  [ … … ]
> It also, understandably, gives weird results if applied immediately
> after a rest, so this does not work:
  [ … … ]

It strikes me that trying to keep the notes in one continuous voice
is what makes things complicated, judging by the snippets you've
posted. Why not just put the verse and full sections in separate
voices, and combine them on the staff. I've massacred a bit of Boyce
as an example, attached.

If I needed MIDI files, I would separate each and every section
(ie, the two voice sections in this fragment), so that they could
all be concatenated in the right order for the MIDI.

Cheers,
David.
\version "2.24.0"
\language "english"
\paper {
  #(set-paper-size "a5landscape")
  print-page-number = ##f
}
#(set-global-staff-size 18)
\header { tagline = ##f }

global = {
  \key bf \major
  \time 3/2
  s1. * 4
  \bar "||"
  s1. * 4
  \bar "||"
  s1. * 4
  \bar "|."
}

sopranov = \relative {
  bf'2 bf1
  a1 bf2
  r2 a1
  bf1.
  s1. * 4
  bf2 bf1
  a1 bf2
  r2 a1
  bf1.
}

soprano = \relative {
  s1. * 4
  a'2 a2 a2
  bf4.( c8) bf2 bf2
  g2 g4. a8 g2
  a2 a2 r2
  s1. * 4
}

altov = \relative {
  g'1 f2
  f1 f2
  r2 f4( c2 d8 ef8)
  d1.
  s1. * 4
  g1 f2
  f1 f2
  r2 f4( c2 d8 ef8)
  d1.
}

alto = \relative {
  s1. * 4
  f'2 f2 f2
  g4.( a8) g2 g2
  e2 e4. f8 e2
  f2 f2 r2
  s1. * 4
}

tenorv = \relative {
  d'2 d1
  c1 d2
  r2 f,1
  f1.
  s1. * 4
  d'2 d1
  c1 d2
  r2 f,1
  f1.
}

tenor = \relative {
  s1. * 4
  d'2 d2 d2
  d2 d2 d2
  c2 c4. c8 c2
  c2 c2 r2
  s1. * 4
}

bassv = \relative {
  g4.( f8 g4. a8) bf2
  f1 bf2
  r2 f1
  bf,1.
  s1. * 4
  g'4.( f8 g4. a8) bf2
  f1 bf2
  r2 f1
  bf,1.
}

bass = \relative {
  s1. * 4
  d'2 d2 d2
  g,2 g2 g2
  c2 c4. c8 c2
  f,2 f2 r2
  s1. * 4
}

texts = \lyricmode {
  Hal -- le -- lu -- jah,
  A -- men.
  Hal -- le -- lu -- jah,
  A -- men.
}

\score {
  \new ChoirStaff <<
\new Staff <<
  \clef treble \global
  \new Voice { \sopranov }
  \addlyrics { \texts }
  \new Voice { \soprano }
>>
\new Staff <<
  \clef treble \global
  \new Voice { \altov }
  \addlyrics { \texts }
  \new Voice { \alto }
>>
\new Staff <<
  \clef "treble_8" \global
  \new Voice { \tenorv }
  \addlyrics { \texts }
  \new Voice { \tenor }
>>
\new Staff <<
  \clef bass \global
  \new Voice { \bassv }
  \addlyrics { \texts }
  \new Voice { \bass }
>>
  >>
  \layout { }
}

\score {
  \new ChoirStaff <<
\new Staff = "top" \with { \consists Merge_rests_engraver } <<
  \clef treble \global
  \new Voice = "soprano" { \voiceOne \sopranov }
  \addlyrics \with { alignAboveContext = "top" } { \texts }
  \new Voice { \voiceOne \soprano }
  \new Voice { \voiceTwo \altov }
  \addlyrics { \texts }
  \new Voice { \voiceTwo \alto }
>>
\new Staff = "bottom" \with { \consists Merge_rests_engraver } <<
  \clef bass \global
  \new Voice { \voiceOne \tenorv }
  \addlyrics \with { alignAboveContext = "bottom" } { \texts }
  \new Voice { \voiceOne \tenor }
  \new Voice { \voiceTwo \bassv }
  \addlyrics { \texts }
  \new Voice { \voiceTwo \bass }
>>
  >>
  \layout { }
}


verse-anthem.pdf
Description: Adobe PDF document


Re: Where is my tuplet bracket?

2023-10-17 Thread David Kastrup
Werner LEMBERG  writes:

>> \new Staff {
>>   \key c \minor
>>   < es' g' > < bes' d''~ >2. |
>>   \tuplet 3/2 \voices "",2 << { \voiceOne d''4 c'' es'' \oneVoice } \\
>>{ g'4 as'2 } >>
>>   < f' as' >4  |
>> }
>
> Looks like a bug, so please file a report.

The problem is that I don't know where to locate the bug.  The
difference appears to be that \voices creates a \context Staff wrapper
around the parallel construct.  I suspect that the idea is to help with
continuing voices, like if you compare the outputs of

{ << { \voiceOne e'2~ \oneVoice } \new Voice { \voiceTwo c'2 } >> e'2 }

{ \voices "",2 << { \voiceOne e'2~ \oneVoice } \\ c'2 >> e'2 }

The second clearly looks more sensible, but if you look closely, there
still isn't a tie, so the voice does not actually continue in this
situation.  So this situation still is not helped in any manner, and the
one thing \voices has over unadorned << \\ >> is that it takes named
contexts.

Clearly this discrepancy is worth removing; I just don't know right now
why it exists in the first place.  I must have been thinking something.™

Now independent from the two constructs differing by a \context Staff
wrapper (added in voicify-music in scm/music-functions.scm).

What is additionally puzzling is that either change is accomplished by
voicify-music, so why is one use affected and the other not?  Or does
this happen when voicify-music is applied multiple times (the second
time during scorification)?

All this appears mostly unrelated to \tuplet tripping over one but not
the other incantation.

-- 
David Kastrup