abc2harp is a Perl script that adds harmonica (harp) tab to ABC music notation in the form of lyrics text.
- Currently only the 10-hole diatonic harp is supported.
- The key of the harp can be specified (default is the same key as the music i.e. “straight harp”).
- Overbends can be allowed or disallowed (default).
Free for personal and non-commercial use.
Current version – abc2harp 0.1 beta (zip file)
abc2mma.pl <abcfile.abc | abcfile.txt> [options] - default output filename is <abcfile>_harp.abc
-o or -output=<tabfile> - output to <tabfile>.abc -writefile=<yes|no> - generates file (overrides -outfile) (default=yes) -v or verbose - turns on verbose mode -harpkey=<harpkey> - sets all harp keys to <harpkey>. Ignores all "X-ABC2HARP HarpKey" commands in input file. -overbends=<yes|no> - specifies whether overbends (blows and draws) are allowed (default=no). Overrides all "X-ABC2HARP OverBends" commands in input file.
Frequently Asked Questions
- How do I insert ABC2HARP commands?Use “%%X-ABC2HARP <command>” to directly insert ABC2HARP commands at the appropriate sections in the file (note: must be on a separate line). Please refer to the included examples.abc for examples.Currently available commands are “HarpKey <harpkey>” and “OverBends <yes|no>”.
Notes / Disclaimers
- Only 10-hole diatonics are supported currently – Inline key changes are not supported, but clef changes should be okay – This is NOT a parser! I’m just using mostly string substitution to get the results I want. I’m too lazy to write a full abc parser.
- I do not claim to handle all possible abc notation scenarios. There are features of abc notation which I don’t use, so I’m sure there are many cases which are broken.
- Finally, use at your own risk! I’m not responsible for any damages, blah blah… that may result from the use of this software.
- Version 0.1: 16 April 2006
- Support for chromatic harps
- Support for SuperTab font
Send your comments, bugs, requests to: geksiong AT yahoo DOT com
abc2harp and the contents of this page are copyright (c) Gek S. Low, 2006