Bonjour Jean-Louis :
\version "2.18.2"
#(set-global-staff-size 18)
%% Defs :
%% (=>
http://lilypond.1069038.n5.nabble.com/Stem-length-at-a-fixed-height-td172661.html#a172677)
equal-tab-staff-stems =
#(define-music-function (parser location val)(number?)
#{
\override Stem.direction =
#(lambda (grob)
(if (negative? val)
DOWN
UP))
\override Stem.after-line-breaking =
#(lambda (grob)
(let* ((stem-begin-position (ly:grob-property grob 'stem-begin-position)))
;; the override for Beam.positions counts from staff-position 0
;; thus we need to go there for the (unbeamed) stem-length as well
;; beam-thickness is taken from
engraver-init.ly:
(ly:grob-set-property! grob
'length
(+ (if (negative? val)
stem-begin-position
(- stem-begin-position))
(* (abs val) 2)
;; beam-thickness:
0.32))))
\override Beam.positions = #(cons val val)
#})
melody = {
\time 4/4
\key g\major
d4 g4 b4 d'4
g4 <b d'>8 g'\5 g4 <b d'>8 g'\5
g8 b4 c'8\3 fis'8. e'16\2 d'8. e'16\3
<d' g' b'>2 g'4\5 r4 \bar "|."
}
\score {
\new TabStaff = "tabanjo"
<<
{
\tabFullNotation
\stemDown
\melody
}
>>
\layout {
\context {
\TabStaff
tablatureFormat = #fret-number-tablature-format-banjo
stringTunings = \stringTuning < g' d g b d' >
\clef "moderntab"
\tabFullNotation
\equal-tab-staff-stems -3.2
\omit Clef
}
}
\midi { }
}