/supercollider-tmbundle

TextMate bundle for supercollider.app

Primary LanguageSuperCollider

A SuperCollider bundle for TextMate.

Requirements

A recent build of SC (>= 3.3 alpha)

TextMate, with terminal usage enabled (see Help → Terminal Usage in TM menu)

Installation

With git

mkdir -p ~/Library/Application\ Support/TextMate/Bundles

cd ~/Library/Application\ Support/TextMate/Bundles

git clone git://github.com/rfwatson/supercollider-tmbundle.git "SuperCollider.tmbundle"

osascript -e 'tell app "TextMate" to reload bundles'

In Textmate menu: Bundles > SuperCollider > Complete installation

Without git

mkdir -p ~/Library/Application\ Support/TextMate/Bundles

cd ~/Library/Application\ Support/TextMate/Bundles

wget http://github.com/rfwatson/supercollider-tmbundle/tarball/master

tar zxf rfwatson-supercollider-tmbundle*.tar.gz

rm rfwatson-supercollider-tmbundle*.tar.gz

mv rfwatson-supercollider-tmbundle* SuperCollider.tmbundle

osascript -e 'tell app "TextMate" to reload bundles'

In Textmate menu: Bundles > SuperCollider > Complete installation

Key controls

All key controls can be reprogrammed in Bundles editor.

  • ENTER
    Execute current selection/line
  • CTRL-PERIOD
    Stop server
  • CMD-k
    recompile class library
  • CMD-d
    Help
  • CMD-j
    Open class definition
  • CMD-y
    Implementations of
  • CMD-Y
    References to
  • CMD-?
    Post window to front
  • CMD-SHIFT-C
    Clear post window
  • ALT-CTRL-SHIFT-S
    Switch to SuperCollider bundle


plus various snippets – check the bundle.

Notes

TextMate does not handle .rtf documents. So .rtf files will have to be copy-and-pasted into .sc text files. This is not a problem for classes.

Some controls (browse class file, etc) depend upon TM terminal command (see Help → Terminal Usage in TM menu)

CMD-period cannot be programmed in TextMate, so to stop audio output use CTRL-period instead

I’ve extracted the underlying code to allow control of SC.app from any command line application.
sc3ctrl on github

TODO

Might repackage this as a quark .. ?

Contact me

Via github