SoundsFromSound wrote > One question though: > > When you write - > > /Unfortunately, \voiceOne and \voiceTwo expands in lots and lots of > single events setting various properties. That way, the stem directions > and rest positions won't be neutral in the resulting single voice > extracts.As it is not possible to distinguish between \voiceOne and > singular deliberate \override or \set commands, I just decided to filter > out any OverrideProperty orSetProperty event). > > > /What negative side effects could result from these 'single events'? > Just curious what I should be on the lookout for when using keepVoice. > You mean I may have to flip a few things or move markings around?
Yes, exactly. The point is: you can't tell whether an explicit stem direction has been set by \voiceOne or \stemUp. If you don't remove 'OverrideProperty events, the \voiceOne resp. \voiceTwo settings that made sense in the original polyphonic context, these settings will still be there in the filtered single voice. In the filtered single voice, however, we'd like to have rests in their standard position, we'd like to have stems in their natural direction. If we didn't filter out 'OverrideProperty events, the result would look like this: <http://lilypond.1069038.n5.nabble.com/file/t3887/keepVoice-prop-remains.png> By "unfortunalty", I mean that this cleansing also filters out \override statements that have been deliberately inserted - they will get lost, too. A \stemUp command, for instance, will look like this (using \displayMusic) (make-music 'OverrideProperty 'pop-first #t 'grob-value 1 'grob-property-path (list (quote direction)) 'symbol 'Stem)))) \voiceOne will produce (among many, many others) nearly the same event and the filter can't say where exactly the 'OverrideProperty comes from and thus can't decide whether to keep it or not. There is a slight difference that could be used for distinction: \override settings use a list, even if this list consists of one element: 'grob-property-path (list (quote direction)) whereas \voiceOne etc. just generates 'grob-property 'direction instead. This subtle difference might be used for a more intelligent filtering. In the current (simple) version, there is no such distinction yet and if you don't want to lose all the cosmetic overrides, you might keep the 'OverrideProperty events and use tags (\tag) for \voiceOne and \voiceTwo. These tags could be easily inserted using search and replace. All the best, Torsten -- Sent from: http://lilypond.1069038.n5.nabble.com/User-f3.html _______________________________________________ lilypond-user mailing list [email protected] https://lists.gnu.org/mailman/listinfo/lilypond-user
