Skip to main content

Functions to be loaded by the Gnumeric Sheetmusic plugin

Project description

Compose music in your spreadsheet.

How to

Installing

Install lilypond, fluidsynth, gnumeric, maybe something else. Then

pip2 install sheetmusic
sheetmusic-installer
gnumeric

Sheetmusic is a Gnumeric plugin. The first time you use it, you might need to enable the plugin; go to the “Tools” menu, click “Plug-ins…”, and then make sure that “Sheetmusic” is checked.

How to use

Sheetmusic is a bunch of spreadsheet functions that manipulate notes. These notes must be written in scientific notation; for example, middle C is written as “C4”.

Some functions return more than one output cell (like chords). To run spreadsheet functions with multiple output cells, hit control + enter rather than just enter.

To play the music, run

import sheetmusic
sheetmusic.init()
sheetmusic.play('B2:C2')
sheetmusic.play('J1:M33', 'A', 4, 4, 200) # to change tempo

Function reference

Sheetmusic provides the following functions inside the Spreadsheet.

Chords and arpeggios:

I7_arpeggio(base note)
I7_chord(base note)
II7_arpeggio(base note)
II7_chord(base note)
III7_arpeggio(base note)
III7_chord(base note)
III_arpeggio(base note)
III_chord(base note)
II_arpeggio(base note)
II_chord(base note)
IV7_arpeggio(base note)
IV7_chord(base note)
IV_arpeggio(base note)
IV_chord(base note)
I_arpeggio(base note)
I_chord(base note)
V7_arpeggio(base note)
V7_chord(base note)
VI7_arpeggio(base note)
VI7_chord(base note)
VII7_arpeggio(base note)
VII7_chord(base note)
VII_arpeggio(base note)
VII_chord(base note)
VI_arpeggio(base note)
VI_chord(base note)
V_arpeggio(base note)
V_chord(base note)
augmented_major_seventh_arpeggio(base note)
augmented_major_seventh_chord(base note)
augmented_minor_seventh_arpeggio(base note)
augmented_minor_seventh_chord(base note)
augmented_triad_arpeggio(base note)
augmented_triad_chord(base note)
diminished_seventh_arpeggio(base note)
diminished_seventh_chord(base note)
diminished_triad_arpeggio(base note)
diminished_triad_chord(base note)
dominant7_arpeggio(base note)
dominant7_chord(base note)
dominant_arpeggio(base note)
dominant_chord(base note)
dominant_flat_five_arpeggio(base note)
dominant_flat_five_chord(base note)
dominant_flat_ninth_arpeggio(base note)
dominant_flat_ninth_chord(base note)
dominant_ninth_arpeggio(base note)
dominant_ninth_chord(base note)
dominant_seventh_arpeggio(base note)
dominant_seventh_chord(base note)
dominant_sharp_ninth_arpeggio(base note)
dominant_sharp_ninth_chord(base note)
dominant_sixth_arpeggio(base note)
dominant_sixth_chord(base note)
dominant_thirteenth_arpeggio(base note)
dominant_thirteenth_chord(base note)
eleventh_arpeggio(base note)
eleventh_chord(base note)
first_inversion_arpeggio(base note)
first_inversion_chord(base note)
half_diminished_seventh_arpeggio(base note)
half_diminished_seventh_chord(base note)
hendrix_chord_arpeggio(base note)
hendrix_chord_chord(base note)
lydian_dominant_seventh_arpeggio(base note)
lydian_dominant_seventh_chord(base note)
major_ninth_arpeggio(base note)
major_ninth_chord(base note)
major_seventh_arpeggio(base note)
major_seventh_chord(base note)
major_sixth_arpeggio(base note)
major_sixth_chord(base note)
major_thirteenth_arpeggio(base note)
major_thirteenth_chord(base note)
major_triad_arpeggio(base note)
major_triad_chord(base note)
mediant7_arpeggio(base note)
mediant7_chord(base note)
mediant_arpeggio(base note)
mediant_chord(base note)
minor_eleventh_arpeggio(base note)
minor_eleventh_chord(base note)
minor_major_seventh_arpeggio(base note)
minor_major_seventh_chord(base note)
minor_ninth_arpeggio(base note)
minor_ninth_chord(base note)
minor_seventh_arpeggio(base note)
minor_seventh_chord(base note)
minor_seventh_flat_five_arpeggio(base note)
minor_seventh_flat_five_chord(base note)
minor_sixth_arpeggio(base note)
minor_sixth_chord(base note)
minor_thirteenth_arpeggio(base note)
minor_thirteenth_chord(base note)
minor_triad_arpeggio(base note)
minor_triad_chord(base note)
second_inversion_arpeggio(base note)
second_inversion_chord(base note)
seventh_arpeggio(base note)
seventh_chord(base note)
sixth_ninth_arpeggio(base note)
sixth_ninth_chord(base note)
subdominant7_arpeggio(base note)
subdominant7_chord(base note)
subdominant_arpeggio(base note)
subdominant_chord(base note)
submediant7_arpeggio(base note)
submediant7_chord(base note)
submediant_arpeggio(base note)
submediant_chord(base note)
subtonic7_arpeggio(base note)
subtonic7_chord(base note)
subtonic_arpeggio(base note)
subtonic_chord(base note)
supertonic7_arpeggio(base note)
supertonic7_chord(base note)
supertonic_arpeggio(base note)
supertonic_chord(base note)
suspended_fourth_ninth_arpeggio(base note)
suspended_fourth_ninth_chord(base note)
suspended_fourth_triad_arpeggio(base note)
suspended_fourth_triad_chord(base note)
suspended_second_triad_arpeggio(base note)
suspended_second_triad_chord(base note)
suspended_seventh_arpeggio(base note)
suspended_seventh_chord(base note)
suspended_triad_arpeggio(base note)
suspended_triad_chord(base note)
third_inversion_arpeggio(base note)
third_inversion_chord(base note)
tonic7_arpeggio(base note)
tonic7_chord(base note)
tonic_arpeggio(base note)
tonic_chord(base note)
triad_arpeggio(base note)
triad_chord(base note)

