]> git.donarmstrong.com Git - lilypond.git/blobdiff - input/regression/beam-quant-standard.ly
* lily/default-actions.cc (Module): new file. default
[lilypond.git] / input / regression / beam-quant-standard.ly
index 8a8d53ec1505ea237f543f34f078b73bbc04abcf..ebf4c44b96920d7e1a211e3bdcc5bdcb96b333a5 100644 (file)
 \header {
 
-    texidoc = "This file tests a few standard beam quants."
+    texidoc = "This file tests a few standard beam quants, taken from
+    Ted Ross' book. If LilyPond finds another quant, the correct quant
+    is printed over the beam."
     
 }
 
-\version "2.3.6"
+\version "2.4.0"
 
-%
-% todo: make the check-quant function throw an error for incorrect quants
-%
-
-\paper  { raggedright = ##t }
+\layout  {
+    raggedright = ##t
+    #(define debug-beam-quanting #t)
 
+      }
 
+filler = \new Voice \relative  {
+    \hideNotes
+    e4 e
+}
 % 
-% #(ly:set-option 'debug-beam #t)
-
-assertquant =
-#(def-music-function (location l r) (pair? pair?)
-  (let* ((f (check-quant-callbacks l r)))
-   
-   #{
-   \override Beam #'position-callbacks = $f
-   #}
-   
-))
-  
 
-\relative {
-    \assertquant #'(1 . 0)  #'(1 . 0)
+%%
+%% Ross p108--112
+primes = \relative {
+    \time 3/4 
+    \assertBeamQuant #'(0 . 0)  #'(0 . 0)
+    c8[ c]
+    \filler
+    \assertBeamQuant #'(1 . -1)  #'(1 . -1)
+    d8[ d]
+     
+    \filler
+     
+    \assertBeamQuant #'(1 . 0)  #'(1 . 0)
     e8[ e]
-    e4 
-    e4 
-    \assertquant #'(2 . -1)  #'(2 . -1)
+    \filler
+     
+     
+    \assertBeamQuant #'(2 . -1)  #'(2 . -1)
     f8[ f]
-    e4 
-    e4 
-    \assertquant #'(2 . 0)  #'(2 . 0)
+    \filler
+     
+     
+    \assertBeamQuant #'(2 . 0)  #'(2 . 0)
     g8[ g]
-    e4 
-    e4 
-    \assertquant #'(2 . 1)  #'(2 . 1)
+    \filler
+     
+     
+    \assertBeamQuant #'(2 . 1)  #'(2 . 1)
     a8[ a]
-    e4 e4 e4
+    \filler
+      
+%{
     \once \override Beam #'inspect-quants = #'(2.2 . 2.2)
+    \assertBeamQuant 
     a8[ a]
-    e4 
-    e4 
+    \filler
+    
+%}
+    
+}
+
+
+seconds = \relative {
+    
+    \assertBeamQuant #'(0 . 0)  #'(0 . 1)
+    a8[ b]
+    \filler
+     
 
-    \assertquant #'(0 . 1)  #'(1 . 0)
+    \assertBeamQuant #'(0 . 0)  #'(0 . 1)
+    b8[ c]
+    \filler
+     
+
+    \assertBeamQuant #'(0 . 0)  #'(0 . 1)
+    c8[ d]
+    \filler
+     
+    \assertBeamQuant #'(1 . -1)  #'(1 . 0)
     d8[ e]
-    e4 
-    e4 
-    \assertquant #'(1 . 0)  #'(1 . 1)
+    \filler
+     
+     
+    \assertBeamQuant #'(1 . 0)  #'(1 . 1)
     e8[ f]
-    e4 
-    e4 
-    \assertquant #'(2 . -1)  #'(2 . 0)
+    \filler
+     
+     
+    \assertBeamQuant #'(2 . -1)  #'(2 . 0)
     f8[ g]
-    e4 
-    e4 
-    \assertquant #'(2 . 0)  #'(2 . 1)
+    \filler
+     
+     
+    \assertBeamQuant #'(2 . 0)  #'(2 . 1)
     g8[ a]
-    e4 
-    e4 
-    }
+    \filler
+
+    \assertBeamQuant #'(3 . -1)  #'(3 . 0)
+    a8[ b]
+    \filler
+}
+
+filler = \new Voice \relative  {
+    \hideNotes
+    e4 e4.
+}
+
+% Ross, p122 
+primeSixteenths = \relative {
+    \stemUp
+    \assertBeamQuant #'(0 . -1)  #'(0 . -1)
+    g16[ g]
+    \filler
+    \assertBeamQuant #'(0 . -1)  #'(0 . -1)
+    a16[ a]
+    \filler
+    \assertBeamQuant #'(0 . -1)  #'(0 . -1)
+    b16[ b]
+    \filler
+    \assertBeamQuant #'(0 . 0)  #'(0 . 0)
+    c16[ c]
+    \filler
+    \assertBeamQuant #'(1 . -1)  #'(1 . -1)
+    d16[ d]
+    \filler
+    \assertBeamQuant #'(1 . 0)  #'(1 . 0)
+    e16[ e]
+    \filler
+    \assertBeamQuant #'(2 .  -1)  #'(2 . -1)
+    f16[ f]
+    \filler
+    \assertBeamQuant #'(2 . 0)  #'(2 . 0)
+    g16[ g]
+    \filler
+    \assertBeamQuant #'(3 . -1)  #'(3 . -1)
+    a16[ a]
+    \filler
+    \assertBeamQuant #'(3 . 0)  #'(3 . 0)
+    b16[ b]
+    \filler
+}
+
+\new Voice { \primes \seconds \primeSixteenths }
+