+2005-11-12 Han-Wen Nienhuys <hanwen@xs4all.nl>
+
+ * lily/system-start-delimiter-engraver.cc
+ (acknowledge_system_start_delimiter): use
+ add_offset_callback(). This fixes translation of nested
+ staffgroups.
+
+ * lily/grob-closure.cc (add_offset_callback): only encaps in
+ simple_closure if it's a procedure.
+
+ * lily/span-bar.cc (calc_glyph_name): read glyph-name, not glyph
+ from bar-line.
+
+ * ly/engraver-init.ly (RemoveEmptyRhythmicStaffContext): add
+ remove-empty where pertinent.
+
2005-11-12 Graham Percival <gpermus@gmail.com>
* Documentation/user/instrument-notation.itely: added
2005-11-10 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ * VERSION: release 2.7.16
+
* scripts/lilypond-book.py (main): use commands.mkarg () to quote
shell arguments.
PACKAGE_NAME=LilyPond
MAJOR_VERSION=2
MINOR_VERSION=7
-PATCH_LEVEL=16
+PATCH_LEVEL=17
MY_PATCH_LEVEL=
data = simple_closure_expression (data);
SCM plus = ly_lily_module_constant ("+");
- SCM expr = scm_list_3 (plus,
- ly_make_simple_closure (scm_list_1 (proc)),
- data);
+
+ if (ly_is_procedure (proc))
+ proc = ly_make_simple_closure (scm_list_1 (proc));
+
+ SCM expr = scm_list_3 (plus, proc, data);
g->internal_set_property (axis_offset_symbol (a),
ly_make_simple_closure (expr));
}
SCM gl = SCM_EOL;
for (int i = elements.size ();
i-- && !scm_is_string (gl);)
- gl = elements[i]->get_property ("glyph");
+ gl = elements[i]->get_property ("glyph-name");
if (!scm_is_string (gl))
{
Pointer_group_interface::add_grob (delim_, ly_symbol2scm ("elements"), inf.grob ());
}
+
void
System_start_delimiter_engraver::acknowledge_system_start_delimiter (Grob_info inf)
{
*/
if (scm_is_string (gl) && ly_is_equal (gl, scm_makfrom0str ("brace"))
&& scm_is_string (my_gl) && ly_is_equal (my_gl, scm_makfrom0str ("bracket")))
- inf.grob ()->translate_axis (-0.8, X_AXIS); // ugh
+ add_offset_callback (inf.grob (), scm_from_double (-0.8), X_AXIS);
else if (scm_is_string (gl) && ly_is_equal (gl, scm_makfrom0str ("bracket"))
&& scm_is_string (my_gl) && ly_is_equal (my_gl, scm_makfrom0str ("bracket")))
- {
- inf.grob ()->translate_axis (-0.8, X_AXIS); // ugh
- }
+ add_offset_callback (inf.grob (), scm_from_double (-0.8), X_AXIS);
}
System_start_delimiter_engraver::System_start_delimiter_engraver ()
extraVerticalExtent = ##f
\override SeparatingGroupSpanner #'padding = #0.8
\override VerticalAxisGroup #'remove-first = ##t
+ \override VerticalAxisGroup #'remove-empty = ##t
verticalExtent = ##f
}
\remove "Axis_group_engraver"
\consists "Hara_kiri_engraver"
\override Beam #'auto-knee-gap = #'()
+ \override VerticalAxisGroup #'remove-empty = ##t
}
AncientRemoveEmptyStaffContext = \context {
\consists "Skip_event_swallow_translator"
\consists "Separating_line_group_engraver"
\consists "Hara_kiri_engraver"
+ \override VerticalAxisGroup #'remove-empty = ##t
\override VerticalAxisGroup #'remove-first = ##t
\override VerticalAxisGroup #'minimum-Y-extent = #'(-0.5 . 2.5)
}
%% Special "TAB" clef
clefGlyph = #"clefs.tab"
clefPosition = #0
- keepAliveInterfaces = #'(rhythmic-grob-interface
-
- lyric-interface percent-repeat-interface)
-
}
%% TODO: Gregorian Chant contexts should be moved to gregorian-init.ly,
RemoveEmptyRhythmicStaffContext= \context {
\RhythmicStaff
\remove "Axis_group_engraver"
+ \override VerticalAxisGroup #'remove-empty = ##t
\consists "Hara_kiri_engraver"
}
#f)))
)
- (if glyph-name
- (set! (ly:grob-property grob 'glyph-name) glyph-name)
- (ly:grob-suicide! grob))))
+ (if (not glyph-name)
+ (ly:grob-suicide! grob))
+
+ glyph-name))
(define-public (shift-right-at-line-begin g)