Graham Percival schrieb:
On Tue, Oct 27, 2009 at 12:01:24PM +0100, Federico Bruni wrote:
Unfortunately, I haven't figured out how to add the tweaks suggested by
Graham.
So if someone else is able to do it, he's free to emprove the (attached)
file (read the TODO section in the beginning).
Ok, well, I give up. I've added this as it is.
Sorry - I wanted to tweak it, but I was busy and finally forgot.
I have added a function which takes care of glissandi between
two equal note head positions. If I can manage to automatically
take the accidentals into account, this would be even more helpful.
But this is another story...
So here it is, with crude tweaks and hack, but it looks better than
before, I think ;-)
Marc
I suppose that even with the collisions and whatnot, it still
looks more impressive than the current example. It would be nice
if somebody could spend 10 minutes tweaking it, but I guess we
take what we can get.
- Graham
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user
\version "2.13.6"
#(set-global-staff-size 22.45)
#(define (glissando::calc-extra-dy grob)
(let* ((original (ly:grob-original grob))
(left-bound (ly:spanner-bound original LEFT))
(right-bound (ly:spanner-bound original RIGHT))
(left-pitch (ly:event-property (event-cause left-bound) 'pitch))
(right-pitch (ly:event-property (event-cause right-bound) 'pitch)))
(if (and (= (ly:pitch-octave left-pitch) (ly:pitch-octave right-pitch))
(= (ly:pitch-notename left-pitch) (ly:pitch-notename
right-pitch)))
(- (ly:pitch-alteration right-pitch) (ly:pitch-alteration left-pitch))
0 )))
%% Hide fret number: useful to draw slide into/from a casual point of
%% the fretboard.
hideFretNumber = { \once \override TabNoteHead #'transparent = ##t
\once \override NoteHead #'transparent = ##t
\once \override Stem #'transparent = ##t
\once \override NoteHead #'no-ledgers = ##t
}
\paper {
indent= #0
line-width= #180
}
upper= \relative c' {
\time 4/4
\key e \major
\set Staff.midiInstrument = #"acoustic guitar (steel)"
\set fingeringOrientations = #'(left)
%\override Staff.Glissando #'extra-offset = #' (0.0 . 1.0)
\partial 4. \acciaccatura c16 \glissando cis8 e4
< cis-1 g'-3 >2 s8 \grace a16 ( \glissando <b-2>8\3 ) <d-1> ( b ) |
<e-3>\2 ( <d-1> b ) \grace <ais-2>16 ( \glissando a8 g ) s4. |
s4. < d'\3 g\2 >8 < gis,\4 d'\3 fis\2 >2\arpeggio ~ |
< gis\4 d'\3 fis\2 >2 < b'\2\harmonic e\harmonic >2^\markup { \musicglyph
#"scripts.ufermata" } |
}
lower= \relative c {
\set fingeringOrientations = #'(left)
\partial 4. s4. |
s4 e,4 s2 |
s2 s8 <e'-3>4. ~ |
e4 \hideFretNumber \grace { b8 \glissando s4 } <e-2>4\5 e,2 ~ |
e2 < e'\6\harmonic > |
}
\score {
\new StaffGroup <<
\new Staff = "guitar" <<
\context Voice = "upper guitar" { \clef "G_8" \voiceOne
\override Glissando #'gap = #0.5
\override Glissando #'extra-offset =
#'(-0.5 . 0)
\override Glissando #'extra-dy =
#glissando::calc-extra-dy
\upper }
\context Voice = "lower guitar" { \clef "G_8" \voiceTwo
\override Glissando #'bound-details
#'right #'padding = #1
\override Glissando #'bound-details
#'left #'padding = #0.2
\lower }
>>
\new TabStaff = "tab" <<
\context TabVoice = "upper tab" { \clef "moderntab" \voiceOne \upper }
\context TabVoice = "lower tab" { \clef "moderntab" \voiceTwo \lower }
>>
>>
\midi {
\context {
\Score tempoWholesPerMinute = #(ly:make-moment 120 4)
}
}
\layout {
\context {
\Staff
\override StringNumber #'transparent = ##t
}
\context {
\TabStaff
\revert Arpeggio #'stencil
}
}
}
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-user