Project

livecode

0.0
Repository is archived
No commit activity in last 3 years
No release in over 3 years
A toolkit for livecoding using Ruby and TextMate on OSX
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Runtime

 Project Readme

Livecode: Ruby toolkit for TextMate/OSX¶ ↑

Live coding (sometimes known as ‘interactive programming’, ‘on-the-fly programming’, ‘just in time programming’) is the name given to the process of writing software in realtime as part of a performance. Historically, similar techniques were used to produce early computer art, but recently it has been explored as a more rigorous alternative to laptop DJs who, live coders often feel, lack the charisma and pizzazz of musicians performing live.

Generally, this practice stages a more general approach: one of interactive programming, of writing (parts of) programs while they run. Traditionally most computer music programs have tended toward the old write/compile/run model which evolved when computers were much less powerful. This approach has locked out code-level innovation by people whose programming skills are more modest. Some programs have gradually integrated real-time controllers and gesturing (for example, MIDI-driven software synthesis and parameter control). Until recently, however, the musician/composer rarely had the capability of real-time modification of program code itself.“ - en.wikipedia.org/wiki/Livecoding#Live_coding

Livecode is a toolkit for livecoding with Ruby using TextMate on OSX. At the core, it’s a server/client setup that’ll let you run and modify code in realtime.

The server and TextMate bundle is functional, I’m currently working on porting over the MIDI code. Watch this space.

Installation¶ ↑

gem install livecode

The TextMate bundle should be updated every time you install a new version:

livecode update_textmate

Usage¶ ↑

Once you’re set up, you can fire up the server in a terminal window:

livecode run

(Alternatively, you could press CMD+B in TextMate to launch it as a background daemon.)

Open a new TextMate document and set the language to “Ruby Livecode”. You can now press CMD+E to run either the selected text or the current line on the server. Hack away!

Multiplayer livecoding¶ ↑

Instead of running your own server, you can connect to a remote session by running:

livecode connect drb://somewhere.else:123456

When you’re done, disconnect with:

livecode disconnect

Making your own client¶ ↑

..is fairly simple:

require 'livecode_server'
client = LivecodeServer::Client.new

You can now send code to the server as strings:

client.run 'message = "Hello world!"'
client.run 'puts message'