[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH] Re: Quoting \set and \override (for cue notes etc.)
From: |
Reinhold Kainhofer |
Subject: |
[PATCH] Re: Quoting \set and \override (for cue notes etc.) |
Date: |
Mon, 28 Sep 2009 17:27:09 +0200 |
User-agent: |
KMail/1.12.1 (Linux/2.6.28-15-generic; KDE/4.3.1; i686; ; ) |
I have now fixed the problem with quoting \set and \override...
It was a very simply problem: The list of events to be quoted for a time step
was created basically using (cons ev oldevents) in the listener, so they were
in the reverse order. What was missing was reverting it before using it in the
code....
Patch (including this fix and the change to allow all StreamEvents to be
quoted) can be found on rietvield:
http://codereview.appspot.com/124064
Okay to apply?
Cheers,
Reinhold
Am Samstag, 22. August 2009 13:36:33 schrieb Reinhold Kainhofer:
> Am Samstag, 22. August 2009 13:06:59 schrieb Reinhold Kainhofer:
> > Am Donnerstag, 20. August 2009 00:19:41 schrieb Neil Puttock:
> > > 2009/8/14 Reinhold Kainhofer <address@hidden>:
> > > > I tried adding various classes to the quotedEventTypes list, e.g.
> > > > override- property-event general-music override-property
> > > > OverrideProperty property-set PropertySet, but nothing seems to have
> > > > any effect. Any idea how to make lilypond also quote overrides and
> > > > \set commands?
> > >
> > > As I hinted in the discussion you mentioned, it's partly due to how
> > > recording-group-emulate is coded:
> >
> > Ah, I would have never guessed that recording-group-emulate would be
> > involved...
> >
> > Shouldn't add-quotable and recording-group-emulate be moved out of the
> > partcombiner code and somewhere more general?
> >
> > > If you change this to listen to 'StreamEvent, the other classes will
> > > be acknowledged, which will allow simple context settings to work
> > > (like fontSize).
> > >
> > > Unfortunately, there's still a problem with \override and \revert;
> > > they're recorded, but it seems the events associated with them either
> > > aren't broadcast, or they're ignored by the Engraver_group.
>
> [...]
>
> > -) \once\override Grob #'prop = #val works, but the override without
> > \once does not work. Unfortunately, acciaccatura etc. use \override
> > without \once. These overrides are recorded (i.e. they are checked for in
> > Quote_iterator::accept_music_type), but they don't seem to have an
> > effect.
>
> Actually, the Engraver_Group receives and processes them perfectly well.
> The real problem is that each \override (without \once) is immediately
> followed by a corresponding Revert event, of course rendering that
> override ineffective:
>
> Event class: note-event (in Quote_iterator::accept_music_type)
> Event class: Override (in Quote_iterator::accept_music_type)
> Engraver_group::override: Stem, (stroke-style), "grace"
> Event class: Revert (in Quote_iterator::accept_music_type)
> Engraver_group::revert: Stem, (stroke-style),
> Event class: note-event (in Quote_iterator::accept_music_type)
> Event class: note-event (in Quote_iterator::accept_music_type)
>
> So, I suppose this is a problem with the recording-group-emulator rather
> than the Engraver_group or the broadcasting.
>
> Cheers,
> Reinhold
>
--
------------------------------------------------------------------
Reinhold Kainhofer, address@hidden, http://reinhold.kainhofer.com/
* Financial & Actuarial Math., Vienna Univ. of Technology, Austria
* http://www.fam.tuwien.ac.at/, DVR: 0005886
* LilyPond, Music typesetting, http://www.lilypond.org
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [PATCH] Re: Quoting \set and \override (for cue notes etc.),
Reinhold Kainhofer <=