On 1/26/18, 4:40 PM, "lilypond-devel on behalf of David Kastrup" 
<[email protected] on behalf of [email protected]> 
wrote:

    Thomas Morley <[email protected]> writes:
    
    > Hi,
    >
    > while thinking about a nice lsr-snippet demonstrating usage of
    > `maximumFretStretch', I first thought to use the most extrem case for
    > the classical guitar I know of.
    > (Code below.)
    > But it more or less worked out of the box. It took a while before I
    > understood why:
    > `maximumFretStretch' is read in Tab_Voice_ not TabStaff. Does not make
    > much sense to me.
    >
    > Any hint how to make it work in TabStaff?
    
    determine-frets is called in Fretboard_engraver (in FretBoards context)
    and in Tab_note_heads_engraver (in TabVoice context).
    
    The problem is indeed that the determine-frets action should rather be
    done at TabStaff level: if you have notes in different TabVoice contexts
    (quite typical for somewhat polyphonic music), LilyPond has no qualms
    assigning the same string for notes in a different TabVoice .  Since it
    would be quite unusual for two instruments to be notated in the same
    tab, that's just stupid.
    
 Perhaps in the short term we should put a known issue with something like the 
following:

In TabStaff passages with multiple TabVoice contexts, the note-to-fret function 
is done on a per-voice basis, so two 
different notes can be assigned to the same string.  To avoid this problem, you 
can explicitly
assign string numbers to the notes.

Thanks,

Carl
    

_______________________________________________
lilypond-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to