ورود به محتوا

Расширение для браузера

از veselcraft, 1 دسامبر 2018

پست‌ها: 4

زبان: Русский

veselcraft (نمایش مشخصات) 1 دسامبر 2018،‏ 14:03:46

Добрый день. Ищу расширение для браузера, позволяющее писать буквы с диакритическими знаками с помощью X-системы. На этом сайте уже есть JS скрипт позволяющий такое проделывать, но вытащить его пока не сумел.

Серёга (نمایش مشخصات) 5 دسامبر 2018،‏ 22:04:23

Я например до сих пор не знаю где брать буквы с крышечками. В основном копирую в буфер каждую букву и вставляю на место. Держу под рукой Ĉ ĉ ŭ ĝ Ĵ ĵ ŝ. Но как вариант можно печатать здесь в какой-нибудь ветке или вставить текст с cx, jx, ux, gx , а потом искать в тексте данные диграфы и стирать x и тут же печатать его снова.

sergejm (نمایش مشخصات) 6 دسامبر 2018،‏ 20:52:56

Можно еще использовать Андроид - там есть эсперанто-клавиатура.

А написать скрипт особого труда не представляет.
Нужно подписаться на событие change, в нем сравнивать старый и новый текст в поле ввода, учитывая положение курсора (старое и новое). События keydown и keyup в новых версиях Андроида не работают, так что если хотите чтобы работало в Андроиде, их лучше не использовать.
Еще стоит использовать таймер - быстрое нажатие cx преобразуется в ĉ, а если была пауза - нет.
Остается проблема что делать при paste - заменять во вставляемом тексте cx на ĉ или нет.

sergejm (نمایش مشخصات) 7 دسامبر 2018،‏ 16:34:30

Если нужно заменить все cx на ĉ и т.д.:
text = text.replace('cx','ĉ').replace('CX','Ĉ').replace('gx','ĝ').replace('GX','Ĝ').replace('hx','ĥ').replace('HX','Ĥ')
.replace('jx','ĵ').replace('JX','Ĵ').replace('sx','ŝ').replace('SX','Ŝ').replace('ux','ŭ').replace('UX','Ŭ');

بازگشت به بالا