+ Grob *sc = unsmob_grob (scm_car (s));
+
+ /*
+ Don't want to consider scripts horizontally next to notes.
+ */
+ if (!sc->has_offset_callback (Side_position_interface::aligned_side_proc,
+ X_AXIS))
+ staff_sided.push (sc);
+ }
+
+ for (int i = 0; i < staff_sided.size (); i++)
+ {
+ Grob *g = staff_sided[i];
+ Direction d = Side_position_interface::get_direction (g);
+ if (!d)
+ {
+ programming_error ("no direction for script");
+ d = DOWN;
+ g->set_property ("direction", scm_int2num (d));
+ }
+
+ scripts[d] = scm_cons (g->self_scm (), scripts[d]);