]> git.donarmstrong.com Git - lilypond.git/commitdiff
Issue 2856: Get along with use of grob-property instead of grob-property-path in...
authorDavid Kastrup <dak@gnu.org>
Mon, 24 Sep 2012 09:59:42 +0000 (11:59 +0200)
committerDavid Kastrup <dak@gnu.org>
Fri, 28 Sep 2012 05:15:25 +0000 (07:15 +0200)
LilyPond uses a willy-nilly mixture of grob-property and
grob-property-path when generating overrides programmatically (the
parser only uses grob-property-path).  Several override-reinterpreting
commands and functionalities were not prepared to deal with this.

ly/music-functions-init.ly
scm/lily-library.scm

index e1dcd992e00bf66c60fa7e09e012632732fc7db6..0fa79af3ddb63acd68e1861710c29cfa6903ccf6 100644 (file)
@@ -1067,11 +1067,17 @@ a context modification duplicating their effect.")
               (cons* 'push
                      (ly:music-property m 'symbol)
                      (ly:music-property m 'grob-value)
-                     (ly:music-property m 'grob-property-path)))
+                      (cond
+                       ((ly:music-property m 'grob-property #f) => list)
+                       (else
+                        (ly:music-property m 'grob-property-path)))))
              ((RevertProperty)
               (cons* 'pop
                      (ly:music-property m 'symbol)
-                     (ly:music-property m 'grob-property-path)))))
+                      (cond
+                       ((ly:music-property m 'grob-property #f) => list)
+                       (else
+                        (ly:music-property m 'grob-property-path)))))))
           (case (ly:music-property m 'name)
             ((ApplyContext)
              (ly:add-context-mod mods
index ec1097a32b7ace1ae756e86f61fd5fa08f6cffd7..854980012cea5d3da40df5b955bfde86c4e87a97 100644 (file)
@@ -275,11 +275,17 @@ bookoutput function"
                (cons* 'push
                       symbol
                       (ly:music-property m 'grob-value)
-                      (ly:music-property m 'grob-property-path)))
-              ((RevertProperty)
+                       (cond
+                        ((ly:music-property m 'grob-property #f) => list)
+                        (else
+                         (ly:music-property m 'grob-property-path)))))
+               ((RevertProperty)
                (cons* 'pop
                       symbol
-                      (ly:music-property m 'grob-property-path))))))
+                       (cond
+                        ((ly:music-property m 'grob-property #f) => list)
+                        (else
+                         (ly:music-property m 'grob-property-path))))))))
          (case (ly:music-property m 'name)
            ((ApplyContext)
             (ly:add-context-mod mods
@@ -326,11 +332,17 @@ bookoutput function"
              (cons* 'push
                     (ly:music-property m 'symbol)
                     (ly:music-property m 'grob-value)
-                    (ly:music-property m 'grob-property-path)))
+                     (cond
+                      ((ly:music-property m 'grob-property #f) => list)
+                      (else
+                       (ly:music-property m 'grob-property-path)))))
             ((RevertProperty)
              (cons* 'pop
                     (ly:music-property m 'symbol)
-                    (ly:music-property m 'grob-property-path)))))
+                     (cond
+                      ((ly:music-property m 'grob-property #f) => list)
+                      (else
+                       (ly:music-property m 'grob-property-path)))))))
          (case (ly:music-property m 'name)
            ((ApplyContext)
             (ly:add-context-mod mods