]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/to-xml.scm
Merge branch 'master' of git://git.sv.gnu.org/lilypond
[lilypond.git] / scm / to-xml.scm
index f991d5eed2a7dd4fa4477f0df8552608d2099d65..b1b2ed79a69cf60729d8ad9fbf13161140389b60 100644 (file)
@@ -2,7 +2,7 @@
 ;;;;
 ;;;;  source file of the GNU LilyPond music typesetter
 ;;;; 
-;;;; (c)  2003--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+;;;; (c) 2003--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
 ;;;;                 Jan Nieuwenhuizen <janneke@gnu.org>
 
 (use-modules (ice-9 regex)
@@ -47,20 +47,19 @@ is then separated.
     (pitch . pitch)
     (duration . duration)
     (octave . octave)
-    (step . step)
-    ))
+    (step . step)))
 
 (define (musicxml-node->string node)
   (let ((xml-name (assoc-get (node-name node) node-names #f)))
-  (string-append
-   (if xml-name (open-tag xml-name '() '()) "")
-   (if (equal? (node-value node) "")
-       (string-append
-       (if xml-name "\n" "")
-       (apply string-append (map musicxml-node->string (node-children node))))
-       (node-value node))
-   (if xml-name (close-tag xml-name) "")
-   (if xml-name "\n" ""))))
+    (string-append
+     (if xml-name (open-tag xml-name '() '()) "")
+     (if (equal? (node-value node) "")
+        (string-append
+         (if xml-name "\n" "")
+         (apply string-append (map musicxml-node->string (node-children node))))
+        (node-value node))
+     (if xml-name (close-tag xml-name) "")
+     (if xml-name "\n" ""))))
 
 (define (xml-node->string node)
   (string-append
@@ -106,7 +105,7 @@ is then separated.
     #:attributes `((octave . ,(ly:pitch-octave p))
                   (notename . ,(ly:pitch-notename p))
                   (alteration . ,(ly:pitch-alteration p)))))
-                              
+
 (define (music->xml-node music)
   (let* ((name (ly:music-property music 'name))
         (e (ly:music-property music 'element))
@@ -136,8 +135,8 @@ is then separated.
 ]>
 
 "))
-  
+
+
 ;; as computed from input/trip.ly, by
 ;; http://www.pault.com/pault/dtdgenerator/
 
@@ -188,7 +187,7 @@ is then separated.
 (define (assert x)
   (if x
       #t
-      (error "assertion failed")))
+      (ly:error (_ "assertion failed: ~S") x)))
 
 (define (re-sub re to string)
   (regexp-substitute/global #f re string 'pre to 'post))
@@ -211,20 +210,16 @@ is then separated.
     (not (memq (car x) exceptions)))
   
   (define (dump-attr sym-val)
-    (let*
-       (
-       (sym (car sym-val))
-       (val (cdr sym-val))
-       )
+    (let* ((sym (car sym-val))
+          (val (cdr sym-val)))
       
-    (string-append
-     "\n   "
-    (symbol->string sym)
-    "=\""
-    (let ((s (call-with-output-string (lambda (port) (display val port)))))
-      (re-sub-alist s xml-entities-alist))
-    "\""
-    )))
+      (string-append
+       "\n   "
+       (symbol->string sym)
+       "=\""
+       (let ((s (call-with-output-string (lambda (port) (display val port)))))
+        (re-sub-alist s xml-entities-alist))
+       "\"")))
 
   (string-append
    "<" (symbol->string tag)