]> git.donarmstrong.com Git - lilypond.git/commitdiff
Allow string numbers to have #f stencil without programming error (Issue 2085)
authorCarl <c_sorensen@byu.edu>
Sat, 17 Dec 2011 05:16:38 +0000 (22:16 -0700)
committerGraham Percival <graham@percival-music.ca>
Mon, 26 Dec 2011 01:48:30 +0000 (17:48 -0800)
input/regression/tablature-harmonic-functions.ly
lily/new-fingering-engraver.cc

index c09624bbc75677ffcb5feba66851a181ee8fb64b..ff6b3868efdee4c0f09f2f9c1e9fc7612d0e1ba3 100644 (file)
@@ -1,4 +1,4 @@
-\version "2.14.0"
+\version "2.15.23"
 
 \header {
   texidoc = "
@@ -35,9 +35,8 @@ test = {
 \score {
   <<
     \new Staff {
-      \new Voice {
+      \new Voice \with { \override StringNumber #'stencil = ##f } {
         \clef "treble_8"
-        \override Voice.StringNumber #'transparent = ##t
         \test
       }
     }
index efb898bd54f864cfcbea00780c778c5b4a1dfbaa..76ec02d69d37b4b83cc5fb2911fd0bf49439028f 100644 (file)
@@ -106,9 +106,17 @@ New_fingering_engraver::acknowledge_rhythmic_head (Grob_info inf)
       else if (ev->in_event_class ("script-event"))
         add_script (inf.grob (), ev, note_ev);
       else if (ev->in_event_class ("string-number-event"))
-        add_fingering (inf.grob (),
-                       ly_symbol2scm ("StringNumber"), &string_numbers_,
-                       ev, note_ev);
+        {    
+          // String numbers are used in calculating harmonics even
+          // when we don't want them displayed.  So don't make space
+          // for them if 'stencil is #f
+          Grob *g = make_item ("StringNumber", ev->self_scm ());
+          if (g->get_property ("stencil") != SCM_BOOL_F)
+            add_fingering (inf.grob (),
+                            ly_symbol2scm ("StringNumber"), &string_numbers_,
+                            ev, note_ev);
+          g->suicide (); // Kill grob created to check stencil
+        }
       else if (ev->in_event_class ("stroke-finger-event"))
         add_fingering (inf.grob (),
                        ly_symbol2scm ("StrokeFinger"), &stroke_fingerings_,