|
| From: | Jonathan Kulp |
| Subject: | Re: French viol/lute tablature |
| Date: | Sat, 29 Nov 2008 14:47:10 -0600 |
| User-agent: | Thunderbird 2.0.0.18 (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 ofoutput-lib.scm. This is a very simplistic implementation of using lettersthat uses the same font, font size, and alignment that the numbers use. Theresults are not very pleasing and I will need to tweak it to make it look better. I am still pondering how I want to organize the code for the other aspects of French tab. Kim
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!
Jon
--
Jonathan Kulp
http://www.jonathankulp.com
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
\version "2.11.64"
#(define (letter-tablature-format str context event)
(let*
((tuning (ly:context-property context 'stringTunings))
(pitch (ly:event-property event 'pitch)))
(make-whiteout-markup
(make-vcenter-markup
(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'' {
\stemUp
\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
\autoBeamOff
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
}
>>
>>
}
| [Prev in Thread] | Current Thread | [Next in Thread] |