On Sep 17, 2011, at 5:21 PM, Reinhold Kainhofer wrote: > Am Saturday, 17. September 2011, 05:35:30 schrieb Colin Campbell: >> For 22: MDT Sunday Sept 18: > [...] >> Issue 1888: Introduce a maximum depth for markup evaluation - R 5032041 >> >> and the closely related >> >> Issue 380: Try to auto-detect cyclic references in header fields (was >> 'cycling markup reference segfaults') - R 5027042: Fix 380: Auto-detect >> all cyclic references in markups > > There's another patch for this issue: > http://codereview.appspot.com/4951073/ > > As the general solution (R 5027042) is not able to print out nice error > messages (i.e. tell the user where exactly the problem lies), this patch > handles only the cyclic \fromproperty case and prints a warning that tells > the > user exactly which header property has a recursive definition. > > I'd like both patches to go in, the first, because it fixes the problem in > general, and the second because it's a more user-friendly special case. > > What I'm still missing, though, is how I can nicely print out the contents of > the recursive markup. So far, I'm only able to print the name of the markup > function, but not its contents (i.e. I can only print somehting like > "recursive line-markup encountered", but the user won't know which of his > hundreds of markups in a score causes it). >
I've been toying with the idea for some time now of making markups at all levels behave more like grobs. It would require a massive code rewrite, but it'd allow a much more uniform approach to exactly this sort of thing (markups could, for example, issue errors like grobs, which gives the user the place in the code where the bad markup is). It'd also allow for some code-duping in the footnote code to go away and would allow for object-oriented references between markups (which would help with spacing, advanced inter-markup communication for layout stuff, etc.). Would anyone be interested in co-taking this on? Cheers, MS _______________________________________________ lilypond-devel mailing list lilypond-devel@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-devel