next up previous contents index
Next: Format fine tuning Up: abctab2ps User's Guide Previous: Scores   Contents   Index

Subsections


Tablature

Lines of lute or guitar tablature are distinguished from music lines by the particular clefs frenchtab, french4tab, french5tab, italiantab, italian7tab, italian8tab, italian4tab, italian5tab, spanishtab, guitartab, spanish4tab, spanish5tab, banjo4tab, ukuleletab, germantab or banjo5tab. Like usual clefs, they can be specified in the K: field or in the clef parameter of a voice definition. The different clefs specify the following types of tablature:

frenchtab
In french tablature, the top line stands for the highest course. The frets at which the courses are stopped are given by letters: a stands for an empty string, b for the first fret etc. The letters are printed between the lines.

french4tab, french5tab
Like frenchtab, but with four resp. five tablature lines; one more course than tab lines is supported.

spanishtab, guitartab
In spanish tablature, the top line stands for the highest course. The frets at which the courses are stopped are given by numbers: 0 stands for an empty string, 1 for the first fret etc. The numbers are printed on the lines. This tablature was used by spanish vihuelists; nowadays it is quite common as guitar tablature. Spanish tablature does not support more than six courses.

spanish5tab, banjo5tab
Similar to spanishtab, but five tablature lines; not more than five courses.

spanish4tab, banjo4tab, ukuleletab
Similar to spanishtab, but four tablature lines; not more than four courses.

italiantab, italian7tab
In italian tablature, the top line stands for the lowest course, which makes this tablature more difficult to learn in the beginning. The frets at which the courses are stopped are given by numbers: 0 stands for an empty string, 1 for the first fret etc. The numbers are printed on the lines. If you want to notate bourdon strings in italian tablature, you must specify italian7tab rather than italiantab.

italian8tab
Additionally to italian7tab, stopped courses on the eighth course are possible. This results in more space between tabstaff and flags, which might be compensated with a negative value for %%tabflagspace.

italian4tab, italian5tab
Like italiantab, but with four resp. five tablature lines; not more than four resp five courses.

germantab
German lute tablature without staff lines and unique letters for each fret/course combination; not more than six courses.

Course and fret

As for music, simultanously plucked strings are written within chord brackets "[]". Each position in the bracket marks a specific course: the first character refers to the first course, the second character to the second course etc. If the specific course is unplucked, write a comma ","; is it unstopped write a; is it stopped in the first fret write b etc. If all subsequent courses are unplucked, you can end the chord.

If a tablature chord consists of only one plucked string the chord brackets can be omitted. If a chord only contains commas (eg. ``,1'' or ``[,2]''), only the rhythm flag is printed.

The following example shows the notation of a tablature chord and its output in frenchtab and spanishtab (guitartab):

[,abc,a] \includegraphics{sample5a.eps} \includegraphics{sample5b.eps}

Remarks:

  1. This "french tablature notation" with letters for the frets is the same for all tablature styles. Depending on the chosen tabstyle in the clef specification, the output will differ. Numbers for the frets in the input format cannot be used for two reasons:
  2. In french tablature, the letter "j" is not used. Consequently, the letter "k" means the 9th fret etc.
Bourdon strings or "diapasons" are written in braces "{}". You can use both the ledger line notation for courses 7 to 10 and the number notation; eg. "{,,,a}" and "{10}" both mean the tenth course, where the first notation results in an "a" with three ledger lines and the second results in an "X".

Please note that braces indicate grace notes in music lines. Since grace notes are not supported in tablature, braces are abused in tablature notation.

In german lute tablature, the symbols used for the sixth course (``Brummer'') vary from print to print: some use A B C D ..., some 1 A B C ... and others 1 2 3 4 ..., where the numbers are crossed through. You can choose the style with teh format parameter %%tabbrummer which can be one of ABC, 1AB or 123.


Rhythm

