It's All Text! Editor Daemon
Ruby JavaScript CoffeeScript
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.
bin Sorted out the require statements Sep 28, 2012
extensions Merged all my various experimentation Sep 27, 2012
lib Further cleaned up sys_pref Mar 15, 2013
spec Further cleaned up sys_pref Mar 15, 2013
.coveralls.yml Added more CI bling Mar 15, 2013
.gitignore Added more CI bling Mar 15, 2013
.rspec Added .rspec defaults Sep 28, 2012
.travis.yml Added more CI bling Mar 15, 2013
Gemfile Updated source in Gemfile (https) Mar 9, 2013
Makefile Rakefile for tests. May 2, 2011 Added more CI bling Mar 15, 2013
Rakefile typo in travis rake task Sep 28, 2012 Merged all my various experimentation Sep 27, 2012
iated.gemspec Further cleaned up sys_pref Mar 15, 2013

It's All Text! Editor Daemon

  • Build Status
  • Dependencies
  • Coverage Status

This gem is the core of the It's All Text! Editor Daemon.

The IAT Editor Daemon is a restful web server that allows you to open text data in the editor of your choice.


This is still being designed and developed! You probably don't want to play with it (YET)!!!

Bugs and Issues

See the github Issue tracker

Developer Quickstart

  1. bundle install
  2. rake spec


  • Ruby (preferrably 1.9.2+, but 1.8.7 should work)


The API is documented in the features/extension_*.feature files. You can run cucumber to read them.

Further documentation is availble by running rake docs or visiting Iated on

Open preferences

GET /preferences requires "token".

Opens a web-page displaying the preferences. Note, there are other URLs that Iated supports for modifying the preferences.

GET /preferences/set-editor require "token".

This opens a dialog on the system running Iated to choose the editor.

Example sessions.

The letter b: is the browser's requests. s: is the server's response. Side-effects are in square braces ([]).

Initial authentication

b: GET /hello
s: ok [a popup with the secret is shown]
b: POST /hello with data: secret=NNNN

Editing session

b: POST /edit text=<textarea data> url=<someurl> id=<textarea-id>
s: <sid>
b: GET /edit/<sid>
s: nochange
b: GET /edit/<sid>
s: <next textarea data>

Iated Dialogs

This is a list of dialogs that Iated needs to be able to generate:

  • Set Editor -- The dialog to select an editor.
  • Auth Code -- A dialog to show the auth-code for entering in the browser.
  • Select Port -- A dialog to select the port to run on for the first time or if changing.

Future notes

At some point I'm going to need concurrancy. I'm thinking jetlang (a java library) is the right way to go. It's Erlang style concurrancy, so it'll scale well and should be safe without having to worry about joins, etc. There is a ruby gem called jretlang

Some info here:


Iated is licensed under the MIT License. A LICENSE file should have been included with this code.