Scales:

aeolian_scale(base note)
chromatic_scale(base note)
diatonic_scale(base note)
diminished_scale(base note)
dorian_scale(base note)
harmonic_minor_scale(base note)
ionian_scale(base note)
locrian_scale(base note)
lydian_scale(base note)
melodic_minor_scale(base note)
mixolydian_scale(base note)
natural_minor_scale(base note)
phrygian_scale(base note)
whole_note_scale(base note)

Intervals:

unison_interval(base note, key)
major_unison_interval(base note)
minor_unison_interval(base note)
augmented_unison_interval(base note)
second_interval(base note, key)
major_second_interval(base note)
minor_second_interval(base note)
third_interval(base note, key)
major_third_interval(base note)
minor_third_interval(base note)
fourth_interval(base note, key)
major_fourth_interval(base note)
minor_fourth_interval(base note)
perfect_fourth_interval(base note)
fifth_interval(base note, key)
major_fifth_interval(base note)
minor_fifth_interval(base note)
perfect_fifth_interval(base note)
sixth_interval(base note, key)
major_sixth_interval(base note)
minor_sixth_interval(base note)
seventh_interval(base note, key)
major_seventh_interval(base note)
minor_seventh_interval(base note)
interval(major|minor, interval:[0-7], base note)
octave_down(base note)
octave_up(base note)

Other:

from_integer(integer) -> scientific note
progression(progression, base note) -> [[scientific note]]
rep(range, each) -> another range
to_integer(scientific note) -> integer

Bars

Sheetmusic ignores borders, but I recommend that you place horizontal borders where you would place bars in ordinary sheet music.

Slurred and tied notes

Notes are slurred within italicized regions.

Development

Helpful links

This requires Python 2 because mingus requires Python 2.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sheetmusic-0.0.4.tar.gz (8.1 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page