What Features Does EasyABC Offer?

Updated

EasyABC is an open-source ABC music notation editor that covers the full editing-to-output workflow: you write or import ABC code, see the score update as you type, play it back, and export it to several formats. It is aimed at people who already know the fundamentals of ABC notation, though the built-in ABC assist frame can help you learn it. The feature set below reflects the program as described in the Guide to EasyABC (revision dated 2021/10/13).

Editing and score display

  • Good ABC standard coverage — the program relies internally on abcm2ps (for engraving the score) and abc2midi (for playback), so its handling of the ABC standard follows those tools.
  • Live score updates — changing a note in the ABC code updates the corresponding note in the score.
  • Syntax highlighting for ABC code.
  • Zoom support for the score display.
  • ABC assist — a helper frame for learning or looking up ABC notation, toggled on or off by clicking the light bulb in the top menu.

Main window layout

The main window is split into either 3 or 4 frames, all empty when the program starts:

Frame Contents
Left Tune list — all tunes in a collection, each shown with its X: reference number and T: title
Upper right Musical score of the selected tune
Lower right ABC code of the selected tune
Bottom left ABC assist (optional, toggled via the light bulb)

Clicking a tune in the list loads its score and ABC code. Clicking the play icon (green circle with a right arrow) in the top menu plays the selected tune.

Import

  • MusicXML files
  • MIDI files — the MIDI-to-ABC translator is custom-made to produce legible ABC code with more sensible beaming
  • Noteworthy Composer files

Export

Exports can be applied to all tunes or only the selected one:

  • PDF file output
  • MIDI file(s)
  • HTML
  • HTML (interactive)
  • MusicXML
  • ABC
  • WAV

Settings and search

  • Abc Settings, File Settings, Abcm2ps Settings, Abc2midi Settings, Voice Settings, and Xml Settings are all configurable.
  • Find in files lets you search across a collection rather than a single tune.

Platform support

The guide documents running EasyABC on Windows, Linux, and Raspberry Pi.

Background worth knowing

EasyABC was developed by Nils Liberg and released around 2014 on his own site. Since 2015 it has been maintained by Jan Wybren de Jong and Seymour Shlien and hosted on SourceForge, with improvements first posted to de Jong's GitHub and stable code released on SourceForge. It was originally written in Python 2 and has since been upgraded to run on Python 3.

One practical caution: the name "EasyABC" is also used by unrelated projects (an approximate Bayesian computation sampling scheme, and various children's alphabet-learning programs), so search results can be misleading.