Skip to content

mikaelnousiainen/vexabc

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

VexABC

ABC notation parser and renderer for VexFlow

Copyright (c) 2012 Mikael Nousiainen

See VexABC in action and try it

VexABC features

  • VexABC is a work in progress, which means that many features of the ABC music standard are incomplete or completely missing
  • Many of the basic constructs and features of the ABC music standard are already working
    • See the VexABC tests to find out features implemented and working
  • Currently, only one voice and a single stave can be used
    • Multi-voice and multi-stave (system) support will be implemented eventually
  • The current VexFlow API imposes some restrictions on how notation can be rendered
    • Clefs, key signatures and time signatures can be rendered only at the beginning of a measure
    • Voltas (e.g. variant endings) can only begin and end on measure boundaries
    • Slurs are not supported
    • Grace notes are not supported
    • Some ABC decorations can not be rendered yet
  • VexABC aims to implement ABC music standard 2.1

VexABC dependencies

Main dependencies:

  • VexFlow (latest GIT master branch) to render the notation
  • PEG.js (latest GIT master branch) for parsing ABC notation text
  • jQuery 1.8

Test dependencies:

  • QUnit 1.10.0 for running unit tests
  • Twitter Bootstrap 2.2 is used in the web pages for tests

What is ABC notation?

ABC notation is a text-based music notation system.

What is VexFlow?

VexFlow is an open-source web-based music notation rendering API.

What is PEG.js?

PEG.js is a simple parser generator for JavaScript.

VexABC license

Mozilla Public License, version 2.0 - http://www.mozilla.org/MPL/2.0/