]> git.donarmstrong.com Git - lilypond.git/blob - input/regression/beam-concave.ly
robustness: handle floating grace attached across line breaks. Fixes #203
[lilypond.git] / input / regression / beam-concave.ly
1 \version "2.10.0"
2 \header{
3
4   texidoc = "Fully concave beams should be horizontal. Informally spoken,
5   concave refers to the shape of the notes that are opposite a
6   beam. If an up-beam has high notes on its center stems, then we call
7   it concave.
8
9   If a beam is fails a test, the desired slope is printed next to it.
10
11
12 }
13
14
15 resetMeasure = \set Score.measurePosition = #(ly:make-moment 0 1)
16
17 %% examples from Ross.
18 rossFourBeams =\relative c'' {
19   \time 2/4
20   c8[ e b c]
21   b[ c d b]
22   c[ f b, c]
23
24   a[ f a f] a[ a' a, a']
25   a[ d, e g] a[ f f g]
26   c,[ b f' e]
27   b[ e g, e']
28   c'[ c, c c]
29   c[ c c c']
30   f,,[ b a g]
31   f[g g e]
32   a[ d, b' g]
33 }
34 rossThreeBeams = \relative c'' {
35   \time 6/8
36   e[ a, c] f[ d g]
37   f,[ b g] a[ b f]
38   d'[ c b a b e]
39   c[ b a c b a]
40   d,[ g a g f e ]
41   a[ g f a g f]
42   d'[ g, a b c d]
43   f[ e d c b f']
44 }
45
46 rossBeams = \relative c'' {
47   \rossFourBeams
48   \rossThreeBeams
49 }
50
51 \layout{
52   ragged-right = ##t
53   #(define debug-beam-quanting #t)
54 }
55
56
57
58
59 #(define (<> x y) (not (= x  y)))
60 \new Voice {
61   \override Beam #'positions = #(ly:make-simple-closure
62                                  (ly:make-simple-closure
63                                   (append
64                                    (list chain-grob-member-functions `(,cons 0 0))
65                                    (check-slope-callbacks =))))
66   \rossBeams
67   
68 }