HTML Canvas based and syntax highlighted text editor