"Trevor Daniels" <t.dani...@treda.co.uk> writes: > David Kastrup wrote Wednesday, February 18, 2015 6:00 PM > >> More seriously, currently \displayLilyMusic deals badly with >> { c4 c4 8 8 4 } which gets rendered as { c4 c 8 8 4 } and does >> consequently not recreate its input. It would be rather tricky to fix >> that since by the time the 8 is printed, c and the following space have >> already been produced. Instead of making things even more complex here, >> I consider it saner to become less clever and just print what's in the >> data, never mind whether it's possibly redundant. >> >> Opinions? > > Agreed. It would be nice if \displayLilyMusic produced a canonical > form (using the "preferred notation" meaning) but we're a long way > from that.
I think that we won't be writing human-readable LilyPond files from within LilyPond. If we put out a predictable stream, the human-friendly formatting (linebreaks, linelengths, indentation) from that is more in the ballpark of Emacs or Frescobaldi. > In the meantime, producing correct LilyPond input is far more > important. I was not suggesting that "producing correct LilyPond input" would be impossible while keeping the default durations omitted as a rule. It would just further complicate the printing code, so I am more or less using the currently not-always-correct output as an opportunity for stopping to invest the effort for exploiting this redundancy: it's becoming more tricky (but by no means impossible) to know when it will work and when not. And actually, it was quite a bit of experimentation getting the examples in input/regression/display-lily-tests.ly to combine in a manner where there respective "leave off duration" decisions check out. Making them work independently from one another is going to remove at least one source of "Huh?". I do like the prospect of making input/music/output match closer. That was one aim of the somewhat repercussion-heavy issue 2240 which made cis differ from <cis>. Stopping \displayLilyMusic from omitting possibly redundant durations is much less likely to cause unexpected side effects. -- David Kastrup _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel