-ENTER_DESCRIPTION(Instrument_name_engraver,
-/* descr */ " Prints the name of the instrument (specified by "
-" @code{Staff.instrument} and @code{Staff.instr}) "
-"at the left of the staff. ",
-/* creats*/ "InstrumentName",
-/* accepts */ "",
-/* acks */ "bar-line-interface axis-group-interface",
-/* reads */ "instrument instr",
-/* write */ "");
+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;
+}
+
+ADD_ACKNOWLEDGER (Instrument_name_engraver, axis_group);
+
+ADD_TRANSLATOR (Instrument_name_engraver,
+ /* doc */
+ "Create a system start text for instrument or vocal names.",
+
+ /* create */
+ "InstrumentName ",
+
+ /* read */
+ "currentCommandColumn "
+ "instrumentName "
+ "shortInstrumentName "
+ "shortVocalName "
+ "vocalName ",
+
+ /* write */
+ ""
+ );