abctab2ps und flabc
This is the homepage of abctab2ps by Christoph Dalitz. I am grateful
to the German
Lute Society for hosting this site.
- Sample Output
- MacOS X
- Source Code
- Author and Contributors
abctab2ps is a music and tablature typesetting program which translates
an input file in the abc language into postscript. It is based on Michael
Methfessel's program abc2ps.
While abc2ps can only typeset music, abctab2ps is an extension by Christoph
Dalitz that can also handle lute tablature. flabc is an editor
that can be used for writing abc files. The prefix "fl" is an allusion to
the FLTK programming library which is used by flabc.
The features of abctab2ps include
multistave scores with music and tablature mixed
not more than one independent voice per stave, but chords are supported
bar numbers, slurs and various signs for graces
automatic positioning of lyrics under music
guitar chords and continuo figures
various kinds of tablature for fretted instruments: lute, guitar, banjo...
signs for right hand fingering
automatic transposition (music only)
detailed user's guide and man page
additional tool for extraction of voices, movements etc.
abctab2ps and flabc are copyrighted by Christoph Dalitz and can be distributed
freely under the terms of the GNU General Public License.
In order to create a music/tablature score with abctab2ps you must
perform the following steps:
Alternatively you can use flabc which integrates all three steps within
an easy to use graphical user interface.
start a text editor, enter the music in abc language and save it under a
filename with the extension ".abc", eg. "bla.abc"
switch to the command line and call abctab2ps on that file, eg. "abctab2ps
bla.abc". This will create the score as postscript graphics in the file
- The generated postscript file can be viewed on the screen with a postscript
previewer like gv or sent to the printer with lpr.
|flabc screenshot on MacOS X
||flabc screenshot on Windows
Important Notice: abctab2ps is not bug free. In particular there
might be buffer overflow bugs which can potentially be harmful. Thus you
should not run abctab2ps under a superuser account and always have a look
at the contents of unknown abc files before running them through abctab2ps.
See the question "Can abctab2ps do any harm to my system?" in the
You will find the necessary documentation for the above steps in the
source code distribution of abctab2ps:
The documentation for using flabc is accessible from its main menu item
"Help/Flabc Documentation". An online version can be found here. Example files can be found with the menu "File/Load Example".
The detailed User's Guide describes the abc language and is essential for
step 1. There is both a postscript version (for print out) and a HTML version
(for online reference). Moreover there are some illustrative examples in
the abctab2ps package.
The manual page describes the invocation of abctab2ps and all command line
parameters. It is essential for step 2. There is both a postscript version
(for print out) and a nroff version (for online reference under Unix).
The HTML version of the abctab2ps user's guide can be also browsed here
and here is a PDF version for print out.
Answers to frequently asked questions about installation and usage of
abctab2ps can be found in the FAQ document.
In order to use abctab2ps you need the following additional software:
Recommendations for postscript software and editor alternatives to flabc are
given in the section References.
flabc or an arbitrary text editor for creating files in the abc language
a postscript interpreter (ghostscript or a postscript printer) for viewing
and printing the output files
If you want to compile the abctab2ps source code, you need an ANSI C++ compiler
with STL support. For compiling the flabc source code you need additionally
the FLTK C++ GUI toolkit. The binaries provided on this site have been
compiled with gcc on Linux and MacOS X (gcc is shipped with Xcode) and
MingW32 on Windows.
abctab2ps and flabc Download
If you want to know what's new in the latest version of abctab2ps, please
read the latest release notes. Which version
you download will depend on your operating system.
For MacOS X get the application bundle flabc-osx-universal.zip,
which includes flabc (version 1.0.8), abctab2ps (version 1.8.3),
the abctab2ps user's guide and abc2midi (version 2.00). All binaries are universal and require at least
MacOS X 10.3.9. If you have an older ppc system, there is also an old ppc
application bundle flabc-osx-ppc.zip (version 1.0.6 with abctab2ps 1.8.2).
For an installation unpack the archive with a double click in the Finder and
move the application where you like. You can drag and drop abc files on the
application. Note that you will additionally need a postscript viewer;
see the menu "Help/Flabc Documentation" for installation instructions for a
postscript viewer and configuration hints.
For Windows NT/2000/XP get the binary installer
which includes flabc (version 1.0.8), abctab2ps (version 1.8.3),
the abctab2ps user's guide and
abc2midi (version 1.49).
Note that you will need additionally both ghostscript and gsview.
For Linux abctab2ps and flabc are distributed in seperate packages. The
binaries have been built on a pretty old system (Debian woody), so that they
should run on most systems. For rpm based distributions (eg. SuSE, Fedora)
you will need abctab2ps-1.8.3-i386.rpm
and flabc-1.0.8-i386.rpm. For dpkg
based distributions (eg. Debian, Ubuntu) you will need
After installation you can open abc files with the command flabc.
The documentation is installed into /usr/share/doc/abctab2ps
and /usr/share/doc/flabc and is also accessible from the "Help"
menu in flabc.
If you want to use midi conversion you will additionally need abc2midi.
The easiest way to install abc2midi on Linux is by getting its source
code from the abc2midi home page.
If the above binaries do not suit your needs or you want to hack on abctab2ps
and flabc yourself you can get the source code:
flabc-1.0.8.tar.gz. For an installation unpack
the sources with tar xvzf ... and follow the instructions in the
If you do not like flabc and prefer to use your favorite text editor for
writing abc files, one of the following editor macro packages might be useful:
|emacs abctab mode
|An abc language mode for the editor
Apart from various Unix platforms, Emacs is also available for
By default Emacs has rather strange keymappings; the common CUA keymappings
can be enabled with cua-mode.el.
This mode only works with GNU Emacs and not with Xemacs.
|nedit abc mode
|An abc language mode for the Unix editor Nedit.
Adds syntax highlighting and menu entries for previewing abc files, automatic
cursor motion to errors and interactive selection of format parameters.
Here is a screenshot.
Other possibly useful addons:
|A Perl script (requires Perl version 5.0 or higher) for the extraction
of voices, movements etc. from abc-files. Output can be piped directly
into abctab2ps. A man page is included. If you do not have Perl on Windows,
download abcselect-win32.zip instead.
|A simple Perl script for adding page numbers to a postscript file.
Position and start number can be changed by command line options.
pspage -? gives a usage message. If you do not have Perl on Windows,
download pspage.exe.gz instead.
|A Perl script which converts from Wayne Cripps' "tab" format
to abc. Detailed documentation is included.
If you do not have Perl on Windows, download
Publications prepared with abctab2ps:
abctab2ps and abc related sites:
Postscript software (please note that most of this software is shipped with all
Linux or FreeBSD distributions, so check the installation CDs of your operating
Ghostscript, a postscript interpreter and converter into almost all printer
languages, is available from http://www.cs.wisc.edu/~ghost/.
On MacOS X you cannot use Preview for viewing the Postscript files
generated by abctab2ps because it seems not to support type 3 fonts. Thus
you will need to install Ghostscript/Ghostview, preferably from Fink
(packages ghostscript and gv). These are X11 applications so
that you need additionally Apple's port of X11.
PSUtils is a collection of handy tools for manipulating Postscript files,
like page extraction, resizing (eg. letter -> A4), page reordering, n-up
printing etc. They are available from http://www.tardis.ed.ac.uk/~ajcd/psutils/
abctab2ps is written by Christoph Dalitz, based upon code by Michael
Methfessel. Apart from these two main authors, the following persons have
additionally contributed to the project (in alphabetical order, see the file
CHANGES in the source distribution for details):
Michael Burzan, Luis Pablo Gasparotto, Werner von Hoersten, Jef Moine,
Frank Nordberg, Alain Veylit, Anders Wiren, John Wright
All comments or suggestions are welcome and can be sent to
"christoph (dot) dalitz (at) hs-niederrhein (dot) de"
Last change 2008-01-27