History: aloha-editor
Source of version: 7 (current)
Copy to clipboard
!Items mentioned on 12/12/12 irc with deliminator
!!easier integration
Looks like most up to date branch of aloha editor is "aloha-modular" branch
[https://github.com/alohaeditor/Aloha-Editor/issues/737|relevant issue]
[https://github.com/alohaeditor/Aloha-Editor/blob/dev-modular/src/demo/boilerplate/index-modular.html|an example]
*Essentially, you just include the script tags. You don't need to know anything about requirejs any more
*requirejs is still works
*Need to use jqueryui 1.9 or up
*Plugin files should be compiled into aloha.js, and should not have to be loaded lazily
*You compile it by customizing the build profile in build/aloha/build-profile-common-extra.js
*[http://aloha-editor.org/guides/develop_aloha.html|directions on how to build] 4.3 Customized Builds
**The simplest thing is to copy the existing build profile somewhere in your own project
**Then edit it and only include the plugins that you need to keep the size as small as possible
**you also have to adapt the appDir url in the build profile and also startFile and endFile
**otherwise the paths are incorrect since the build profile is in a different folder
!!How does one use custom language files with plugins?
*i18n should just work
**If you have a german browser, the german i18n files are downloaded by requirejs
**if you have an english browser, the english files are downloaded
**you can also set the locale option in the build profile to compile a specific language into the output file
**i18n.t()
**You can use the requirejs i18n loader plugin
*We have that implemented, but I believe we use a function tr('Words') to do our translations
*For our plugins we just execute tr() throughout the plugin
!!Line breaks
* We need a way to be able to use __p__ OR __br__ tags depending on the situation. If we updated the code to know when to use one over the other, there is no problems with line heights. __needs confirmed__
*http://aloha-editor.org/guides/functional_description.htmlI
*There is no out-of-the box functionality to just flip a switch and have brs inserted - pull requests welcome
*Location in code: markup.js preProcessKeyStrokes and processShiftEnter and processEnter
*It should end up in engine.js with execCommand('insertlinebreak') and execCommand('insertparagraph') for both behviours
!!contenteditable="false"
*It should propagate to all descendants of the editable, until contenteditable="true" is encountered, which again should propagate to all descendants until contenteeditable="false" is encountered
*in aloha you would solve the problem of having blocks of non-editable content inside an editable with the block plugin
*http://aloha-editor.org/guides/plugin_block.html
*[http://aloha-editor.org/builds/stable/alohaeditor-0.22.6/aloha/demo/block/|The second link has a simple demo with a few blocks]
**in the demo you can insert custom "tags" which have been implemented with the block plugin
*At wikidocs.com The toolbar is completely custom but with static HTML embedded in the page so, we don't use Aloha's out-of-the-box UI at all
**The code we use is available on the dev-ui-a-la-carte branch
**It's relatively simple
**we override the ui-plugin and some components modules via the requirejs path mechanism and hook them to the static html via class attributes
**The alacarte branch depends on bootstrap and jquery ui as well but only for the autocomplete plugin which could be migrated to bootstrap typeahead
!!On the horizon for Aloha Editor
*dev-modular, dev-ui-a-la-carte, accessibility, undo/redo
!!We'd need a special license?
http://www.gnu.org/licenses/gpl-faq.html#AllCompatibility
*States LGPL v2.1 is "OK: Convey project under GPLv2 or later [7]" - We need an exception to use in releases
! Related links
* https://drupal.org/node/1809702
* http://buytaert.net/spark-update-wysiwyg-editing-for-drupal