Package: sheetmusic
Compose music in your spreadsheet.How toInstallingInstall lilypond, fluidsynth, gnumeric, maybe something else. Thenpip2 install sheetmusic
sheetmusic-installer
gnumericSheetmusic 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 useSheetmusic 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, runimport sheetmusic
sheetmusic.init()
sheetmusic.play('B2:C2')
sheetmusic.play('J1:M33', 'A', 4, 4, 200) # to change tempoFunction referenceSheetmusic 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) -> integerBarsSheetmusic ignores borders, but I recommend that you place
horizontal borders where you would place bars in ordinary
sheet music.Slurred and tied notesNotes are slurred within italicized regions.DevelopmentHelpful linkshttp://www.ha19.no/gnumeric/http://www.hep.by/gnu/gnumeric/sect-extending-python-writing.shtmlhttps://help.gnome.org/users/gnumeric/stable/sect-extending-python.html.enhttp://www.bruunisejs.dk/PythonHacks/rstFiles/500%20Notes%20on%20spreadsheets%20etc.htmlThis requires Python 2 because mingus requires Python 2.http://code.google.com/p/mingus/wiki/tutorialExtraLilypondhttp://code.google.com/p/mingus/wiki/tutorialMidiFileOut