Behave.js is a lightweight library for adding IDE style behaviors to plain text areas, making it much more enjoyable to write code in.