lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [tablatures] Re: Problems with chord glissandos with articulations a


From: Marc Hohl
Subject: Re: [tablatures] Re: Problems with chord glissandos with articulations and tablature
Date: Sat, 24 Apr 2010 09:39:15 +0200
User-agent: Thunderbird 2.0.0.24 (X11/20100317)

Carl Sorensen schrieb:

On 4/23/10 1:48 AM, "Marc Hohl" <address@hidden> wrote:

Carl Sorensen schrieb:
On 4/16/10 8:30 AM, "Bernardo Barros" <address@hidden> wrote:

[...]
Check out the attached files for one possibility.  Note that I've moved the
chordGlissando function to its own .ly file so it can be included in any .ly
file you desire to write, without having to copy it in an editor.
Hello Carl,

thanks for your work - this extension is great! However, in combination
with tab staves, the explicit declaration of "\new Voice" in
add-glissando-line
creates spurious staves below the tablature. Is there a way to switch
to TabVoice automatically, i.e. to get the current context, and if it is a
Staff, then use Voice, if it is TabStaff, use TabVoice?

OK, I couldn't keep away from it while I was at my son's graduation
exercise.
Hehe, sounds familiar :-)
I've attached replacement code that now works for both a staff and tabstaff.
One issue -- you need to explicitly set string numbers for the chord,
because the glissando ends up being drawn one note pair at a time, so the
string selection algorithm doesn't work.

Again, it's probably a hack rather than a real solution; the real solution
would find the string numbers from the first chord if it's a TabVoice and
use those numbers automatically.
Thank you for investigating further. It has one serious drawback - it seems to be impossible to use music variables. Your posted chord-gliss-tab.ly works properly, but if I use

test = { \chordGlissando <c\3 e\2 g\1 >8 <f\3 a\2 c\1 >8 }

\relative c' {
 <<
\new Staff {
  \new Voice {
    \parserSetVoiceSymbol #'Voice
    \test
  }
}
\new TabStaff {
  \new TabVoice {
    \parserSetVoiceSymbol #'TabVoice
    \test
  }
}
>>
}
it creates three separate staves below.

I wonder whether it would be possible to define something like
\new Bottom { ... }
which will be expanded to a Voice within Staff and
to [Tab|Drum]Voice within [Tab|Drum]Staff.

Perhaps I am wrong, but this should simplify things a lot.

Marc
But it's a hack that is reasonably useful.

HTH,

Carl






reply via email to

[Prev in Thread] Current Thread [Next in Thread]