My custom extensions to the Extempore programming environment.
A bunch of scheme abstractions that I developed in order to create Extempore musical algorithms more efficiently and more naturally.
No documentation yet, but various examples of what the extensions look like are available on The Musical Code and its counterpart YouTube channel.
NOTE: The extensions have been developed to support MIDI composition / livecoding primarily.
Files
init_beatsmetro+beat utilsinit_bentobento plugin utilsinit_lisplisp and scheme utilsinit_makesutils to generate chord structuresinit_midihelpers for playing midi instrumentsinit_mixerutils to work with Ableton Live mixerinit_playplay midi functionsinit_playpplay patterns midi functionsinit_symbolsnotes symbolsinit_tempoutils for tempo manipulation
After cloning the repo, there are a couple of settings at the top of LOAD_ALL.xtm that should be updated.
(define *extensions-path*
"/your/path/to/xtm-extensions/init/")
(define *DEFAULT_MIDI_DEVICE_NAME*
"IAC Driver Extempore Bus")Explanation:
*extensions-path*: your local filepath where the extensions files have been saved*DEFAULT_MIDI_DEVICE_NAME*: the main MIDI device you are using ( as displayed with(pm_print_devices))
Extempore allows to pass a startup script at runtime, e.g.:
./extempore --run {YOUR-FILE}.xtm
The extensions root folder includes a helper file LOAD_ALL.xtm that can be used as a startup script, so to to load up all the extensions in the init folder.
Hence you can set things up like this in your bash_profile:
export EXTEMPORE_RUNTIME="/your/extempore/runtime/installation/"
export EXTEMPORE_EXTENSIONS="/your/path/to/these/extensions/"
alias xtm-plus="cd $EXTEMPORE_RUNTIME;./extempore --frames 256 --run '$EXTEMPORE_EXTENSIONS'LOAD_ALL.xtm"The backups folder (in the TMC repo) contains snippets and keybindings files for VSCode, as well as other potentially reusable bits and pieces.
- Extempore language project
- Unofficial Extempore Functions Explorer
- The Musical Code and its counterpart YouTube channel
- My livecoding blog
- Livecoding community: TOPLAP
- 2023-11-24: VScode snippets moved to backups folder.