+void
+Instrument_name_engraver::finalize ()
+{
+ if (text_spanner_)
+ stop_spanner ();
+}
+
+void
+Instrument_name_engraver::stop_spanner ()
+{
+ if (axis_groups_.empty ())
+ axis_groups_ = backup_axis_groups_;
+
+ for (vsize i = 0; i < axis_groups_.size (); i++)
+ Pointer_group_interface::add_grob (text_spanner_,
+ ly_symbol2scm ("elements"),
+ axis_groups_[i]);
+
+ text_spanner_->set_bound (RIGHT,
+ unsmob<Grob> (get_property ("currentCommandColumn")));
+
+ Pointer_group_interface::set_ordered (text_spanner_,
+ ly_symbol2scm ("elements"),
+ false);
+
+ text_spanner_ = 0;
+}
+
+
+void
+Instrument_name_engraver::boot ()
+{
+ ADD_ACKNOWLEDGER (Instrument_name_engraver, axis_group);
+}
+
+ADD_TRANSLATOR (Instrument_name_engraver,
+ /* doc */
+ "Create a system start text for instrument or vocal names.",