]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/translation-functions.scm
* input/regression/rehearsal-mark-number.ly: new file.
[lilypond.git] / scm / translation-functions.scm
index 76b8eb6f2f33219cc37d898f9fc5d60491303c65..eec30297023cda0c774a062f2a1c213cb1e154e3 100644 (file)
@@ -12,7 +12,7 @@
 
 
 ;; metronome marks
-(define-public (make-metronome-markup event context)
+(define-public (format-metronome-markup event context)
   (let*
       ((dur  (ly:get-mus-property event 'tempo-unit))
        (count (ly:get-mus-property event 'metronome-count))
       
   ))))
 
+
+
+(define number->mark-letter-vector (make-vector 25 #\A))
+
+(do ((i 0 (1+ i))
+     (j 0 (1+ j)) )
+    ((>= i 26))
+  (if (= i (- (char->integer #\I) (char->integer #\A)))
+      (set! i (1+ i)))
+  (vector-set! number->mark-letter-vector j
+              (integer->char (+ i (char->integer #\A))))  )
+
+(define-public (number->mark-string n)
+  "Double letters for big marks."
+  (let*
+      ((l (vector-length number->mark-letter-vector)))
+    (display n) (newline)
+    (display l) (newline)
+    
+  (if (>= n l)
+      (string-append (number->mark-string (1- (quotient n l)))
+                    (number->mark-string (remainder n l)))
+      (make-string 1 (vector-ref number->mark-letter-vector n)))))
+
+
+(define-public (format-mark-letters mark context)
+  (make-bold-markup (number->mark-string (1- mark))))
+
+(define-public (format-mark-numbers mark context)
+  (make-bold-markup (number->string mark)))
+