From: John G. <jo...@ma...> - 2010-04-12 05:05:34
|
On Saturday 10 April 2010 9:12:54 pm D. Michael McIntyre wrote: > > How complete is the XML export at this point? > > Not very. Most of the lines date back to revision 7570, which is where a > lot of our early history ends, at the Reorganisation. Everything since > then just looks like minimal upkeep, with some minor bit of refactoring > along the way. > > I would expect it to be substantially incomplete, and in something like the > state the LilyPond code was in when I started working on it originally. > The LilyPond code has been through several major overhauls in that time. After learning how much more effort has gone so far into the lilypond export than XML at this point, I went back to look at it again. Having beams, slurs, and all those annotations come through are pretty important to me. So it turns out that it's *not* the segment/voice mapping that was causing me so much grief. My sequence actually had a lot of errors in it, which is why lilypond was choking with barcheck and beam errors galore. These errors came in two flavors: one was segment start points 1/64 note off of a real bar, and other timing errors that do not show in the notation editor. I found these errors by looking at the lilypond error line number, finding the line in the lilypond export using emacs (which was frequently marked with a comment noting the error), looking up the bar number, navigating emacs to figure out what part it was in, and going back into Rosegarden to fix the error. Probably not intuitive for non-programmer types, but it worked out OK for me. 8-) The wrong segment start point was a notorious bug on pre-Thorn Rosegarden whenever I used the resize tool. The subtle timing errors were created because the pre-Thorn notation editor always had trouble for me puting the note in the right place, and I always used to struggle to make the red warning barlines go away. With the *new* Rosegarden, I just made sure all my segments started on a bar with the resize tool (I think that bug is fixed) and tripple clicked in the notation editor and grid quantized the whole segment. The notation *looked* the same in Rosegarden, but Lilypond was *much* happier. This might be worthy of a FAQ: Q: Why does Lilypond choke on export with files created in pre-Thorn Rosegarden? A: Thorn is much improved about keeping accurate segment boundaries and note timing. In the new version, make sure your segments *start* and *stop* on an actual barline, and re-quantize the notes inside the notation editor. This fixes most barcheck, beaming, and slur errors emitted from Lilypond from these files. John |