= Sketches

* http://sketches.rubyforge.org/
* http://github.com/postmodern/sketches/
* Postmodern (postmodern.mod3 at gmail.com)


Sketches allows you to create and edit Ruby code from the comfort of your
editor, while having it safely reloaded in IRB whenever changes to the
code are saved.


* Spawn an editor of your choosing from IRB.
* Automatically reload your code when it changes.
* Run the editor in the background.
* Run the editor in a new terminal.
* Use a custom editor command.
* Use a custom terminal command.
* Use a custom temp directory to store sketches in.


* Local variables cannot be loaded. Ruby defines local variables as local
to the file which they were originally defined in.
* No support for Inotify or FSevent _yet_. It would be nice to attempt to
use Inotify or FSevent bindings, if available, for efficient polling of
sketch files.


$ sudo gem install sketches

Then require sketches in your <tt>.irbrc</tt> file:

require 'sketches'

Sketches can be configured to use a custom editor command:

Sketches.config :editor => 'gvim'

Sketches can also be configured to run in a new terminal:

Sketches.config :editor => 'vim',
:background => true,
:terminal => lambda { |cmd|
"xterm -fg gray -bg black -e #cmdcmd.dump"


* Open a new sketch:


* Open a new named sketch:

sketch :foo

* Open a sketch from an existing file:

sketch_from 'path/to/bar.rb'

* Reopen an existing sketch:

sketch 2

sketch :foo

* List all sketches:


* Name a sketch:

name_sketch 2, :foo

* Save a sketch to an alternant location:

save_sketch :foo, 'path/to/foo.rb'


Sketches - A Ruby library for live programming and code reloading.

Copyright (c) 2009 Hal Brodigan (postmodern.mod3 at gmail.com)

This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA