App-MusicTools - command line utilities for music composition and analysis


  $ atonal-util --ly findin --pitchset=5-25 c e g
  Ti(0)   c,e,g,a,ais
  T(4)    c,e,g,fis,a

  $ canonical --contrary --retrograde modal c f g e c
  c g, f, a, c

  $ export MIDI_EDITOR=timidity
  $ ly-fu --instrument=banjo c des ees c des bes c aes

  $ scalemogrifier --mode=mixolydian --transpose=fis
  fis gis ais b cis dis e fis'

  $ varionator '(I I6) (II IV II6 IV6) (V V7 III) I'

  $ vov --outputtmpl='<%{chord}> \t% %{vov}' I IV/IV V7/IV IV V7 I
  <c e g>       % I
  <b dis f>     % IV/IV
  <c e g b>     % V7/IV
  <f a c>       % IV
  <g b d f>     % V7
  <c e g>       % I


This distribution contains various command line utilities related to music composition and analysis, brief examples of which are shown in the "SYNOPSIS", above. Run perldoc on the command name for additional documentation on how to use each tool, as several of the programs have many, many more options than shown here.

The zsh-compdef directory of this distribution includes ZSH completion scripts for the command line utilities. Install these files to a ZSH $fpath directory, and follow the ZSH documentation on setting up tab completion.


As of Dec 2012, vov is a bit buggy for some cases, such as bVII, need to rework the triad building logic. For other bugs, send patches, as there are probably lots between my bad Perl and badder understanding of music theory.



Jeremy Mates, <>


Copyright (C) 2012-2013 by Jeremy Mates

This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself, either Perl version 5.16 or, at your option, any later version of Perl 5 you may have available.