]> git.donarmstrong.com Git - lilypond.git/blobdiff - input/regression/markup-rest.ly
Imported Upstream version 2.18.0
[lilypond.git] / input / regression / markup-rest.ly
diff --git a/input/regression/markup-rest.ly b/input/regression/markup-rest.ly
new file mode 100644 (file)
index 0000000..3c4895d
--- /dev/null
@@ -0,0 +1,90 @@
+\version "2.17.19"
+
+\header {
+  texidoc = "The rest markup function works for a variety of style, dot and
+duration settings."
+}
+
+showSimpleRest =
+#(define-scheme-function (parser location dots) (string?)
+   (make-override-markup
+     (cons 'baseline-skip 7)
+     (make-column-markup
+       (map
+         (lambda (style)
+                 (make-line-markup
+                   (list
+                     (make-pad-to-box-markup
+                       '(0 . 20) '(0 . 0)
+                        (symbol->string style))
+                     (make-override-markup
+                       (cons 'line-width 60)
+                       (make-override-markup
+                         (cons 'style style)
+                         (make-fill-line-markup
+                           (map
+                             (lambda (duration)
+                                     (make-rest-markup
+                                       (if (string? duration)
+                                           duration
+                                           (string-append
+                                             (number->string (expt 2 duration))
+                                             dots))))
+                             (append
+                               '("maxima" "longa" "breve")
+                               (iota 8)))))))))
+         '(default
+           mensural
+           neomensural
+           classical
+           baroque
+           altdefault
+           petrucci
+           blackpetrucci
+           semipetrucci
+           kievan)))))
+
+showMultiMeasureRests =
+#(define-scheme-function (parser location)()
+   (make-override-markup
+     (cons 'baseline-skip 7)
+     (make-column-markup
+       (map
+         (lambda (style)
+                 (make-line-markup
+                   (list
+                     (make-pad-to-box-markup
+                        '(0 . 20) '(0 . 0)
+                         (symbol->string style))
+                     (make-override-markup
+                       (cons 'line-width 80)
+                       (make-override-markup
+                         (cons 'style style)
+                         (make-fill-line-markup
+                           (map
+                             (lambda (duration)
+                               (make-line-markup
+                                 (list
+                                   (make-override-markup
+                                      (cons 'multi-measure-rest #t)
+                                      (make-rest-markup
+                                         (number->string duration))))))
+                             (cdr (iota 13)))))))))
+         '(default
+           mensural
+           neomensural
+           classical
+           baroque
+           altdefault
+           petrucci
+           blackpetrucci
+           semipetrucci
+           kievan)))))
+
+\markup \column { \bold "Simple Rests" \combine \null \vspace #0.1 }
+
+\showSimpleRest #"."
+
+\markup \column { \combine \null \vspace #0.1 \bold "MultiMeasureRests" \combine \null \vspace #0.1 }
+
+\showMultiMeasureRests