openlilylib / lilypond-export

LilyPond export API to write Humdrum, MusicXML and more
GNU General Public License v3.0
22 stars 8 forks source link

Conversion to openLilyLib package? #4

Closed uliska closed 5 years ago

uliska commented 5 years ago

I'm somewhat unsure whether this will have to be converted to a "regular" openLilyLib package.

I don't have any real understanding of the code, therefore I have to ask: is this a basic functionality (i.e. will it always be the case) that one has to explicitly inject commands like \runTranslator and \FileExport into the actual document? From the sample document in the README it looks like it is necessary to do so in order to specify the actual music expression to be exported.

From a usability POV it would of course be preferable to have one standalone .ly that could look somewhat like

\version "2.19.81"
\include "oll-core/package.ily"
\loadModule lilypond-export.musicxml

\FileExport "/home/lilypond/my-score.ly"

or

\version "2.19.81"
\include "oll-core/package.ily"
\loadPackage lilypond-export

\FileExport #'musicxml "/home/lilypond/my-score.ly"
\FileExport #'humdrum "/home/lilypond/my-score.ly"

This would make it much easier to get access to the export functionality through external scripts or a GUI like Frescobaldi.

In both cases a conversion to a "regular" openLilyLib package seems desirable, but that would probably look different for each of the cases.

@jpvoigt do you think it will be possible to achieve the second approach, i.e. having \FileExport load a .ly file and properly "find" the score in it?

uliska commented 5 years ago

Oh, I was misled by a few things: the not-up-to-date example in README and an obsolete include in the package file. I will open a PR with a few corrections once the fork properly works (or you have either added me to the repository or transferred ownership to the openlilylib org).

rshura commented 5 years ago

Ideally, the best usability would be achieved if this were another backend to lilypond, next to ps and svg :-) Not sure what it takes though.

jpvoigt commented 5 years ago

We would need to implement that in c++. That is not impossible, but I don't know how to start that right now. If we could provide an adapter to implement arbitrary backends in scheme it would open for some other use cases. What about CSound ;-)

Am 22.10.18 um 16:43 schrieb Alex Roitman:

Ideally, the best usability would be achieved if this were another backend to lilypond, next to ps and svg :-) Not sure what it takes though.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/jpvoigt/lilypond-export/issues/4#issuecomment-431856024, or mute the thread https://github.com/notifications/unsubscribe-auth/ADFWTjMIg8AqZRS7ZS4Mxul90AaV1JKCks5undmRgaJpZM4Xy9U0.

jpvoigt commented 5 years ago

The conversion to OLL is done, so I close this issue now.