]> git.donarmstrong.com Git - lilypond.git/commitdiff
Fix \put-adjacent.
authorNeil Puttock <n.puttock@gmail.com>
Tue, 29 Jul 2008 20:02:47 +0000 (21:02 +0100)
committerNeil Puttock <n.puttock@gmail.com>
Tue, 29 Jul 2008 20:02:47 +0000 (21:02 +0100)
Add new signature to parser and change argument order.

Documentation/user/programming-interface.itely
lily/lexer.ll
lily/parser.yy
scm/define-markup-commands.scm
scm/translation-functions.scm

index 4b0c523a71ec723dc59ede0f9822ece3bc57fa5d..9263b951dcee9368c5f13ece3a1e72f102ce37f8 100644 (file)
@@ -1132,6 +1132,7 @@ Currently, the available combinations of arguments (after the standard
 @itemx @var{scm markup}
 @itemx @var{scm scm}
 @itemx @var{scm scm markup}
+@itemx @var{scm scm markup markup}
 @itemx @var{scm markup markup}
 @itemx @var{scm scm scm}
 @end table
index bec065347b56aa3b055688b69d02e14c5c614986..ef419634bb44fb6d2a27a9255a0b0c63914efd86 100644 (file)
@@ -539,6 +539,8 @@ BOM_UTF8    \357\273\277
                                return MARKUP_HEAD_SCM0_MARKUP1;
                        else if (tag == ly_symbol2scm ("scheme0-scheme1-markup2"))
                                return MARKUP_HEAD_SCM0_SCM1_MARKUP2;
+                       else if (tag == ly_symbol2scm ("scheme0-scheme1-markup2-markup3"))
+                               return MARKUP_HEAD_SCM0_SCM1_MARKUP2_MARKUP3;
                        else if (tag == ly_symbol2scm ("scheme0-markup1-markup2"))
                                return MARKUP_HEAD_SCM0_MARKUP1_MARKUP2;
                        else if (tag == ly_symbol2scm ("scheme0-scheme1-scheme2"))
index 59cbf58502275c853ff0f07e344f8e46d1dd635f..be4e7e26e521cba2ff39792d7c14dcd8b475f0d8 100644 (file)
@@ -280,6 +280,7 @@ If we give names, Bison complains.
 %token <scm> MARKUP_HEAD_SCM0_MARKUP1
 %token <scm> MARKUP_HEAD_SCM0_SCM1
 %token <scm> MARKUP_HEAD_SCM0_SCM1_MARKUP2
+%token <scm> MARKUP_HEAD_SCM0_SCM1_MARKUP2_MARKUP3
 %token <scm> MARKUP_HEAD_SCM0_MARKUP1_MARKUP2
 %token <scm> MARKUP_HEAD_SCM0_SCM1_SCM2
 %token <scm> MARKUP_LIST_HEAD_EMPTY
@@ -2362,6 +2363,9 @@ simple_markup:
        | MARKUP_HEAD_SCM0_MARKUP1_MARKUP2 embedded_scm markup markup {
                $$ = scm_list_4 ($1, $2, $3, $4);
        }
+       | MARKUP_HEAD_SCM0_SCM1_MARKUP2_MARKUP3 embedded_scm embedded_scm markup markup {
+               $$ = scm_list_5 ($1, $2, $3, $4, $5);
+       }
        | MARKUP_HEAD_EMPTY {
                $$ = scm_list_1 ($1);
        }
index c5423eb9c21161a450534f82117833bd0401777c..1af92b3b7f620240ab57a638be3cb5da131956bb 100644 (file)
@@ -1443,17 +1443,11 @@ Add padding @var{amount} around @var{arg} in the X@tie{}direction.
                      (interval-widen x amount)
                      y)))
 
-(define-builtin-markup-command (put-adjacent layout props arg1 axis dir arg2)
-  (markup? integer? ly:dir? markup?)
+(define-builtin-markup-command (put-adjacent layout props axis dir arg1 arg2)
+  (integer? ly:dir? markup? markup?)
   align
   ()
-  "
-@ignore
-This is broken, since there's no parser tag for the signature
-markup_scm_scm_markup. Only works using Scheme markup. -np
-@end ignore
-
-Put @var{arg2} next to @var{arg1}, without moving @var{arg1}."
+  "Put @var{arg2} next to @var{arg1}, without moving @var{arg1}."
   (let ((m1 (interpret-markup layout props arg1))
         (m2 (interpret-markup layout props arg2)))
     (ly:stencil-combine-at-edge m1 axis dir m2 0.0)))
index 0367a007ae5d512bcf3dc11a41d34f6ed1e91b83..667b0e267900dc0042ebfa784da767d1698ee2fe 100644 (file)
     (if alt-markup
        (set! fig-markup
              (markup #:put-adjacent
-                     fig-markup X
-                     (if (number? alt-dir)
-                         alt-dir
-                         LEFT)
+                     X (if (number? alt-dir)
+                           alt-dir
+                           LEFT)
+                     fig-markup
                      #:pad-x 0.2 alt-markup
                      )))
 
        (set! fig-markup
              (if fig-markup
                  (markup #:put-adjacent
-                         fig-markup
                          X (if (number? plus-dir)
                                plus-dir
                                LEFT)
+                         fig-markup
                          #:pad-x 0.2 plus-markup)
                  plus-markup)))