After some experiments with issue 4615 resulted in strange output (not reliably reproducible even with identical input and executable) where the strangeness was not related to the experiments which were only about offsets: check out the "41" string designation in the lower right corner of the following image:
I suddenly realized that in all other occurences of the final chord, the final f' was missing in the tablature versions, apparently overprinted by a 4 with whiteout. The final f' is apparently assigned the e' string, just like the final as' since either, when taken alone, is most simply assigned to that string. The string assignment routine is called by the Tab_note_heads_engraver which sits in Voice context. So each Voice only gets to see all notes in its own Voice and the string assignment, which would work fine were all notes appearing in the same Voice and thus were all visible to `determine-frets' in scm/translation-functions.scm at the same time. Now string number events and note events obviously need to be collected per-Voice in order to establish their relation reliably, but the string assignment still needs to happen, once, at Staff level. -- David Kastrup
_______________________________________________ bug-lilypond mailing list bug-lilypond@gnu.org https://lists.gnu.org/mailman/listinfo/bug-lilypond