As for music, the length of a note is specified by a factor with respect to the default length (L: field). In contrast to music chords which require the length factor after the first note in a chord, tablature chords require the length factor after the last note of a chord.

An other important difference concerns the interpretation of chords without any note length factor. In music, these chords inherit their length from the default length specified in the L: field. In tablature, these chords inherit their length from the length of the previous chord and the rhythm flag is omitted in the printed output (unless you explicitly ask for a flag on every note with %%taballflags). This means that you must specify the length factor "1" if you want a flag above a chord of the default length.

The shortcuts ">" and "<" for dotting work like in music lines.

The code for triplets and general n-plets is the same as in music,, eg. "(3[a,bc1]cd".

There is no consistent way for the notation of rests in tablature: most historic sources draw a flag with no fret letters, while modern editions often use modern rest signs. Which rests abctab2ps draws depends on the tabrhstyle: in ``modern'' and ``modernbeams'' style, abctab2ps draws modern style rests; in all other style old style rests are drawn. If you need an flag without letter in tabrhstyle modern, you can use empty chords, eg. ``,1'' or ``[,2]''.

Like tablature chords, rests inherit their length from the previous chord or rest and they are only drawn if they explicitly have a rhythm factor. Moreover, invisible rests are indicated by x.


Decorations

In music, the abc language only knows graces that affect an entire chord. While this is ok for most decorations, there are some tablature grace signs (eg. appoggiatura) that apply to a single note of a chord. Thus there are two ways to specify a tablature decoration:

The following table lists all graces supported in tablature and whether they may appear within chord brackets ("applies to chord/note"):

Input char Meaning Applies to
H (upper H) fermata (also !fermata!) chord
S (upper S) segno sign (also !segno!) chord
O (upper O) coda sign (also !coda!) chord
!p! !pp! !mp! dynamic marks (also !f! !ff! !mf! !sf! !sfz!) chord
. (dot) right hand fingering: index finger.
Is drawn as a single dot under lowest plucked course.
chord
: (colon) right hand fingering: middle finger.
Is drawn as a double dot under lowest plucked course.
chord
; (semicolon) right hand fingering: ring finger.
Is drawn as a triple dot under lowest plucked course.
chord
+ (plus) right hand fingering: thumb.
Representation depends on tablature type: in spanishtab/guitartab it is drawn as a plus, in frenchtab or italiantab it is drawn as a vertical stroke.
chord
' (quote) an accent after the note.
In historic sources often used for an appoggiatura or trill from above.
note
X (upper X) an 'x' after the note.
In historic sources often used for a trill or vibrato.
note
U (upper U) an U-shaped arc after the note.
In historic sources often used for an appoggiatura or trill from below.
note
V (upper V) an U-shaped arc below the note.
The only difference to "U" is that the arc is drawn below the tabletter rather than behind.
note
# (sharp) an '#' after the note.
In historic sources used for a trill or vibrato.
note
* (asterisque) an '*' after the note.
In historic sources used for a vibrato or bass note damping.
note
T (upper T) prints 'tr.' below the chord in italiantab. (also !trill!)
In frenchtab, it is drawn as an accent on the top note of the chord, because the 'tr.' symbol would interfere with bourdons.
chord
L (upper L) An oblique line under the note; when applied to a chord, it is drawn under the bottom note of the chord.
In banjo tablature used to indicate longer notes; in baroque french tablature used to indicate an arpeggio.
note
!strumup! An arrow indicating a chord strummed bottom up chord
!strumdown! An arrow indicating a chord strummed top down chord


Text below notes

