\version "2.19.49" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% include bend-files %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \include "../bend-helpers.ly" \include "../bend-stencils.ly" \include "../bend-grob-defs.ly" \include "../bend-music-functions.ly" %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% layout %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \layout { indent = 0 \context { \Score \override RehearsalMark.self-alignment-X = #LEFT } \context { \Voice \omit StringNumber } \context { \TabVoice %% next three lines only for better viewing/debugging \override BendSpanner.color = #red \override BendSpanner.layer = #20 \override TabNoteHead.whiteout = ##f \override BendSpanner.details.target-visibility = ##f } } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Examples with two Voices for rare cases %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%% % 1 %%%% \markup \rounded-box \fill-line { "bend to different amounts - two Voices" } \new TabStaff << \new TabVoice { \override BendSpanner.details.y-distance-from-tabstaff-to-arrow-tip = 3.3 g'1\preBendHold \startBend a'1~ a'\stopBend\startBend g'\stopBend } \new TabVoice { \override BendSpanner.details.y-distance-from-tabstaff-to-arrow-tip = 0.7 r1 g,1\startBend a,2\6\stopBend \startBend g,\stopBend r1 } >> %%%% % 2 %%%% mI = { \grace f'4 \startBend g'4\stopBend \startBend \once \override TabNoteHead.transparent = ##t f'8\stopBend } mII = { \grace d'4 \startBend \once \override NoteColumn.X-offset = 1.5 ees'4\stopBend\startBend \once \override TabNoteHead.transparent = ##t d'8\stopBend } << \new Staff << \new Voice { \key bes \major \voiceOne \clef "G_8" \mI } \new Voice { \voiceTwo \clef "G_8" \mII } >> \new TabStaff << \new TabVoice { \override BendSpanner.details.y-distance-from-tabstaff-to-arrow-tip = 3.5 \mI } \new TabVoice { \override BendSpanner.details.y-distance-from-tabstaff-to-arrow-tip = 0.7 { \voiceTwo \mII } } >> >> %%%% % 3 %%%% \markup \rounded-box \fill-line { "bend to different amounts - two Voices with added articulations" } ">." = \tweak BendSpanner.after-line-breaking #(lambda (grob) (ly:grob-set-property! grob 'text #{ \markup \override #'(direction . 1) \override #'(baseline-skip . 2.5) \dir-column \halign #CENTER { #(ly:grob-property grob 'text) \override #'(baseline-skip . 0.8) \center-column { \musicglyph #"scripts.sforzato" \musicglyph #"dots.dot" } } #})) \etc musUp = { s2. \grace b'!4-\">." \startBend c''8->-.\stopBend b'16( a')~ a'1 } musDown = { s2. \grace g'4\2-\">."\startBend \once \override NoteColumn.X-offset = 1.5 a'8->-.\2\stopBend g'16(\2 f')\2~ f'1\2 } << \new Staff << \new Voice { \voiceOne \clef "G_8" \musUp } \new Voice { \voiceTwo \clef "G_8" \musDown } >> \new TabStaff << \new TabVoice \musUp \new TabVoice { \voiceTwo \musDown } >> >> %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Example with Ties %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \markup \rounded-box \fill-line { "bend up, no release, bent note is tied" "and" "bend up, bent note is tied, release" } \new TabVoice { %% use \bendHold to ensure the tied note appears bent c'\3\startBend d'\3\stopBend\bendHold\startBend~ d'\3\stopBend %% bend up, no release, bent note is tied c'\3\startBend d'\3\stopBend\bendHold\startBend ~ d'\3~ d'\3\stopBend\startBend c'\3\stopBend % % bend up, bent note is tied, release } %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %% Example with Ties, excluding NoteHeads, example by Federico %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \markup \rounded-box \fill-line { "ties in chords" } myMusic = \relative { %% gis has a tie and should not be bent %% -> set the bounding NoteHeads to bend-me ##f 8\startBend \stopBend %% gis has a tie and should not be bent %% -> or use a general override for Tie.bend-me \override Tie.bend-me = ##f 8\startBend \stopBend } \score { \new StaffGroup << \new Staff { \clef "treble_8" \myMusic } \new TabStaff { \clef "moderntab" \new TabVoice \myMusic } >> } %}