glamp/shellington — pull request #2 by EricChiang (2014-01-21 15:43:01+00:00)
Title: Session tracking and mutliline statements add

Session tracking now enables multiple clients at a time. The same client may also use R and python on different tabs with no effect (can't use same language twice as server gets confused).

Startup (no need to specify language):
```
shellington
```

Visit localhost:3000/R for R, localhost:3000/python for python.

Commands are now processed language independently to enable multi-line statements. Python checks for ':' and '\', R checks for parentheses balance. Currently working for R and python. Will attempt Ruby next.

Multi-line Fibonacci function in R:
![shellington_r_functions](https://f.cloud.github.com/assets/2342749/1964654/6171d4ae-82b0-11e3-8b18-513d997eb436.png)

Multi-line for loop and extended line in python
![shellington_python_multiline](https://f.cloud.github.com/assets/2342749/1964655/65ebebfa-82b0-11e3-81f2-27ed54a3de7d.png)

Multi-line Fibonacci function in python
![shellington_python_funcs](https://f.cloud.github.com/assets/2342749/1964661/680b3968-82b0-11e3-9984-d7aa3e862193.png)

BUGS (looking for suggestions):
- Initial prompt no longer appears because prompts are handled by the underlying node.js code rather than jqconsole. This is to allow prompt variation for multi-line commands. Will try to get jqconsole to print a single prompt when it is started.
- jqconsole has no vertical scroll (with mult-line code this becomes a problem very quickly).

TODO:
- Rework CURL (probably will go through a different POST request)