Am 07.11.2016 um 13:21 schrieb bart deruyter: > On a sidenote (perhaps for a different topic), in Musescore there is > the possibility to create plugins which provide harmony checks, > someone also did a plugin for a previous Musescore version which > checked only first species counterpoint. > > I know lilypond's first purpose is creating sheet music, not composing > music, but are there snippets of scheme or libraries around which > could do the same? > > I think, for people who study counterpoint and voice leading, or any > other rule-set in music, it would be very interesting to have a an > option to check if they've followed the rules. In my case I have no > teacher, can't afford private lessons, so I have to figure it out on > my own without any way to check if I'm actually correct in > interpreting the rules and executing the exercises. >
I don't know if any code for this or similar purposes is already around (I suspect not, otherwise you'd have got a reply), but I think from the organizational POV it should be pretty easy to write something like that. Basically it would work similar to the part combiner: take two (or more) music expressions, perform the calculation and produce some output. I don't immediately see how the actual content checks would have to be implemented, but the infrastructure should be striaghtforward. I can see different ways to approach it: one could have a function that simply performs the checks and prints out the results to the console, or it could actually modify the music expressions in a way that the results are printed directly in the score (e.g. coloring or other visible hints). In a similar way one could also write functions for harmonic analysis. Probably the actual implementation is not all that trivial, and I wouldn't start working on it. But I think it would make a good openLilyLib package, and if someone is interested in the topic and has the necessary Scheme skills I'd be happy to help with the openLilyLib part of things. Urs _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user