Showing posts tagged with: TextMate Show all posts
Posted Wednesday, 20 June 2012
Stephen Lumenta's SC TextMate Bundle
Some of the keyboard combinations I was using in my TextMate / SC bundle weren't working, so on the advice of users in the forum I decided to switch to a new fork.
Stephen Lumenta's fork is much more up-to-date, appears to be being actively supported, and has a number of improvements to the master.
![]() |
| More TextMate setup |
It worked in the end, but I thought I'd post a few pointers to anyone else trying set this up or use it:
Setup issues: select the right branch
If you are using SC >= 3.5, make sure you use the qt_35 branch. That means switching the top-left corner and then clicking the zip download link. As of this writing all the git clone commands point to the < 3.5 version.
When you have downloaded the file and unzipped it, you can rename it to scmate.tmbundle and place it in the TextMate bundles directory so that it matches how it would have looked if you'd cloned it:
~/Library/Application Support/TextMate/Bundles/scmate.tmbundle
(Where the tilde ~ represents your User's home directory)
Setup issues: Use the default SC directory
Make sure SuperCollider is installed in the default app location. I had SC installed inside a subdirectory, and although (as the readme suggests) you can fiddle with paths it's just easier to use the default location:
~/Applications/SuperCollider.app
Complete the installation
Remember to complete the installation by launching TextMate and selecting this menu option:
Bundles > SuperCollider > SCLang > Complete Installation
This command copies some .sc linkage files into a SuperCollider startup precompilation directory. When you next start SC, it should find and parse these files, and include the results in the SC runtime.
Usage
To actually use the bundle:
- If you haven't already done so, launch SC and complete the installation
- Create a new TextMate window and select SuperCollider from the drop-down at the bottom
- Select the following menu item, or use
Cmd-F1(you may have to actually pressCmd-Fn-F1):
Bundles > SuperCollider > Launch SCLang
You should see a Terminal window pop up and show you the usual SC startup script. You should also notice sclang starting up as a program in your app menu, called from the Terminal.
With this bundle, all your communication will be with the Terminal rather than the SC post window. If (like me) you like the internal / localhost GUIs, you can launch those via code:
Server.local.makeGui;
Server.internal.makeGui;
They will respond in the usual way.
- Type and execute a few commands in TextMate to make sure everything is working (keyboard commands at the bottom of this post):
s.boot;"test".postln;{SinOsc.ar}.play;
At this point, you are good to go.
A clean exit
To cleanly exit sclang, use Ctrl-C in the Terminal window. This will kill the sclang process and you should notice the sclang app icon disappear from your app menu.
If you forget to kill sclang in this way, the next time you try to launch SC from TextMate it will tell you there is already an sclang process. To kill that process, just quit sclang from the app menu, and then remove the temp files via the Terminal:
rm /tmp/sclang*
You should then be able to boot sclang from the Bundles menu as usual.
Terminal choice
If you want to use a Terminal other than the default one, you will need to make an edit to this file:
~/Library/Application Support/TextMate/Bundles
/scmate.tmbundle/Commands/Launch SCLang.tmCommand
You can change the referenced .app package to be your favourite terminal app.
Common shortcuts
The bundle shortcut keys can be accessed via the TextMate Bundles menu, but here are a few basic ones to get you going - mixed with some useful TextMate shortcuts for use with SC:
Shift-Cmd-B | Select everything within the enclosing brackets / braces |
Shift-Enter | Evaluate |
Ctrl-. | Stop all playback |
Cmd-D | Open help for item at text cursor (no need to fully highlight) |
Cmd-J | Open source code for item at text cursor |
Ctrl-Shift-D | Duplicate |
Cmd-[ and Cmd-] | Indent left / right (select code block first) |
- Jaaga Residency (17)
- Jaaga (15)
- I-Park Residency (12)
- Process (12)
- V4W (10)
- Personal Development (10)
- Installation (10)
- VVVV (9)
- Field Research (8)
- Freemote Threshold (7)
- SuperCollider (7)
- Long (7)
- Freemote (7)
- Reflections (6)
- Audio / Visual (6)
- CAC Residency (6)
- Arduino (5)
- Tutorial (5)
- Influence (5)
- Max/MSP (5)
- Jaaga Sound and Lights (4)
- openFrameworks (4)
- Motor (4)
- Kinect (4)
- Projection Mapping (4)
- Portable Projection (4)
- Gravity (4)
- michael fairfax (3)
- Roman Moshensky (3)
- Rocks (3)
- Jee Soo Shin (3)
- Land Art (3)
- Picture This (2)
- Phenomenology (2)
- Git (2)
- Measure (2)
- Projection Bombing (2)
- Presentation (2)
- Creative Context (2)
- Natural Textures (2)
- Tess Martin (2)
- Scott Wilson (2)
- Alpha-Ville (2)
- Review (2)
- Untitled (Picture This) (2)
- Ralph Crispino (2)
- Cosm (2)
- Mac (2)
- Boaz Aharonovitch (2)
- C# (2)
- Mobile Projection (2)
- Memo Akten (2)
- Judith Stein (2)
- Generative Art (2)
- 3D (2)
All posts
May 2013
October 2012
September 2012
- Residency Begins at CAC Troy
- Installation Sketch at Open Studios
- Roman Moshensky's Mirror World
- Open Studios at I-Park
- Perception as a Creative Process
August 2012
- The I-Park Graveyard
- Scoping Out the Land
- Residency Begins at I-Park
- Residency at Contemporary Artists Center
July 2012
June 2012
- Stephen Lumenta's SC TextMate Bundle
- Adding OF Addons (ofxSuperCollider)
- Setting up SuperCollider with TextMate
- Switching to MacBook Pro
- QuickRef for SuperCollider
May 2012
- Getting Started with SuperCollider
- Getting Started with OpenFrameworks
- Overtones, Harmonics and Additive Synthesis
- Visit to Cold Spring
April 2012
January 2012
December 2011
- The Final Exhibition
- Playing with Particles
- Responsive Granular Sound
- Kinecting to the Network
- First Working Day
- Designs for Freemote
- Freemote Utrecht
- Untitled - Picture This (2011)
October 2011
- The Wider Context?
- Trading Time for Space
- Talk at Goldsmiths Digital Studios
- Intro to Marius Watz
- Practical Guide to Generative Art
September 2011
August 2011
June 2011
May 2011
April 2011
- Cosm, Collision Detection and Volume
- Vector-Base Amplitude Panning
- Intuition, and Direction of the Project
- Reflections: What is Jaaga?
- Going Further with Ambisonics
- Introduction to Ambisonics
- Surface (2010)
March 2011
- Servo Motors and Transistors
- Spinning a 12V DC Motor
- Spinning a 5V DC Motor
- First Week at Jaaga
- Presentation Style
- Beginning the Jaaga Fellowship
January 2011
November 2010
October 2010
September 2010
