Why TinyMCE over CKeditor? (And is it possible to choose my own)
  • Hello there,

    I'm very interested in setting up a booktype install on my server, and the demo has pleased me so far, except for one thing: the editor.

    I've been using both TinyMCE and CKeditor as a front-end user and a developer, and I've always enjoyed CKeditor more than TinyMCE.

    I don't intend to start a flamewar between those two. Rather, I've come to ask: is TinyMCE deeply integrated with Booktype? Are you using API elements that are specific to TinyMCE and that can't be found in CKeditor? How easy would it be to swap one for another? (or even better: allow users to choose their favorite one, although this could create some weird stuff HTML-wise).

    I'll keep exploring the demo nevertheless, but I'm curious to hear what a Booktype developer has to say about this.

    Have a nice day.


    PS: and here I am writing this post with CLEditor... huhuhu

    Post edited by Jean-Loup Didelot at 2012-02-18 07:20:53
  • 7 Comments sorted by
  • hi,

    If you install our own you can use any editor you like - the only issues you will encounter are:
    1. you will loose some formatting widgets that Tiny has and Ck (or other) doesn't (but I guess you know this)
    2. you will lose the custom widgets we made for Booktype (messaging widget, chapter linking widget). Neither are essential for creating content but you will loose their functionality (which we think is very nice).
    3. you will need to work out how to upload images and sync this with the db since our tinymce image plugin integrates with the db backend

    Its not a show stopper. You could just pull out the current editor and it would work with another wysiwyg but image uploadiing would need to be looked at. If you solved this we would love to include the code so that others can also swap out the editor should they wish to use another.


  • You can't just like that switch editors. There are parts of JavaScript code in the Booktype editor that assume you are using TinyMCE. Specifically this is part where TinyMCE is initialized, when content is set and when content is fetched from the editor. Booktype does all this dynamically from JavaScript while it is in the Booktype editor and every wysiwyg does it in different way. With xinha for instance we had problems because it was not easy to figure out when xinha editor finished with initialization and when it was ok to set content from JavaScript (and not put it in textarea field like on the static page).

    To make it work, i should make plugable system for 3rd party editor. Just to support events like "initialize editor", "kill editor", "set content", "get content". Then, each editor would implement own methods for doing specific operations. Until then, you have to change /site_static/js/editor.js  and booki/editor/templates/editor/edit_init.html files. Also, some of the plugins should be changed.
  • Have a go JLD, see how far you can get. If you get it working then send us a patch or create a git branch
  • Hello again,

    Thanks for your answers. Having quick-to-respond developers certainly makes Booktype feel like a project that will go far.

    However, I myself can't dedicate time to this project as I'm working on many others (some of which are on the verge of dying). I was mainly inquiring about the choice to go with TinyMCE, and also wondering if there was an easy way to swap it out. But it seems it is tightly integrated after-all, so I'll just go with it and adapt.

    Thank you again for those helpful answers and sorry I can't do more.

    Have a nice day.

  • Thanks JLD..If someone solves this issue i will be sure to make sure you know about it

  • I have been using and developing for TinyMCE for a few years now. But it just does not feel to be the perfect fit for my projects anymore. klunky UI, broken in recent webkit builds[...]?

    The other day I watched @bergie 's (http://bergie.iki.fi/) talk about createjs at my favourite Berlin based user group. CreateJS seems to be an awesome inplace state of the art WYSIWYG editor.

    createJS can be integrated by "annotating" your views/templates/html with RDFa (u remember the semantic web ;)?) it also supports live populating of model-changes(sync) in the view/editor through backbone.js.
    - true multi author realtime editing not too far away?

    I have only be looking at Booktype recently and still have no deeper understanding of it, not even have a running dev environment yet. py/django seems challenging but solid and powerful. looking forward to discover the python universe.

    let me know what you think about createJS
  • Vote Up0Vote Down adamadam
    Posts: 88Member
    CreateJS is one of many editors starting to fill this field. Possibly you already know of Aloha Editor (http://aloha-editor.org/) and Mercury (http://jejacks0n.github.com/mercury/).

    We have looked into all of these and thinking about new interfaces. The great thing about Booktype is that you can build other editing interfaces and still take advantages of all the other features. So you can build an interface for you way of working.

    We are also looking into concurrent editing with this in mind.