The "guitar chord" notation of text enclosed in double quotes (") can be used in tablature too. In tablature however, the text is printed below the tablature system rather than above, because otherwise it would interfere with the rhythm flags.

"Guitar chords" in tablature typically are not used for actual guitar chord symbols, but for other stuff eg. left/right hand fingering. Like in music, "guitar chords" can contain line breaks, indicated by \n.


Beams, ties and slurs

Like in music, ties to the next note can be notatetd with a dash "-" and more general slurs with parenthesis "()". There is a significant difference however: in music, slur bows are also used to indicate phrasing and more than one slur can start at a single note. In tablature, slur bows always mean "slur" and not more than one slur may start on a single note, nor may slurs be stacked. Like in music however, slurs inside and outside of chords are different kinds of animals.

Here are some examples for tablature slurs: Please note, that the first tie in the second example is not possible in music because the opening parenthesis in the chord is not immediately closed in the next note.

\includegraphics{sample6a.eps}  \includegraphics{sample6b.eps}  \includegraphics{sample6c.eps}
[,a(a,c] [,,b)] (,,a ,,b)  [,aa,(c] ,c ([,d,,c)] ,c)  [,,aa(c] ,a ,c [,d,,y)]

Remarks:

Beams in the tablature rhythm flags are only drawn when the rhythm style is set to %%tabrhstyle grid or modernbeams (see Format parameters). When this rhythm style is set, the rhythm flags of notes which are grouped together without white space are connected with beams. This results in grid shaped rhythm flags as used in some english 16c manuscript sources.


Tenuto strokes

Tenuto strokes indicating held notes are drawn with !ten(! for the start of a tenuto and !ten)! for the end of a tenuto. These marks are only allowed inside chord brackets. To let them start or end on an unplucked course, use the invisible fret symbol y. Here are some examples which also show the use of the invisible fret symbol:

\includegraphics{sample7a.eps}  \includegraphics{sample7b.eps}  \includegraphics{sample7c.eps}
[,aa,!ten(!c] ,c \  ,aa,c] [,c,,!ten(!y] \  [,aa,!ten(!c] ,c \
,d [,cd,!ten)!a]  [,d,,!ten)!y] [,cd,a]  [,d,!ten)!y] [,cd,a]


Format parameters

Like various aspects of the page layout, some parameters of the tablature format can be specified via pseudocomments or a format paramter file. The parameters apply to the entire abc file; if the same parameter is specified more than once, the last value overwrites the previous specifications.

In addition to the general parameter format, tablature format parameters can be of the type keyword which means a value from a list of special keywords.

The following parameters are supported:

Parameter abctab2ps option Type Description
tabfontsize -tabsize integer distance (in pt) between tablature lines and (if tabfontscale=1.0) size of tablature font
tabfontscale   decimal scale factor for tablature font. If greater than one, tablature letters/numbers are larger than the tablature line distance. Can be useful for fonts, which are too large or to small (eg. frFrancisque) for your taste.
tabfontfrench   keyword font file from which the font for french tablature is loaded. (see Tablature Fonts)
tabfontitalian   keyword font file from which the font for italian tablature is loaded. (see Tablature Fonts)
tabfontgerman   keyword font file from which the font for german tablature is loaded. (see Tablature Fonts)
tabaddflags   integer how many flags shall be added to tab rhythm signs. Eg. a value of 2 means that a quarter note (no flag) in music is printed as sixteenth (two flags) in tablature. Negative values are possible but probably not very useful.
tabflagspace   dimension additional space between rhythm flags and tablature system. Only necessary when the chosen tablature font exceeds its bounding box.
tabgchordspace   dimension space between gchord text and tablature system.
tabrhstyle   keyword style of the rhythm signs. Possible values are simple (headless 16c french style), grid (same as simple, but with support for beams), modern (17c french style with heads), modernbeams (same as modern, but with support for beams), diamond (italian 16c style with diamond shaped heads) or none (no rhythm flags at all).
taballflags   logical when true, rhythm flags are printed above all notes, even on those without a length factor
tabfirstflag   logical when true, rhythm flags are only printed when the rhythm changes or after a bar line
tabledgeabove   logical when true, ledger lines for french bourdons are printed above the note rather than before.
tabbrummer   keyword style for the sixth course (``Brummer'') in german tablature. Possible values are ABC, 1AB or 123.
tabgermansepline   logical when false, separator lines between german tablature systems are suppressed.

