lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: parser.yy: reverse_music_list should heed PostEvents (issue 33527004


From: dak
Subject: Re: parser.yy: reverse_music_list should heed PostEvents (issue 335270043 by address@hidden)
Date: Thu, 04 Jan 2018 03:06:38 -0800

Reviewers: Malte Meyn,


https://codereview.appspot.com/335270043/diff/1/input/regression/post-events-from-scheme.ly
File input/regression/post-events-from-scheme.ly (right):

https://codereview.appspot.com/335270043/diff/1/input/regression/post-events-from-scheme.ly#newcode11
input/regression/post-events-from-scheme.ly:11: { c1 ##{ -. -! #} }
On 2018/01/04 10:31:49, Malte Meyn wrote:
Of course it’s not necessary, but maybe this could be changed to c'
instead of
c.

Will do, but does not warrant another test upload.

Description:
parser.yy: reverse_music_list should heed PostEvents


Also contains commit:

Add regtest for multiple post events from scheme

Please review this at https://codereview.appspot.com/335270043/

Affected files (+16, -1 lines):
  A input/regression/post-events-from-scheme.ly
  M lily/parser.yy


Index: input/regression/post-events-from-scheme.ly
diff --git a/input/regression/post-events-from-scheme.ly b/input/regression/post-events-from-scheme.ly
new file mode 100644
index 0000000000000000000000000000000000000000..d97edccbc4f62cef3d6707d0a9607170aa361c0d
--- /dev/null
+++ b/input/regression/post-events-from-scheme.ly
@@ -0,0 +1,11 @@
+\version "2.21.0"
+
+\header {
+  texidoc = "Multiple post events can be attached from Scheme expressions."
+}
+
+\layout {
+  ragged-right = ##t
+}
+
+{ c1 ##{ -. -! #} }
Index: lily/parser.yy
diff --git a/lily/parser.yy b/lily/parser.yy
index bd26a3254e130995e3ac391cf4262cd5132a8ab7..0e978271e200695f02cbae64e15fee16cb2dfdb6 100644
--- a/lily/parser.yy
+++ b/lily/parser.yy
@@ -4656,7 +4656,11 @@ SCM reverse_music_list (Lily_parser *parser, Input loc, SCM lst, bool preserve,
                Music *m = unsmob<Music> (elt);
                assert (m);
                if (m->is_mus_type ("post-event")) {
-                       post = scm_cons (elt, post);
+                       if (m->is_mus_type ("post-event-wrapper"))
+                               post = ly_append2 (m->get_property ("elements"),
+                                                  post);
+                       else
+                               post = scm_cons (elt, post);
                        continue;
                }
                if (add_post_events (m, post)) {



reply via email to

[Prev in Thread] Current Thread [Next in Thread]