Документація · Де працює

Lang Switcher у браузері, Word і Telegram: як працює заміна

У звичайних вікнах програма виділяє набране слово й друкує заміну поверх нього однією дією: так автодоповнення не з’їдає літер. Буфера обміну вона тоді не чіпає.

Як працює заміна

У звичайних вікнах (браузер, Word, Telegram, Блокнот) програма виділяє набране слово й друкує заміну поверх виділення: виділене замінюється однією дією. Для виділення вона натискає Shift+← по разу на літеру, як їх рахує Windows, коли рухає курсор, тому літера зі знаками над нею чи під нею — це одне натискання. Потім програма перемикає розкладку вікна.

Стирати по літері було б простіше, але в програмах з автодоповненням і автозаміною один Backspace може стерти не літеру, а ціле підставлене слово.

Буфера обміну програма тоді не чіпає. Він потрібен лише для виділеного вами тексту: програма копіює його, перекодовує й вставляє, а потім повертає в буфер те, що там було.

Браузер

  • Адресний рядок. Список підказок, який розкривається під час набору, слова не обриває: програма відрізняє таку зміну фокуса від вашого переходу в інше поле.
  • Поле пароля. Натискання навмисно не запам’ятовуються, а Pause відповідає глухим стуком.
  • Скрипт сторінки, який сам переводить курсор у наступне поле (поля коду підтвердження), програма від набору не відрізняє: виправлення одразу після такого переходу може зачепити нове поле.

Word і Outlook

  • Автозаміна Word не заважає: слово виділяється й замінюється цілком.
  • Розкладка сама повернулася назад? Це налаштування Office, яке автоматично перемикає клавіатуру відповідно до мови тексту навколо: Office змінює розкладку сам, уже після заміни. Вимкніть його в самому Office.

Telegram

Telegram Desktop обробляє введення по-своєму: знак, надісланий одним натисканням без відпускання, він повторює, тож замість «привіт» вийшло б «пппппп». Тому кожен знак заміни програма надсилає натисканням і відпусканням, і в Telegram Desktop слово з’являється цілим.

Редактори коду

VS Code й подібні редактори після Ctrl+C без виділення копіюють цілий рядок. Якщо натиснути гарячу клавішу, не набравши слова, програма сприйме цей рядок як виділений текст і вставить його перекодовану копію. Заважає? Зніміть галочку «Конвертувати виділений текст» у розділі «Загальні» налаштувань.

Якщо щось не так

  • Програма читає клавіатуру в обхід Windows (так роблять багато ігор): додайте її до винятків.
  • Літери губляться або замінюються неправильно: у файлі налаштувань можна задати метод заміни вручну, [replacement] method = backspace або selection, і паузу між подіями [replacement] inter_event_delay_ms. Це крайній випадок: auto підходить майже всім.
  • Напишіть автору: меню значка → «Написати автору…». Перейдіть у те вікно, де не вийшло, і майстер запише ім’я програми сам.

Запитання й проблемиу GitHub Issues ↗ або на пошту send.me@panda-pishet-kod.dev