]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/lily-library.scm
Merge branch 'lilypond/translation' of ssh://jomand@git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / scm / lily-library.scm
index 7d0cb126020f916d61284dc497b6b721b2647a5b..335c345c3c0e345f6fd7b2b7b493be9f421759d5 100644 (file)
 (define-public (print-book-with-defaults-as-systems parser book)
   (print-book-with parser book ly:book-process-to-systems))
 
+;; Add a score to the current bookpart, book or toplevel
+(define-public (add-score parser score)
+    (cond
+      ((ly:parser-lookup parser '$current-bookpart)
+          ((ly:parser-lookup parser 'bookpart-score-handler)
+               (ly:parser-lookup parser '$current-bookpart) score))
+      ((ly:parser-lookup parser '$current-book)
+          ((ly:parser-lookup parser 'book-score-handler)
+               (ly:parser-lookup parser '$current-book) score))
+      (else
+          ((ly:parser-lookup parser 'toplevel-score-handler) parser score))))
+
+(define-public (add-text parser text)
+  (add-score parser (list text)))
+
+(define-public (add-music parser music)
+  (collect-music-aux (lambda (score)
+                      (add-score parser score))
+                     parser
+                    music))
+
+
 ;;;;;;;;;;;;;;;;
 ;; alist