Am Freitag, 22. Januar 2010 01:19:39 schrieben Sie: > >> \include "../../pop-chords.ly" > >> \include "../../paren-2.ly" > > > > And now imagine that both of the included files include some other > > file > > blahblah.ily, which adds or removes some engraver to/from a > > context. The > > engraver will be added twice, which is a very good way to produce > > lilypond > > crashes... > > Interesting. I don't think it would occur to me to structure > includes recursively in the first place.
No, I'm not talking about recursive includes. Rather, you have a common include files with definitions for all your packages, and all your other include files need to include these base definitions. E.g. image you have two include files: modern-usage.ly and critical- report.ily. In both of them you need the same functionality, so you move the common code to e.g. base-definitions.ily: -) base-definitions.ily: % Some definitions, needed in all your include files \layout { \context {\Staff % Add / remove some engravers here } } -) modern-usage.ily: \include "base-definitions.ily" % Here, provide some functions for modern notation practice, which depend on % the definitions from base-definitions.ily -) critial-report.ily: \include "base-definitions.ily" % Here, provide some functions for critical reports, which depend on % the definitionsfrom base-definitions.ily Now, in your score, you sometimes need only modern-usage.ily, but sometimes you need both: \include "modern-usage.ily" \include "critical-report.ily" % <= Oops, usually crashes during processing As you see, the second include includes the base-definitions.ily a second time, so the engravers are added twice, and some engravers are very sensitive and will crash in that case... There's no recursion in here, just some straightforward package structure with a base packages and two packages building on that base Package... Cheers, Reinhold -- ------------------------------------------------------------------ Reinhold Kainhofer, reinh...@kainhofer.com, http://reinhold.kainhofer.com/ * Financial & Actuarial Math., Vienna Univ. of Technology, Austria * http://www.fam.tuwien.ac.at/, DVR: 0005886 * LilyPond, Music typesetting, http://www.lilypond.org _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user