Intereting Posts
Как правильно обработать событие «body» jquery, чтобы закрыть выпадающее меню Использование VIM в качестве редактора HTML Форма, которая делает переадресацию браузера при доступе посредством обычной формы или запроса Ajax – возможно ли это? getElementsByClassName () с двумя classами javascript – дубликаты многоуровневых раскрывающихся списков на значениях нажатия и возврата кнопок Как искать несколько столбцов в DataTables? Управление оправданием-содержимым: пробел между последней строкой Карусель jQuery. Как показывать только следующий или предыдущий элемент Полностью обоснованное горизонтальное меню с изображением и разделителями Amazon S3 и .htaccess В чем разница между & # x00A0; и & # 160 ;? Как правильно использовать h1 в HTML5 HTML-карусель с YouTube-видео останавливает ротацию до конца видео Получение возвращенного сообщения из веб-сокета в другом браузере Как выполнить javascript после загрузки файла?

Любой текстовый редактор WYSIWYG, который не использует HTML (contenteditable или designMode), a la (новые) Документы Google?

Помимо новых Документов Google, все другие широкоформатные текстовые редакторы WYSIWYG (ckeditor, tinymce, старые Документы Google), которые я видел, основаны на contenteditable или designMode. Я лично ненавижу использование этих редакторов. Это не займет много форматирования или копирования / вставки, прежде чем весь опыт превратится в упражнение в расстройстве. Возврат внезапно начинает получать двойное разнесение, непреднамеренное форматирование вводится с помощью вставки из других источников HTML, undo’s / redo полностью разрушены, форматирование становится мучительно трудным для управления и т. Д.

Я считаю, что это одна из причин того, что Google Docs представила свой гораздо более ограниченный механизм форматирования без HTML. Есть ли там библиотека с открытым исходным кодом, которая обеспечивает нечто подобное? Заранее спасибо.

Вы можете начать с редактора Ace (ранее Bespin и Skywriter). Он нацелен на редактирование кода, поэтому ему не хватает форматирования и других функций, но вы можете найти полезное kernel ​​функциональности для создания богатого текстового редактора.

В действии: http://ajaxorg.github.com/ace/build/editor.html

Код: https://github.com/ajaxorg/ace

Обновление: Как указывает @theazureshadow, текущий редактор не использует canvas как я изначально сообщал. Беспин использовал canvas прежде чем он слился с Ace, который использует DOM. Подглядывая кратко под капотом, похоже, что они не используют designMode или designMode . (Существует который следует за курсором вокруг и охватывает и divs, чтобы показать текст – кучу пользовательских JS, чтобы связать все это вместе.

Из ace.ajax.org> История:

Bespin начался как часть Mozilla Labs и был основан на , тогда как Ace является компонентом Editor в Cloud9 IDE и использует DOM для рендеринга.

Вы правы: это намного лучше.

Есть ли библиотека с открытым исходным кодом, которая предоставляет [редактор документов, который не использует браузер для обработки редактируемого текста, вместо этого использует настраиваемую поверхность редактирования и механизм компоновки, полностью на JavaScript].

Сомнительно.

Во-первых, редактор дублируется «Kix». Это не не HTML, но он не использует contentEditable, потому что он сосет для того, что они делают, как вы упомянули. То, что он делает, сложно и громоздко, и я уверен, что для его создания потребовалось немало усилий.

Тем не менее, почему Google с открытым исходным кодом Kix? Это подрывает их усилия, чтобы стать вашим центром документов, и это будет означать, что они должны выполнить кучу дополнительной работы, чтобы отделить Kix от остальных документов Google таким образом, чтобы это не мешало интегрировать. Выгода? Не так много, поскольку проекты с открытым исходным кодом, спонсируемые Google, вряд ли получат поддержку в форме участия разработчиков в ее улучшении.

Что касается тех, кто создает библиотеку для этого, я сомневаюсь, что это произойдет в open source. Обычно проекты с открытым исходным кодом, которые являются значительным начинанием, являются спонсорами университета или компании, и это вряд ли в этом случае по причинам выше. Опять же, если у разработчика есть зуд, нет никакой информации, куда он мог бы пойти …

Есть HTE , к сожалению, он медленный и пропускает множество базовых функций выбора.