Комментарии 16
Кстати как у ShareJS с RitchEdit? Или из коробки он работает только с plaintext?
Ходят слухи, что где-то в дебрях Share.js google groups было много споров по поводу можно ли реализовать Rich Text Editor на json типе данных. Вроде как решили, что нужен специальный тип данных для этого. Пока еще никто не запилил.
Что-то я не вижу проблемы в формировании JSON документа для Rich редактора. Ну то есть, вот мы же можем все это отобразить в виде DOM, а значит ни что не мешает нам это представить в виде JSON.
Пожалуйста, не вводите людей в заблуждение.
Там давно сделана интеграция с AceEditor и какими-то другими редакторами и JSON тип данных тоже сделан. github.com/share/ottypes/tree/master/lib вот все типы данных которые Джозеф успел реализовать. rich text в 0.6 из коробки работает.
Вот примеры github.com/share/ShareJS/tree/master/prototype/public
Ткните пальцем, плиз, где там Rich Text, там вроде везде textarea, а это plaintext? (В AceEditor, кстати, по сути plain text, разукрашиваемый регэкспами)
Вы же пишете в нем только код (без всякой разметки). АйсЭдитор сам разукрашивает ваш код — вы не можете сделать сами что-то жирным, что-то наклонным, применить к абзацу стили.

Суля по всему, это вы вводите народ в заблуждение :)
Про эйсэдитор согласен.
JSON-тип для реализации Rich Text необязателен кмк, это более прямой путь для реализации мапа «rich текст -> HTML», но не единственный. Я могу использовать привычный язык разметки HTML для того, чтобы оформлять plain текст. Например, можно взять какой-нибудь wysiwig редактор, которых много, которые на выходе дают HTML и этого вообщем-то достаточно для работы с rich text.
> Например, можно взять какой-нибудь wysiwig редактор, которых много, которые на выходе дают HTML и этого вообщем-то достаточно для работы с rich text.

Это только при первом приближении так кажется. Дьявол в мелочах. Как-то нужно будет обрабатывать коллизии, если, например, два пользователя пометили пересекающийся текст несовместимыми тегами и т.д.
Задачу можно свести к задаче без коллизий, например ограничить множество тегов только совместимыми. Но в целом я понимаю, что это путь ограничений и не тру вей.
кстати несовместимости надо будет решать и в JSON типе, они там автоматически сами не разрешатся. То есть в любом случае вам придется решать как вы относитесь к пересекающимся диапазонам текста.
ShareJS работает не только с plaintext, у него есть JSON API. То есть в теории ты можешь сформировать json документ, который будет олицетворять твой Rich элемент.
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.