bug-lilypond
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Cross-staff beaming


From: Hilary Snaden
Subject: Cross-staff beaming
Date: Sun, 29 May 2011 10:24:03 +0100
User-agent: Thunderbird 2.0.0.24 (Windows/20100228)

Manual beamings of cross-staff note groups are mangled, but inconsistently. The beaming in this extract works for the first 6 bars, then fails on beats 1 and 3 on the following bars. (Beamings on beats 2 and 4 are as they were.) Versions 2.12.2, 2.13.61 and 2.13.62 behave in the same way.

\version "2.13.62"

csu = \change Staff = "upper"
csl = \change Staff = "lower"
sd = \stemDown
sn = \stemNeutral
su = \stemUp

manualBeam =
#(define-music-function (parser location beg-end)
  (pair?)
  #{
  \once \override Beam #'positions = #$beg-end
  #})

upper = \relative a {
  \clef treble \key a \major \time 4/4
  \su
  r16 \csl a^( e cis' \manualBeam #'(1.5 . 2) a \csu e' cis e) % 1
  r \csl a,^( e cis' \manualBeam #'(1.5 . 2) a \csu e' cis e) % 1
  r \csl a,^( e cis' \manualBeam #'(1.5 . 2) a \csu e' cis e) % 2
  r \csl a,^( e cis' \manualBeam #'(1.5 . 2) a \csu e' cis e) % 2
  r \csl a,^( e cis' \manualBeam #'(1.5 . 2) a \csu e' cis e) % 3
  r \csl a,^( e cis' \manualBeam #'(1.5 . 2) a \csu e' cis e) % 3
  % the manual beams on beats 1 and 3 work fine here...
  r \csl \manualBeam #'(1 . 1.5) a,^( fis \csu d' a fis' d fis) % 4
  r \csl \manualBeam #'(1 . 1.5) a,^( fis \csu d' a fis' d fis) % 4
  r \csl a,^( e cis' \manualBeam #'(1.5 . 2) a \csu e' cis e) % 5
  r \csl a,^( e cis' \manualBeam #'(1.5 . 2) a \csu e' cis e) % 5
  r \csl gis,^( e b' gis \csu \manualBeam #'(1.5 . 2) e' \csl b \csu e) % 6
  r \csl gis,^( e b' gis \csu e' \csl b \csu e) % 6
  % ... but from here onward they fail
  % the log shows "warning: weird stem size, check for narrow beams"
  % the manual beaming on beats 2 and 4 continues to work OK
  r \csl \manualBeam #'(1 . 1.5) ais,^( g \csu e' % 7
  \csl \manualBeam #'(1.5 . 2) ais, \csu g' e g) % 7
  r \csl \manualBeam #'(1 . 1.5) ais,^( g \csu e'
  \csl \manualBeam #'(1.5 . 2) ais, \csu g' e g) % 7
  r \csl \manualBeam #'(1 . 1.5) b,^( gis! \csu e' % 8
  \csl \manualBeam #'(1.5 . 2) b \csu gis' e gis) % 8
  r \csl \manualBeam #'(1 . 1.5) b,^( a \csu dis % 8
  \csl \manualBeam #'(1.5 . 2) b \csu fis' dis fis) % 8
  r \csl \manualBeam #'(1 . 1.5) b,^( gis \csu e' % 9
  \csl \manualBeam #'(1.5 . 2) b \csu gis' e b' % 9
  gis b e, gis d! e b e) % 9
  r \csl a,^( e c' \manualBeam #'(1.5 . 2) a \csu e' c e) % 10
  r \csl a,^( e c' \manualBeam #'(1.5 . 2) a \csu e' c e) % 10
  r \csl a,^( e c' \manualBeam #'(1.5 . 2) a \csu e' c e) % 11
  r \csl a,^( e c' \manualBeam #'(1.5 . 2) a \csu e' c e) % 11
  r \csl \manualBeam #'(1 . 1.5) bes^( g \csu d' % 12
  \manualBeam #'(1.5 . 2) \csl bes \csu g' d g) % 12
  r d^( bes g' d bes' g bes) % 12
}

lower = \relative a, {
  \clef bass \key a \major \time 4/4
  \sd a4 r a r a r a r a r a r a r a r a r a r % 1-5
  e r e r cis' r cis r b r b r e, r r2 % 6-9
  a4 r a r a r a r g r g r % 10-12
}

\score {
  \new PianoStaff {
    <<
      \new Staff = "upper" { \upper }
      \new Staff = "lower" { \lower }
    >>
  }
}

--
Hilary Snaden

Attachment: beambug.pdf
Description: Adobe PDF document


reply via email to

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