On Wed, 2011-07-13 at 22:52 -0500, Jeremiah Benham wrote: > On 07/05/2011 08:37 AM, Richard Shann wrote: > > On Tue, 2011-07-05 at 10:34 +0100, Richard Shann wrote: > >> Looking at your example, I wonder if a somewhat different approach to > >> storing the melody might be good. It could be stored as a normal > >> denemo > >> score, but with each note having a directive that alters its display > >> so > >> it doesn't show the pitch or accidental. > > I have just been playing around with this: > > If you execute this: > > > > (d-C) > > (d-DirectivePut-chord-graphic "test" "CrossSign") > > (d-DirectivePut-chord-override "test" DENEMO_OVERRIDE_GRAPHIC) > > (d-D) > > (d-DirectivePut-chord-graphic "test" "CrossSign") > > (d-DirectivePut-chord-override "test" DENEMO_OVERRIDE_GRAPHIC) > > (d-E) > > (d-DirectivePut-chord-graphic "test" "CrossSign") > > (d-DirectivePut-chord-override "test" DENEMO_OVERRIDE_GRAPHIC) > > > > You get hidden notes C, D, E which still play but cannot be seen. > Perhaps then I should create another script to generate the above based > on a denemo score? That is easy - load the score then move the cursor to each CHORD and execute the directive put commands - I think Nils may have a one-liner to apply a given procedure to every chord in a movement. My recent scripts (e.g. fix slurs called by CheckScore) do this sort of traversal of a score.
> How would this approach deal with accidentals. Sure > the key signature would accommodate changes in name (like value (d-C) > really meaning cis,,) I haven't tested that. accidentals are ok, it just hides the chord. > > If you put the cursor on the first note and hold down the Control key > > while playing in on a MIDI keyboard the cursor will advance only when > > you play the right note. (This is the Checking mode for MIDI in) > I like that idea. I am attaching an implementation of your idea above. I > can see writing in the (c-D)(c-D) would get tedious. Should I write a > script to export this list from a denemo score? Could I possibly do > something like (d-Open "filename") go through the file and yes - see above - you would create a procedure to be executed on each CHORD, as I say Nils probably has one, perhaps also with a test procedure (ie for-each-object-in-score test dothunk) which does dothunk if test is true until there are no more objects, and then returns to the original position. > put this on > each note: > > (d-DirectivePut-chord-graphic "test" "CrossSign") > (d-DirectivePut-chord-override "test" DENEMO_OVERRIDE_GRAPHIC) Richard > > Jeremiah > > > Richard > > > _______________________________________________ Denemo-devel mailing list [email protected] https://lists.gnu.org/mailman/listinfo/denemo-devel
