Полупространство в редакторе django CKEditor

Я разрабатываю веб-сайт, для которого требуется продвинутый текстовый редактор для персидского языка, и я использовал CKEditor. Когда я копирую текст из Microsoft Word и вставляю его в CKEditor, он не вставляет все полупробелы правильно.

Например, если в тексте статьи 10 полупробелов или кто-то называет их полупробелами, то после вставки в CKEditor он может правильно отобразить только 7 полупробелов, а остальные пропустить. Сталкивались ли вы с подобной проблемой? Каково ваше мнение?

Эта проблема вызвана сущностями, которые Microsoft Word использует для отображения полупробела (semi-space). Когда пользователи нажимают CTRL + -, чтобы добавить полупробел в текст, Microsoft Word может добавить его, но когда пользователи копируют и вставляют текст в django-ckeditor==6.7.1, он не может обнаружить полупробел, поэтому пишет его так:

متن نمونه با نیم فاصله در کلمه میخواهم

Для написания полупробела в Microsoft Word существует еще одно сочетание клавиш, а именно CTRL + SHIFT + 2. Если вы воспользуетесь этим сочетанием клавиш, django-ckeditor==6.7.1 обнаружит полупробел в вашем персидском контенте:

متن نمونه با نیم فاصله در کلمه می‌خواهم

Этот ярлык трудно нажать, когда вы набираете текст на персидском языке, поэтому я установил на свой компьютер программу AutoHotkey с сайта AutoHotkey. Когда вы скачаете и установите ее, щелкните правой кнопкой мыши и в появившейся панели опций нажмите на New, а в появившейся подпанели нажмите на AutoHotkey Script, как на этой фотографии:

Add AutoHotkey script

Затем напишите в нем этот код, чтобы использовать ярлык ALT + C вместо CTRL + SHIFT + 2:

; Define new shortcut for ZWNJ (Alt + C)
!c::Send {U+200C}

Он должен выглядеть следующим образом:

content of AutoHotkey script

После этого перезапустите AutoHotkey, измените язык клавиатуры на английский и дважды щелкните на своем скрипте на рабочем столе или в любой другой директории. Теперь вы можете использовать сочетание клавиш ALT + C для набора полупробела в Word, который можно сохранить в django-ckeditor==6.7.1.

Кроме того, чтобы отредактировать сценарий, вы можете щелкнуть правой кнопкой мыши и выбрать опцию Edit Script.

Вернуться на верх