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_beats
metro+beat utilsinit_bento
bento plugin utilsinit_lisp
lisp and scheme utilsinit_makes
utils to generate chord structuresinit_midi
helpers for playing midi instrumentsinit_mixer
utils to work with Ableton Live mixerinit_play
play midi functionsinit_playp
play patterns midi functionsinit_symbols
notes symbolsinit_tempo
utils 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 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.