]> git.donarmstrong.com Git - lilypond.git/commitdiff
Define a post-event music type and let post-event? and ly:event? use it.
authorDavid Kastrup <dak@gnu.org>
Fri, 20 Jan 2012 20:38:09 +0000 (21:38 +0100)
committerDavid Kastrup <dak@gnu.org>
Tue, 24 Jan 2012 15:23:32 +0000 (16:23 +0100)
lily/music-scheme.cc
lily/parser.yy
scm/define-music-display-methods.scm
scm/define-music-types.scm
scm/lily.scm

index 943199ce08b97d4b4e418feeec7f965f57b57254..93fd55d9a55e057426fc2de5fd00ee4bb87b1253 100644 (file)
@@ -80,7 +80,7 @@ LY_DEFINE (ly_event_p, "ly:event?",
 {
   if (Music *m = unsmob_music (obj))
     {
-      return scm_from_bool (m->is_mus_type ("event"));
+      return scm_from_bool (m->is_mus_type ("post-event"));
     }
   return SCM_BOOL_F;
 }
index ba6650acd08cab4b30aa3256384394aa7d5c4386..e59625cc36fedf0d0fc5f98f3dfe05fd7692b04b 100644 (file)
@@ -3226,9 +3226,7 @@ Lily_lexer::try_special_identifiers (SCM *destination, SCM sid)
                unsmob_music (*destination)->
                        set_property ("origin", make_input (last_input_));
 
-               bool is_event = scm_memq (ly_symbol2scm ("event"), mus->get_property ("types"))
-                       != SCM_BOOL_F;
-
+               bool is_event = mus->is_mus_type ("post-event");
                mus->unprotect ();
                return is_event ? EVENT_IDENTIFIER : MUSIC_IDENTIFIER;
        } else if (unsmob_pitch (sid)) {
index 259c0ccaaebbb42e2c8eaeec3051ddedd7512249..4546afb0acc0b8dd77524478332616bb0ff8a616 100644 (file)
@@ -136,37 +136,8 @@ expression."
 ;;; post events
 ;;;
 
-(define post-event?
-  (make-music-type-predicate
-    'AbsoluteDynamicEvent
-    'ArpeggioEvent
-    'ArticulationEvent
-    'BeamEvent
-    'BeamForbidEvent
-    'BendAfterEvent
-    'CrescendoEvent
-    'DecrescendoEvent
-    'EpisemaEvent
-    'ExtenderEvent
-    'FingeringEvent
-    'GlissandoEvent
-    'HarmonicEvent
-    'HyphenEvent
-    'MultiMeasureTextEvent
-    'NoteGroupingEvent
-    'PhrasingSlurEvent
-    'SlurEvent
-    'SostenutoEvent
-    'StringNumberEvent
-    'StrokeFingerEvent
-    'SustainEvent
-    'TextScriptEvent
-    'TextSpanEvent
-    'TieEvent
-    'TremoloEvent
-    'TrillSpanEvent
-    'TupletSpanEvent
-    'UnaCordaEvent))
+(define (post-event? m)
+  (music-is-of-type? m 'post-event))
 
 (define* (event-direction->lily-string event #:optional (required #t))
   (let ((direction (ly:music-property event 'direction)))
index b5b64b08c858953b11e91a162ec806664912510f..0dc9c7ee71b3ae8a2bcd48d6c669215e18d1687d 100644 (file)
@@ -29,7 +29,7 @@
 Syntax: @var{note}@code{\\x}, where @code{\\x} is a dynamic mark like
 @code{\\ppp} or @code{\\sfz}.  A complete list is in file
 @file{ly/@/dynamic-scripts-init.ly}.")
-       (types . (general-music event dynamic-event absolute-dynamic-event))
+       (types . (general-music post-event event dynamic-event absolute-dynamic-event))
        ))
 
     (AlternativeEvent
@@ -64,7 +64,7 @@ context, and 3.@tie{}the context where @var{func} is called.")
      . ((description . "Make an arpeggio on this note.
 
 Syntax: @w{@var{note}@code{-\\arpeggio}}")
-       (types . (general-music arpeggio-event event))
+       (types . (general-music post-event arpeggio-event event))
        ))
 
     ;; todo: use articulation-event for slur as well.
@@ -77,7 +77,7 @@ Syntax: @var{note}@code{x}@code{y}, where @code{x} is a direction
 (no direction specified), and where @code{y} is an articulation
 (such as @w{@code{-.}}, @w{@code{->}}, @code{\\tenuto}, @code{\\downbow}).
 See the Notation Reference for details.")
-       (types . (general-music event articulation-event script-event))
+       (types . (general-music post-event event articulation-event script-event))
        ))
 
     (AutoChangeMusic
@@ -105,22 +105,22 @@ the start of the measure.")
      . ((description . "Start or stop a beam.
 
 Syntax for manual control: @code{c8-[ c c-] c8}")
-       (types . (general-music event beam-event span-event))
+       (types . (general-music post-event event beam-event span-event))
        ))
 
     (BeamForbidEvent
      . ((description . "Specify that a note may not auto-beamed.")
-       (types . (general-music event beam-forbid-event))
+       (types . (general-music post-event event beam-forbid-event))
        ))
 
     (BreakDynamicSpanEvent
      . ((description . "End an alignment spanner for dynamics here.")
-       (types . (general-music break-span-event break-dynamic-span-event event))
+       (types . (general-music post-event break-span-event break-dynamic-span-event event))
        ))
 
     (BendAfterEvent
      . ((description . "A drop/@/fall/@/doit jazz articulation.")
-       (types . (general-music bend-after-event event))))
+       (types . (general-music post-event bend-after-event event))))
 
     (BreathingEvent
      . ((description . "Create a @q{breath mark} or @q{comma}.
@@ -168,7 +168,7 @@ Syntax: @var{note}@code{\\<} @dots{} @var{note}@code{\\!}
 
 An alternative syntax is @var{note}@code{\\cr} @dots{}
 @var{note}@code{\\endcr}.")
-       (types . (general-music span-event span-dynamic-event crescendo-event
+       (types . (general-music post-event span-event span-dynamic-event crescendo-event
                  event))
        ))
 
@@ -179,7 +179,7 @@ Syntax: @var{note}@code{\\>} @dots{} @var{note}@code{\\!}
 
 An alternative syntax is @var{note}@code{\\decr} @dots{}
 @var{note}@code{\\enddecr}.")
-       (types . (general-music span-event span-dynamic-event decrescendo-event
+       (types . (general-music post-event span-event span-dynamic-event decrescendo-event
                  event))
        ))
 
@@ -190,7 +190,7 @@ An alternative syntax is @var{note}@code{\\decr} @dots{}
 
     (EpisemaEvent
      . ((description . "Begin or end an episema.")
-       (types . (general-music span-event event episema-event))
+       (types . (general-music post-event span-event event episema-event))
        ))
 
     (Event
@@ -209,12 +209,12 @@ An alternative syntax is @var{note}@code{\\decr} @dots{}
 
     (ExtenderEvent
      . ((description . "Extend lyrics.")
-       (types . (general-music extender-event event))
+       (types . (general-music post-event extender-event event))
        ))
 
     (FingeringEvent
      . ((description . "Specify what finger to use for this note.")
-       (types . (general-music fingering-event event))
+       (types . (general-music post-event fingering-event event))
        ))
 
     (FootnoteEvent
@@ -224,7 +224,7 @@ An alternative syntax is @var{note}@code{\\decr} @dots{}
 
     (GlissandoEvent
      . ((description . "Start a glissando on this note.")
-       (types . (general-music glissando-event event))
+       (types . (general-music post-event glissando-event event))
        ))
 
     (GraceMusic
@@ -237,12 +237,12 @@ An alternative syntax is @var{note}@code{\\decr} @dots{}
 
     (HarmonicEvent
      . ((description . "Mark a note as harmonic.")
-       (types . (general-music event harmonic-event))
+       (types . (general-music post-event event harmonic-event))
        ))
 
     (HyphenEvent
      . ((description . "A hyphen between lyric syllables.")
-       (types . (general-music hyphen-event event))
+       (types . (general-music post-event hyphen-event event))
        ))
 
     (KeyChangeEvent
@@ -262,7 +262,7 @@ Syntax: @code{\\key} @var{name} @var{scale}")
      . ((description . "Don't damp this chord.
 
 Syntax: @var{note}@code{\\laissezVibrer}")
-       (types . (general-music event laissez-vibrer-event))
+       (types . (general-music post-event event laissez-vibrer-event))
        ))
 
     (LigatureEvent
@@ -321,7 +321,7 @@ Syntax: @code{R2.*4} for 4 measures in 3/4 time.")
 Syntax: @code{R-\\markup @{ \\roman \"bla\" @}}
 
 Note the explicit font switch.")
-       (types . (general-music event multi-measure-text-event))
+       (types . (general-music post-event event multi-measure-text-event))
        ))
 
     (Music
@@ -337,7 +337,7 @@ Note the explicit font switch.")
 
     (NoteGroupingEvent
      . ((description . "Start or stop grouping brackets.")
-       (types . (general-music event note-grouping-event))
+       (types . (general-music post-event event note-grouping-event))
        ))
 
     (OttavaMusic
@@ -412,7 +412,7 @@ goes down).")
 
 Syntax: @var{note}@code{\\(} and @var{note}@code{\\)}")
         (spanner-id . "")
-       (types . (general-music span-event event phrasing-slur-event))
+       (types . (general-music post-event span-event event phrasing-slur-event))
        ))
 
     (PropertySet
@@ -476,7 +476,7 @@ Syntax: @code{\\unset @var{context}.@var{prop}}")
 
     (RepeatTieEvent
      . ((description . "Ties for starting a second volta bracket.")
-       (types . (general-music event repeat-tie-event))
+       (types . (general-music post-event event repeat-tie-event))
        ))
 
     (RestEvent
@@ -544,7 +544,7 @@ Syntax: @code{\\skip} @var{duration}")
 
 Syntax: @var{note}@code{(} and @var{note}@code{)}")
         (spanner-id . "")
-       (types . (general-music span-event event slur-event))
+       (types . (general-music post-event span-event event slur-event))
        ))
 
     (SoloOneEvent
@@ -561,7 +561,7 @@ Syntax: @var{note}@code{(} and @var{note}@code{)}")
 
     (SostenutoEvent
      . ((description . "Depress or release sostenuto pedal.")
-       (types . (general-music event pedal-event sostenuto-event))
+       (types . (general-music post-event event pedal-event sostenuto-event))
        ))
 
     (SpacingSectionEvent
@@ -583,19 +583,19 @@ different time than stopped.")
      . ((description . "Specify on which string to play this note.
 
 Syntax: @code{\\@var{number}}")
-       (types . (general-music string-number-event event))
+       (types . (general-music post-event string-number-event event))
        ))
 
     (StrokeFingerEvent
      . ((description . "Specify with which finger to pluck a string.
 
 Syntax: @code{\\rightHandFinger @var{text}}")
-       (types . (general-music stroke-finger-event event))
+       (types . (general-music post-event stroke-finger-event event))
        ))
 
     (SustainEvent
      . ((description . "Depress or release sustain pedal.")
-       (types . (general-music event pedal-event sustain-event))
+       (types . (general-music post-event event pedal-event sustain-event))
        ))
 
     (TempoChangeEvent
@@ -605,20 +605,20 @@ Syntax: @code{\\rightHandFinger @var{text}}")
 
     (TextScriptEvent
      . ((description . "Print text.")
-       (types . (general-music script-event text-script-event event))
+       (types . (general-music post-event script-event text-script-event event))
        ))
 
     (TextSpanEvent
      . ((description . "Start a text spanner, for example, an
 octavation.")
-       (types . (general-music span-event event text-span-event))
+       (types . (general-music post-event span-event event text-span-event))
        ))
 
     (TieEvent
      . ((description . "A tie.
 
 Syntax: @w{@var{note}@code{-~}}")
-       (types . (general-music tie-event event))
+       (types . (general-music post-event tie-event event))
        ))
 
     (TimeScaledMusic
@@ -651,7 +651,7 @@ Syntax: @code{\\times @var{fraction} @var{music}}, e.g.,
 
     (TremoloEvent
      . ((description . "Unmeasured tremolo.")
-       (types . (general-music event tremolo-event))
+       (types . (general-music post-event event tremolo-event))
        ))
 
     (TremoloRepeatedMusic
@@ -670,18 +670,18 @@ Syntax: @code{\\times @var{fraction} @var{music}}, e.g.,
 
     (TrillSpanEvent
      . ((description . "Start a trill spanner.")
-       (types . (general-music span-event event trill-span-event))
+       (types . (general-music post-event span-event event trill-span-event))
        ))
 
     (TupletSpanEvent
      . ((description . "Used internally to signal where tuplet
 brackets start and stop.")
-       (types . (tuplet-span-event span-event event general-music))
+       (types . (tuplet-span-event span-event event general-music post-event))
        ))
 
     (UnaCordaEvent
      . ((description . "Depress or release una-corda pedal.")
-       (types . (general-music event pedal-event una-corda-event))
+       (types . (general-music post-event event pedal-event una-corda-event))
        ))
 
     (UnfoldedRepeatedMusic
index 5c2c846275ed121a5eeeadd7d852a647db4312b3..21c9599b66170838d0ac7b961a9b6a5e574fa451 100644 (file)
@@ -516,7 +516,7 @@ messages into errors.")
     (,ly:dir? . "direction")
     (,ly:dispatcher? . "dispatcher")
     (,ly:duration? . "duration")
-    (,ly:event? . "event")
+    (,ly:event? . "post event")
     (,ly:font-metric? . "font metric")
     (,ly:grob? . "graphical (layout) object")
     (,ly:grob-array? . "array of grobs")