hypothesis/h — pull request #1478 by RawKStar77 (2014-09-08 23:54:41+00:00)
Title: Introduce TinyMCE WYSIWYG Editor

You can try this out here: https://tinymce.dokku.hypothes.is/
An alternative PR featuring a zero-dependency Markdown editor is coming shortly.

Both editors could use a bit of polish with regard to CSS, but I (and probably the CSS master @aron) can do that once we pick an approach. Rather than the look of the editors (which can be easily be changed), there are other things I feel we should discuss: specifically, _our commitment to Markdown._

Now, before we have tons of users (and lots of annotations) is probably a good time to consider this particular aspect.

### TinyMCE
There are quite a few WSYIWYG editors out there, but I picked TinyMCE over the others for the following reasons:
+ It is highly customizable. We can style it and configure it however we want and could potentially do so differently for different groups.
+ It has a large install base, which provides a number of advantages:
+ There are a large number of plugins available.
+ Plugins that we write to support Open Annotation goals will be available to many other platforms.
+ It is well tested in browsers and on Mobile.
+ It is in active development.
+ LGPL license which is permissive enough to allow use in commercial software.
+ If something better comes around, we can ditch TinyMCE and switch to that, but for the meantime it provides a lot of functionality we need for not a lot of developer time.
+ WYSIWIG UI that many potential users will be more familiar with.
+ Paste support (users can copy and paste existing formatted text [e.g. from Word] into the editor and it will retain that formating [to some degree, if they are using crazy fonts that won't transfer])
+ It is the smallest in it's class in terms of dependency size (455 KB with plugins STILL BIG), half as large as some other more full featured editors (such as the [CK Editor](http://ckeditor.com/)). It is only a bit larger than the [lepture markdown editor](https://github.com/lepture/editor) (about 300KB), but is much more powerful. I did look into the Guardians new scribe editor and concluded that while it could be an interesting project to watch develop, it's still a bit in early stages, poorly documented (at the moment), and still fairly large (almost 400KB when you include the plugins).

### User stories
_(Feel free to add your own)_

Joel is a history professor who has most things he's written in Microsoft word files. When preparing a long response, he still likes to write in Microsoft word. He likes that with Hypothes.is he can paste formatted text from Word into the text editor and it will retain it's formating. He has been taking excerpts from his book about the founding of the constitution and using them to correct factual errors he's encountered on the internet.

Joe is a student in a MOOC who uses Hypothes.is for class discussion. He's not extremely good with computers, but can use them. He doesn't pay much attention to the editor he's using because it operates in a way he's come to expect from engaging with other websites in the past. He appreciates not having to learn anything new aside from what he's reading about and discussing in the class.

Jane is a savy researcher and ok programmer who is using Hypothes.is as a research tool. Specifically she needs to be able to annotate with tables. When she learns of the Hypothes.is project she sees it's perfect for her needs, but the editor is missing a feature she needs. She is releaved to find that Hypothes.is uses TinyMCE and *all* she has to change is a configuration file.