]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/scheme-engravers.scm
Doc: LM - correct @example for Tweak Command
[lilypond.git] / scm / scheme-engravers.scm
index 1709db1f993c90bb880be443988a440d3af5aec7..0766cbc19c25730127562d0e594c06bed61891a8 100644 (file)
@@ -34,70 +34,70 @@ successive measures, and boundaries are shared by adjoining spanners."
         (elapsed 0))
 
     (make-engraver
-      (listeners ((measure-counter-event engraver event)
-        (set! last-measure-seen (ly:context-property context 'currentBarNumber))
-        (set! new-measure? #t)
-        (cond
-          ((and (= START (ly:event-property event 'span-direction))
-                go?)
-           (begin
-             (set! stop? #t)
-             (ly:input-warning
-               (ly:event-property event 'origin)
-               "count not ended before another begun")))
-          ((= START (ly:event-property event 'span-direction))
-           (set! go? #t))
-          ((= STOP (ly:event-property event 'span-direction))
-           (begin
-             (set! stop? #t)
-             (set! go? #f))))))
+     (listeners ((measure-counter-event engraver event)
+                 (set! last-measure-seen (ly:context-property context 'currentBarNumber))
+                 (set! new-measure? #t)
+                 (cond
+                  ((and (= START (ly:event-property event 'span-direction))
+                        go?)
+                   (begin
+                     (set! stop? #t)
+                     (ly:input-warning
+                      (ly:event-property event 'origin)
+                      "count not ended before another begun")))
+                  ((= START (ly:event-property event 'span-direction))
+                   (set! go? #t))
+                  ((= STOP (ly:event-property event 'span-direction))
+                   (begin
+                     (set! stop? #t)
+                     (set! go? #f))))))
 
-      ((process-music trans)
-        (let ((col (ly:context-property context 'currentCommandColumn))
-              (now (ly:context-property context 'measurePosition))
-              (current-bar (ly:context-property context 'currentBarNumber)))
-          ; If the counter has been started, make sure we're in a new bar
-          ; before finishing a count-spanner and starting a new one.
-          ; Since we consider all CommandColumns encountered, we need this
-          ; check so that a count-spanner is not created for each pair.
-          (if (and (ly:grob? count-spanner)
-                   (> current-bar last-measure-seen))
-              (set! new-measure? #t))
-          (if new-measure?
-              (begin
-                ; Check if we have the first column of the measure.
-                ; The possibility of initial grace notes is considered.
-                (if (moment<=? now ZERO-MOMENT)
-                    (begin
-                      ; If we have the first column, finish the previous
-                      ; counter-spanner (if there is one).
-                      (if (ly:grob? count-spanner)
-                          (begin
-                            (ly:spanner-set-bound! count-spanner RIGHT col)
-                            (ly:pointer-group-interface::add-grob count-spanner 'columns col)
-                            (ly:engraver-announce-end-grob trans count-spanner col)
-                            (set! count-spanner '())))
-                      ; if count is over, reset variables
-                      (if stop?
-                          (begin
-                            (set! elapsed 0)
-                            (set! stop? #f)))
-                      ; if count is in progress, begin a counter object
-                      (if go?
-                          (let* ((c (ly:engraver-make-grob trans 'MeasureCounter col))
-                                 (counter (ly:grob-property c 'count-from)))
-                            (ly:spanner-set-bound! c LEFT col)
-                            (ly:pointer-group-interface::add-grob c 'columns col)
-                            (set! (ly:grob-property c 'count-from) (+ counter elapsed))
-                            (set! count-spanner c)
-                            (set! elapsed (1+ elapsed))))
-              (set! new-measure? #f)))))
-          (set! last-measure-seen current-bar)))
+     ((process-music trans)
+      (let ((col (ly:context-property context 'currentCommandColumn))
+            (now (ly:context-property context 'measurePosition))
+            (current-bar (ly:context-property context 'currentBarNumber)))
+        ;; If the counter has been started, make sure we're in a new bar
+        ;; before finishing a count-spanner and starting a new one.
+        ;; Since we consider all CommandColumns encountered, we need this
+        ;; check so that a count-spanner is not created for each pair.
+        (if (and (ly:grob? count-spanner)
+                 (> current-bar last-measure-seen))
+            (set! new-measure? #t))
+        (if new-measure?
+            (begin
+              ;; Check if we have the first column of the measure.
+              ;; The possibility of initial grace notes is considered.
+              (if (moment<=? now ZERO-MOMENT)
+                  (begin
+                    ;; If we have the first column, finish the previous
+                    ;; counter-spanner (if there is one).
+                    (if (ly:grob? count-spanner)
+                        (begin
+                          (ly:spanner-set-bound! count-spanner RIGHT col)
+                          (ly:pointer-group-interface::add-grob count-spanner 'columns col)
+                          (ly:engraver-announce-end-grob trans count-spanner col)
+                          (set! count-spanner '())))
+                    ;; if count is over, reset variables
+                    (if stop?
+                        (begin
+                          (set! elapsed 0)
+                          (set! stop? #f)))
+                    ;; if count is in progress, begin a counter object
+                    (if go?
+                        (let* ((c (ly:engraver-make-grob trans 'MeasureCounter col))
+                               (counter (ly:grob-property c 'count-from)))
+                          (ly:spanner-set-bound! c LEFT col)
+                          (ly:pointer-group-interface::add-grob c 'columns col)
+                          (set! (ly:grob-property c 'count-from) (+ counter elapsed))
+                          (set! count-spanner c)
+                          (set! elapsed (1+ elapsed))))
+                    (set! new-measure? #f)))))
+        (set! last-measure-seen current-bar)))
 
-      ((finalize trans)
-       (if go?
-           (begin
-             (set! go? #f)
-             (ly:grob-suicide! count-spanner)
-             (set! count-spanner '())
-             (ly:warning "measure count left unfinished")))))))
+     ((finalize trans)
+      (if go?
+          (begin
+            (set! go? #f)
+            (ly:grob-suicide! count-spanner)
+            (set! count-spanner '())
+            (ly:warning "measure count left unfinished")))))))