This is the official site where you can find the latest versions of abcMIDI and runabc.tcl. The software is also available on but it is updated less frequently.

abc is a computer language for notating music in plain text format. It was introduced by Chris Walshaw in 1993 when Windows 3 and MSDOS were the main operating systems on personal computers. Software such as abc2midi and abc2ps for handling abc notation were introduced around this time. Presently there are more than a half a million abc files that are freely available on the internet.

The abcMIDI package was created by James Allwright in the 1990's in C code. About 20 years ago, he asked me to take over the support and maintenance of the code. I have been correcting bugs and adding new features since then. (See doc/CHANGES in the source code distribution.) In the meantime I was also transcribing international folk dances into abc format which can be found here.

Jef Moine has rewritten abc2ps and now supports it as abcm2ps on his web site.

The programs in the abcMIDI package (abc2midi, abc2abc, yaps, midi2abc, and etc.) run in a DOS command window; however, these programs have become embedded in more complex programs with nice user interfaces. Runabc, is one of such programs that I had created, and it has been growing over the past 15 years.

EasyAbc is another user interface that was created by Nils Liberg. It is a popular package and is available on Nils abandoned support of this package and presently I am one of the supporters. It is written in Python 2.4 and WxPython and it quite difficult to maintain.


Runabc is a graphical user interface to several command line driven programs for processing abc files. It is written in Tcl/Tk script and will run on any computer or operating system in which Tcl/Tk is installed. This includes Windows, Unix, Linux and Macintosh. The script now provides graphical user interfaces to abc2abc, abc2midi, abc2ps, abcm2ps and yaps. You also need a midi player and a postscript viewer. If you are running on Windows (2000, XP, Vista, Windows 7, Windows 8) or Linux. you can get many of the executables here and also from the web site The ABC Plus Homepage. For other systems you will probably need to download the sources and compile them yourself. The link below illustrates the operation of this program. The link install.html provides links to web sites where you can get the various components to run the program.

runabc.html describes what this program does. Updated 2019-10-17. You can also download the entire documentation in a zip file Updated 2019-07-17.

You can download the latest version of runabc.tcl here
2.140 November 06 2019 Source code
2.139 October 22 2019 Windows executable
2.139 October 22 2019 starkit
1.967 November 12 2015 Linux binary
2.139 October 22 2019 Mac binary
2.139 October 22 2015 Alternative Mac binary
2.132 July 21 2019 Windows install
1.102 November 12 2019 Source code only
runabc.exe has Tcl/Tk built in for Windows users who do not wish to install Tcl/Tk 8.5 on their system. Runabc.exe is now created using tclkit ( First save it to your hard drive and then run (no installs).

runabcexe is a similar executable with Tcl/Tk builtin for Linux.

runabc.kit will run without tcl/tk on almost any system where tclkit has been installed. See install.html for details.

For Windows system, setup_runabc.exe will install runabc.exe and the abcMIDI executables, and create shortcuts on your start button and Desktop. Runabc will now work properly even if it is installed in the c:\Program Files (x86) folder. It will create a separate folder in your home folder called runabc_home where it will store runabc.ini and other files that it needs to write. is a new program under constant developed which is described on sourceforge. The source code here is unstable, but stable versions including executables for Windows are available in the midiexplorer project on sourceforge.


You need

abc2abc 2.02 June 06 2019
abc2midi 4.24 October 13 2019 1.3.3 December 2 2000
yaps 1.73 August 11 2019
midi2abc 3.40 November 06 2019
midicopy 1.32 July 05 2019
abcmatch 1.73 June 06 2019

You may find the sources of most of these files in the latest version of abcmidi (see below)  and you can obtain the executables for various operating systems from Guido Gonzato's web site - The ABC Plus Homepage.

The latest version is November 11 2019. This version and newer are partially incompatible with runabc 2.139 and older and midiexplorer 1.100 and older

Executables for the Microsoft Windows operating systems are also available in the zip file This file was updated on November 12 2019 (includes abcm2ps-8.14.5 executable).

Documentation abc2midi guide . The guide was updated June 24 2018.

Other abc file links may be found in The abc Homepage.

Sample Abc files I have contributed

Balkan dances vol 1 updated 2019/06/20
Balkan dances vol 2 updated 2019/06/20
Israeli dances updated 2019/06/18
International dances updated 2015/12/09
Esac Database
Nottingham Database
Turkish Makams updated 2016/04/29
Klezmer Database cleaned up updated 2019/06/18
Ottawa Slow Jam
From **kern files introduced 2019/01/04
work in progress updated 2019/07/04

EasyAbc Support

Nils Liberg has been too busy to support EasyAbc. Some numerous bug fixes have been contributed and you can find updated source code here.


November 06 2019 midi2abc changing format for -midigram output
October 13 2019 abc2midi: fixed trill/broken rhythm interference.
August 10 2019 in response to Debian bug reports, fixes were applied to midi2abc, yaps, and midi2abc.
August 02 2019 midi2abc: bug fix for -stats option
July 12 2019 midi2abc: new option -noly (suppress lyrics)
July 05 2019 midicopy upgrade.
June 26 2019 midi2abc: on going work on splitvoices
June 20 2019 abc2midi: buffer overflow fix.
June 17 2019 midi2abc: on going work
June 06 2019 abc2abc: bug in chord handling
May 29 2019 midi2abc: extended to handle type 0 midi files.
May 15 2019 midi2abc: improved handling of accidentals and bug fixes.
April 23 2019 midi2abc changed invisible rest to visible rest
April 21 2019 runabc - new release
April 13 2019 midi2abc segmentation error fixed
March 23 2019 abc2midi. Fix for -c option for large files.
March 14 2018 runabc. Numerous bug fixes in editors.
March 14 2019 abc2midi. Fixed problem with line numbers in warnings.
February 10 2019 runabc. Option to suppress fermatas in advanced abc2midi settings.
February 08 2019 abc2midi recognizes dotted bar lines
January 31 2019 abc2midi. Option to suppress mixed tuplets warning.
January 20 2019 abc2midi. Removal of clef warnings.
January 18 2019 runabc. More options in reformat tool.
January 01 2019 abc2midi. Reduction of more error messages.
December 21 2018 abc2midi. Eliminated error message for THICK_THIN bar line.


This page was last updated on November 11 2019.