This email bounced for me, and anyway I thought of a post-script to it so here it is, revised:
On Thu, 2021-03-18 at 10:52 -0500, Jeremiah Benham wrote: > Richard, > I was wondering what the preferred method of inputting other file > formats is. I have been using tuxguitar to open up these files. I > then > would hide the tab because I want my students reading the music and > not looking at tabs. Tuxguitar can export to lilypond and midi. I > could probably import it with this but I was wondering how I can go > about it with less steps or if I can open it up denemo. I have been > looking over tuxguitar source code specifically the portion of the > gpx > file parser. My question is, If I were to write something to import > it > denemo should I make it a separate utility that converts it into > lilypond and then have denemo import it. Is that how the musicxml and > midi import works? Both musicxml and midi are imported by custom C-code routines (*). LilyPond is imported by a mixture of Scheme (a lexer-parser in Scheme) and C. I would forget about MIDI import if Tuxguitar can export LilyPond. But whether the Tux->Lily->Denemo route is feasible would depend on what sort of Lily output syntax is exported by Tux - the simplest thing would be to give it a try on a piece with the most complexity you're interested in and if creates valid LilyPond but fails in the import to Denemo just post the LilyPond syntax in case it's just a trivial problem. The other route would be to write a musicxml exporter for Tuxguitar - I just did this for Denemo, so I'm up to speed on how to write out MusicXML so I cold probably help there. Richard (*) to be more precise, import musicxml uses C routines to import the musicxml and then generates a scheme script which is executed to create the Denemo score. MIDI import is straight C.
