[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: music-cause
From: |
Urs Liska |
Subject: |
Re: music-cause |
Date: |
Thu, 20 Feb 2020 17:22:06 +0100 |
User-agent: |
Evolution 3.34.1-3 |
Am Donnerstag, den 20.02.2020, 17:12 +0100 schrieb David Kastrup:
> David Kastrup <address@hidden> writes:
>
> > Graham Percival <address@hidden> writes:
> >
> > > On Sun, Jan 22, 2012 at 11:49:06AM +0100, David Kastrup wrote:
> > > > Anybody actually using the "music-cause"? Inside of LilyPond,
> > > > the only
> > > > appearance (apart from its declaration) would be
> > > >
> > > > /*
> > > > ES TODO: This is a temporary fix. Stream_events should not
> > > > be
> > > > aware of music.
> > > > */
> > > > e->set_property ("music-cause", self_scm ());
> > >
> > > If it's used anywhere, it would be here:
> > > http://lilypond.org/website/pdf/thesis-erik-sandberg
> > >
> > > It may have been added just so he could produce some graphs or
> > > tables or something? I know that I have a ton of "graph-
> > > producing
> > > code" in Artifastring and Vivi like that.
> >
> > Seems somewhat pointless since events take the whole mutable
> > property
> > list of their originating music event anyway. If you need more for
> > tracking, you could just do
> >
> > maketrackable =
> > #(define-music-function (parser location m)
> > (music-map
> > (lambda (m)
> > (set! ly:music-property 'music-cause m)
> > m)
> > m))
> >
> > and call that on your music before processing.
>
> I lean towards going through with my threat here and removing
> music-cause which seems like a weird punch-through kind of property.
> Any objections here? Anybody actually using it anywhere?
>
It is used in openLilyLib a few times, I assume by Jan-Peter:
$ grep -rnw . -e 'music-cause'
./snippets/editorial-tools/auto-
transpose/module.ily:79: ; (ly:make-stream-event 'key-
change-event `((music-cause . ,key-sig)) ))
./snippets/editorial-tools/auto-transpose/module.ily:92: (cond-
transp engraver (ly:event-property event 'music-cause)))
./snippets/editorial-tools/auto-transpose/module.ily:95: (cond-
transp engraver (ly:event-property event 'music-cause)))
./edition-
engraver/engine.scm:944: (music-
cause . mod)))))
./lilypond-export/api.scm:147: ; search for music-cause of grob
./lilypond-export/api.scm:152: ((ly:stream-event? grob) (grob-
cause (ly:event-property grob 'music-cause)))
./lilypond-export/api.scm:205: (music (ly:event-property
event 'music-cause))
./lilypond-export/api.scm:468: (music (ly:event-property
event 'music-cause))
./oll-misc/pitch/auto-
transpose/module.ily:79: ; (ly:make-stream-event 'key-
change-event `((music-cause . ,key-sig)) ))
./oll-misc/pitch/auto-transpose/module.ily:92: (cond-transp
engraver (ly:event-property event 'music-cause)))
./oll-misc/pitch/auto-transpose/module.ily:95: (cond-transp
engraver (ly:event-property event 'music-cause)))