- out = fm->find_by_name (idx_either + "r" + suffix);
- if (!out.is_empty ()
- && !Staff_symbol_referencer::on_line
- (me,
- robust_scm2int (me->get_property ("staff-position"), 0)))
- idx_either += "r";
+ if (style == "mensural"
+ || style == "neomensural"
+ || style == "petrucci"
+ || style == "baroque"
+ || style == "kievan")
+ {
+ if (!Staff_symbol_referencer::on_line
+ (me,
+ robust_scm2int (me->get_property ("staff-position"), 0)))
+ {
+ Stencil test = fm->find_by_name (idx_either + "r" + suffix);
+ if (!test.is_empty ())
+ {
+ idx_either += "r";
+ out = test;
+ }
+ }
+ }
+
+ if (style == "kievan"
+ && 3 == robust_scm2int (me->get_property ("duration-log"), 2))
+ {
+ Grob *stem = unsmob<Grob> (me->get_object ("stem"));
+ Grob *beam = unsmob<Grob> (stem->get_object ("beam"));
+ if (beam)
+ out = fm->find_by_name (idx_either + "2kievan");
+ }