]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/document-translation.scm
* scm/define-markup-commands.scm (smallcaps): New markup command.
[lilypond.git] / scm / document-translation.scm
index b7bf4b09db3900439605e9b3e786d9c21c26cc3d..ac3843c6567bba09e108153921ad6c2652483cd1 100644 (file)
@@ -1,9 +1,9 @@
-;;; engraver-doumentation-lib.scm -- Functions for engraver documentation
-;;;
-;;; source file of the GNU LilyPond music typesetter
-;;; 
-;;; (c)  2000--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
-;;; Jan Nieuwenhuizen <janneke@gnu.org>
+;;;; document-translation.scm -- Functions for engraver documentation
+;;;;
+;;;; source file of the GNU LilyPond music typesetter
+;;;; 
+;;;; (c)  2000--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+;;;;                 Jan Nieuwenhuizen <janneke@gnu.org>
 
 
 (define (engraver-makes-grob? name-symbol grav)
                       (lambda (x)
                         (let*
                             ((context (cdr (assoc 'context-name x)))
+                             (group (assq-ref x 'group-type))
                              (consists (append
-                                        (list
-                                         (cdr (assoc 'group-type x)))
+                                        (if group
+                                            (list group)
+                                            '())
                                         (cdr (assoc 'consists x))
                                         ))
 
                 (cdr desc-handle) "(not documented)"))
        
        (accepts (cdr (assoc 'accepts context-desc)))
+       (group (assq-ref context-desc 'group-type))
+
        (consists (append
-                 (list (cdr (assoc 'group-type context-desc)))
+                 (if group (list group)
+                     '())
                  (cdr (assoc 'consists context-desc))
                  ))
        (props (cdr (assoc 'property-ops context-desc)))
              (map document-engraver-by-name consists))
        ))))
 
-(define (engraver-grobs  grav)
+(define (engraver-grobs grav)
   (let* ((eg (if (symbol? grav)
                 (find-engraver-by-name grav)
                 grav)))
-
     (if (eq? eg #f)
        '()
        (map symbol->string (cdr (assoc 'grobs-created (ly:translator-description eg)))))
   ))
 
 (define (context-grobs context-desc)
-  (let* ((consists (append
-                   (list (cdr (assoc 'group-type context-desc)))
+  (let* (
+        (group (assq-ref context-desc 'group-type))
+        (consists (append
+                   (if group
+                       (list group)
+                       '())
                    (cdr (assoc 'consists context-desc))
                    ))
         (grobs  (apply append