[Top][All Lists]

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

Re: French viol/lute tablature

From: Jonathan Kulp
Subject: Re: French viol/lute tablature
Date: Sat, 29 Nov 2008 14:47:10 -0600
User-agent: Thunderbird (X11/20081125)

Kim Shrier wrote:

I have letters working after a fashion. I have added letter-tablature-format and bass-viol-tuning, tenor-viol-tuning, and treble-viol-tuning to my copy of
output-lib.scm.  This is a very simplistic implementation of using letters
that uses the same font, font size, and alignment that the numbers use. The
results are not very pleasing and I will need to tweak it to make it look

I am still pondering how I want to organize the code for the other aspects
of French tab.


Kim, I've been playing with this a bit and have come up with a decent start, I think. I haven't figured out how to get the ancient notes above closer to the TabStaff--if I make them any lower on the zero-line staff, it starts showing ledger lines that I can't make disappear.

Give this a try and see what you think!


Jonathan Kulp


\version "2.11.64"

#(define (letter-tablature-format str context event)
      ((tuning (ly:context-property context 'stringTunings))
       (pitch (ly:event-property event 'pitch)))
      (string (integer->char
         (+ (char->integer #\a)
            (- (ly:pitch-semitones pitch)
            (list-ref tuning (- str 1))))))))))

noStem =    #(define-music-function (parser location) ()
         \override Voice.Stem #'transparent = ##t

\score {
  \new Staff <<
    \relative c'' {
      \override Staff.TimeSignature #'transparent = ##t
      \override Staff.Clef #'transparent = ##t
      \override Staff.StaffSymbol #'line-count = 0
      \override LedgerLineSpanner #'transparent = ##t
      \override Stem #'flag-style = #'mensural
      \override Stem #'thickness = #1.0
      \override NoteHead #'style = #'mensural
      a4 a8 a a2
  \new TabStaff <<
    \set TabStaff.stringTunings = #'(2 -3 -8 -12 -17 -22)
    \set TabStaff.tablatureFormat = #letter-tablature-format
    \relative c {
      \override Beam #'transparent = ##t
      \override TabNoteHead #'extra-offset = #'( 0.0 . 0.5 )
      \stemUp \cadenzaOn \noStem \time 2/2
      c4 d8 e f2

reply via email to

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