masterspammer (masterspammer) wrote,
masterspammer
masterspammer

Category:
Про редактор я писал, что там многое легче с нуля написать, чем поправить.
Для примера - ввод текста.
При вводе пробела и ещё некоторых символов выполняется проверка на автозамену. Например, ввели вы traditionalyl (пальцы запутались), значит нужно заменить на traditionally; аналогично - поправить кавычки, длинное тире, выполнить преобразование markdown-разметки в форматирование. А иногда ввод символа ведёт к удалению - если выделено что-то. Иногда - к большому удалению.
Удаление символа может вообще перелопатить изрядный кусок документа - склеить элементы, удалить внешний контейнер - удалили последний элемент списка - весь список долой.
тоже весело - в зависимости от предпочтений (для чего у DocumentManipulator настройки) или делает перевод строки или новый абзац или ещё один такой же элемент, (пункт списка) или вообще какой-то другой элемент (например, в списке определений после элемента заголовка будет элемент описания). Тут же, хотя и не только тут, возможно полезно следить, чтобы в документе не было текста на верхнем уровне вне абзацев.

По мере написания (вот это всё выше уже написано) становится понятно, что обработать все нажатия клавиш самому во славу Бахуса в общем-то не сложно. От
contenteditable остаётся всего-то пользы, что мигающий курсор. Что же даёт "самодельный" ввод? Например, поддержку языка, которого в системе нет и/или экранную клавиатуру - актуально для чужих и общественных компьютеров.
Tags: javascript, ХочетсяСтранного
Subscribe

  • Если б я был фантаст

    ..то на вопрос "зачем вы рассуждаете, как это могло бы быть", я б ответил - "затем, что я не имею знать, как это было".

  • (no subject)

    "Печально быть человеком, но нет сил перестать" - к этому выражению часто добавляется вопрос - а кем стать тогда - нечеловеком,…

  • Наши руки не для скуки

    (но они немного крюки, да) За время стройки и около того несколько отошёл от того, чтоб делать руками мелкие вещи. Проблема осознанна, кое-что…

  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments