TabCode

Lute tablature is a specialised system of musical notation based on the notion of telling the performer which string to play at which fret. There were various ways of doing this, but they all use ciphers - letters in 'French' tablature, numbers in 'Italian' tablature - to specify these string/fret 'coordinates'. (A third system, German tablature, uses unique typographical symbols or 'glyphs', based on letters, for each coordinate, and is thus more difficult to learn and sightread. It has the advantage, however, that no staff is required. (The Tablature Processor does not support German lute tablature, nor guitar tablatures, which have their own complicating factors.)

Since the prescriptive nature of lute tablature gives it a close resemblance to a computer program listing, it seems a simple task to devise a code for its representation of tablature notation on a computer. One way of doing this is Tim Crawford's TabCode, which uses ASCII text characters so that the data can be shared across all computer platforms. It is intended to represent all graphical elements of the tablature in a manner that is readable both by humans and by machines. The code resulting from the demand for completeness is quite complex, so the following brief description is restricted to essential features only.

Each vertical 'slice' or chord in the tablature is translated into a 'Tabword', separated from other Tabwords by so-called 'white-space' (ie space, tab, return or newline characters). If there is a rhythm sign above the chord, this is denoted by the relevant upper-case US note-value initial. Then follow the notes of the chord given as <letter><string-number>. Notes on the bass strings (below the 6th course) are separated from those on the six 'playing' strings by an 'X'; the 'slash' character ('/') is used to indicate the similar markings on bass strings, or numbers can be substituted, as is usually done for the 11th course and below. So the course below the 10th course ( ///a) is normally written as '4' (to denote the 'virtual' presence of 4 slashes). Barlines are denoted by the vertical-bar or 'pipe' character ('|').

So Dowland's 'Lachrimae' pavan begins:
Ha1a2b3c4c5a6
Qc4
Ed2a3
b2
Qa2b3
d3
Hd1a2c4
|

Reference: Tim Crawford, 'TabCode for Lute Repertories', Computing in Musicology, 7 (1991), 57-59

Much more information about TabCode can be found on the ECOLM web site

Department of Computing, Goldsmiths College, University of London, New Cross, London, SE14 6NW

Tel: +44 (0) 20 7078 5056 | Fax: +44 (0) 20 7919 7853 | Email: t.crawford@gold.ac.uk