]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/define-music-display-methods.scm
Fix Issue 1035 -- Add context property for negative frets
[lilypond.git] / scm / define-music-display-methods.scm
index 3b896a245017f6aa463fcb8d412b0dcd495aa617..46767478964ecff3fb1394a3b5f6cd022959196d 100644 (file)
@@ -1,7 +1,7 @@
 ;;; define-music-display-methods.scm -- data for displaying music
 ;;; expressions using LilyPond notation.
 ;;;
-;;; Copyright (C) 2005--2010 Nicolas Sceaux  <nicolas.sceaux@free.fr>
+;;; Copyright (C) 2005--2011 Nicolas Sceaux  <nicolas.sceaux@free.fr>
 ;;;
 
 ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
@@ -37,7 +37,8 @@
 ;;;
 
 (define-public (markup->lily-string markup-expr)
-  "Return a string describing, in LilyPond syntax, the given markup expression."
+  "Return a string describing, in LilyPond syntax, the given markup
+expression."
   (define (proc->command proc)
     (let ((cmd-markup (symbol->string (procedure-name proc))))
       (substring cmd-markup 0 (- (string-length cmd-markup)
@@ -934,7 +935,11 @@ Otherwise, return #f."
                (format #f "\\tempo ~a ~a = ~a"
                        (scheme-expr->lily-string ?unit-text)
                        (duration->lily-string ?unit-duration #:force-duration #t)
-                       ?unit-count))
+                       (if (number-pair? ?unit-count)
+                           (format #f "~a ~~ ~a"
+                                   (car ?unit-count)
+                                   (cdr ?unit-count))
+                           ?unit-count)))
        (with-music-match (expr (music 'ContextSpeccedMusic
                    element (music 'SequentialMusic
                              elements ((music 'PropertyUnset
@@ -949,7 +954,11 @@ Otherwise, return #f."
                                          symbol 'tempoUnitCount)))))
                        (format #f "\\tempo ~a = ~a"
                                (duration->lily-string ?unit-duration #:force-duration #t)
-                               ?unit-count))
+                               (if (number-pair? ?unit-count)
+                                   (format #f "~a ~~ ~a"
+                                           (car ?unit-count)
+                                           (cdr ?unit-count))
+                                   ?unit-count)))
        (with-music-match (expr (music 'ContextSpeccedMusic
                            element (music 'SequentialMusic
                                      elements ((music 'PropertySet
@@ -960,7 +969,7 @@ Otherwise, return #f."
 ;;; \clef
 (define clef-name-alist #f)
 (define-public (memoize-clef-names clefs)
-  "Initialize `clef-name-alist', if not already set."
+  "Initialize @code{clef-name-alist}, if not already set."
   (if (not clef-name-alist)
       (set! clef-name-alist
             (map (lambda (name+vals)
@@ -969,8 +978,8 @@ Otherwise, return #f."
                  clefs))))
 
 (define-extra-display-method ContextSpeccedMusic (expr parser)
-  "If `expr' is a clef change, return \"\\clef ...\"
-Otherwise, return #f."
+  "If @var{expr} is a clef change, return \"\\clef ...\".
+Otherwise, return @code{#f}."
   (with-music-match (expr (music 'ContextSpeccedMusic
                                 context-type 'Staff
                                 element (music 'SequentialMusic