Remarks:

  1. The font parameters tabfont* are global settings which cannot be changed between different tunes (X:) within a single abc file.
  2. The choice of tabrhstyle affects the implicit default value of tabaddflags: for "simple" tabrhstyle the latter is 2, otherwise it defaults to 0. To override these defaults, simply set tabaddflags explicitly.
  3. In case of tabrhstyle none you might want to set a negative value for tabflagspace.


Tablature Fonts

abctab2ps reads the font files for tablature letters or numbers from the directory specified by the environment variable ABCTABFONTS. Font file names consist of the name of the composer who used this font and the prefix fr (like "french") for letter fonts, it (like "italian") for number fonts or de (like "deutsch") for german tablature fonts. Font file names are case sensitive and only the third character is uppercase. Valid font names are eg.
frFrancisque
itBorrono
deFraktur
In the abc file you can specify the desired font files with the pseudocomments %%tabfontfrench, %%tabfontitalian and %%tabfontgerman, where the prefix in the font file name optionally may be omitted. Note that different fonts look best at different sizes: eg. frFrancisque should be at least 14pt, while itBorrono looks better at 13pt. Thus, when experimenting with different fonts you should experiment with different values for %%tabfontsize and %%tabfontscale too.

If you you have some minimal postscript knowledge, you can easily define your own tablature font: start with a given font file and replace the drawing routines for the individual letters or numbers with your own postscript routines. A font file with the prefix fr must define the postscript font FrenchTabfont, which is used in the drawing routines for french tablature. A font file with the prefix it must define the postscript font ItalianTabfont, which is used in the drawing routines for italian and spanish tablature.

The drawing routines in the default fonts are defined in a 20x20 system, you can change this with a different /FontBBox statement. For each character symbol, you should leave some top space in order to prevent the letters from touching each other. Additional bottom space for French fonts is not necessary because abctab2ps puts one point space between tablature lines and the symbols.

In order to make abctab2ps interpret your self defined font correctly, you must adhere to the following encoding scheme for frenchtab and italiantab (spanishtab):

Character Codes Symbols
97-119 (ASCII 'a'-'w') FrenchTabFont: letters for french tablature.
ItalianTabFont: numbers for italian tablature.
Please note that 106 ('j') is not used; thus the eigth fret is code 105 ('i') and the nineth fret is 107 ('k').
There is no need to implement all codes; 97-111 ('a'-'o') should suffice for almost all purposes.
121 (ASCII 'y') should not be used, because it is reserved as an invisible anchor for slurs or decorations on unplucked courses.
68-71 (ASCII 'D'-'G') Numbers '4'-'7' for the french habit of numbering bourdons
72-78 (ASCII 'H'-'N') Numbers '8'-'14' for the italian habit of numbering bourdons

If you need special tablature symbols like signs for tenuto signs or damping, you can use the high code lower case letters 'p'-'w' (112-119) for this purpose.

For germantab, you must adhere to the following encoding scheme:

Character Codes Symbols
32-97 symbols for courses 1-5, starting with course 5, fret 0 (c5f0, the symbol '1' in germantab) and then c4f0, c3f0, c2f0, c1f0, c5f1, c4f1 etc.
There is no need to implement all codes; 32-87 (up to fret 12) should suffice for most purposes.
128-143 symbols for course 6 (``Brummer'') for %%tabbrummer = 'ABC'
144-159 symbols for course 6 (``Brummer'') for %%tabbrummer = '1AB'
160-176 symbols for course 6 (``Brummer'') for %%tabbrummer = '123'

Unsupported Features

The following features are currently not supported in tablature lines:


next up previous contents index
Next: Format fine tuning Up: abctab2ps User's Guide Previous: Scores   Contents   Index
Christoph Dalitz 2011-04-26