Решил остаться на SCEditor
В последнее время много ломал голову по переходу с SCEditor на Quill. И понял, что нормально решить этот вопрос не получится — есть BBCode-теги, которые перевести на чистый HTML с корректной обработкой в Quill так просто не получится: это quote, math и video. Поэтому решил спросить DeepSeek, есть ли другие WYSIWIG-редакторы с поддержкой BBCode. Оказалось, что DeepSeek считает SCEditor лучшим вариантом, а единственная более-менее внятная альтернатива — TinyMCE, но тот — слишком тяжёлый.
После этого зашёл на сайт SCEditor посмотреть, не вышло ли обновлений за последнее время. Оказалось, что вышли, и я его обновил (пока только локально). Обратил внимание на то, что на главной странице там используется другой набор значков. Стал разбираться, как поставить их у себя (и вообще модифицировать тему). Перечитал почти всю документацию, и в итоге вроде бы нашёл решение тех проблем, из-за которых изначально и возникло желание уходить с SCEditor на Quill.
В итоге принял решение, что оставлю IntB на CKEditor, а поддержку Quill оставлю только в редакторе записей для блога. Да и то подумаю, т.к. у Quill тоже есть некоторые неприятные особенности, которые проявляются при вводе текста с мобильника. Кроме того, используя Quill, сложнее сделать так, чтобы поле ввода сохранялось и для Но вот ни один из наборов значков в SCEditor мне категорически не понравился: в Quill они смотрелись гораздо лучше. Поэтому я решил взять значки оттуда, и подключить к SCEditor.
С этим я провозился весь остаток дня. Вылезло несколько проблем: во-первых, не все значки у них совпадают, часть пришлось оставить из темы material как наиболее похожие. Во-вторых, значки были разных размеров: в SCKditorе — 22x22, а в Qull — 18x18, и пришлось придумать довольно костыльное решение. В-третьих, они хранятся по-разному — в одном случае в виде массива JavaScript (причём без SVG-заголовков), в другом — в виде отдельных SVG-файлов, и много времени ушло на то, чтобы перекопировать всё необходимое. (Эх, надо было, наверное, автоматизировать процесс.) Ну и в конце долго возился с настройкой CSS-стилей, чтобы всё выглядело единообразно и естественно.
Ещё была мысль сделать возможность загрузки файлов в base64 (с извлечением в отдельный файл на этапе предварительной обработки сообщения), так как в обоих редакторах уже есть поддержка этого. Это решило бы проблему удобной вставки картинок. Когда-то мне это предлагал то ли MadTechGuy, то ли Aksion, но тогда я это решение счёл слишком уж костыльным. Но с другой стороны, это казалось возможностью быстро закрыть вопрос с картинками, поэтому уже решил было делать. Но изучая документацию, нашёл и более нормальное решение, которое, скорее всего, в ближайшие дни реализую.
А ещё это решение (остаться на SCEditor) даёт наконец-то возможность реализовать быструю вставку ссылок по частичному названию темы или URL, тем более, что серверная часть для этого уже готова. Об этом я мечтаю ещё чуть ли не со времён 2.x, но прежде откладывал до перехода на Quill.