Інструкція з встановлення CyrFlip

Застосунок CyrFlip працює самостійно — ставить маркер розкладки на системний курсор і поруч із кареткою в будь-якому застосунку, транслітерує текст однією гарячою клавішею. Якщо ви використовуєте VS Code — необов'язкове розширення для VS Code додає той самий маркер точно біля каретки редактора Monaco. Нижче описано, як їх налаштувати.

Як пов'язані дві частини

Застосунок - це «мозок»: він знає активну розкладку. Розширення - лише поверхня для відображення в VS Code, бо VS Code малює власну каретку й не поспішає повідомляти її місцезнаходження зовнішньому світу.

  CyrFlip.exe (трей)               %LOCALAPPDATA%\CyrFlip\        Розширення VS Code
  визначає розкладку      ──пише──▶      layout.txt      ──стежить──▶  малює маркер
                                                                       біля каретки редактора

Застосунок має бути запущений, інакше розширенню нема що показувати - воно лише читає те, що публікує застосунок. Без VS Code ви все одно отримуєте значок у треї, маркер на курсорі миші та гарячу клавішу транслітерації всюди.

Крок 1 - встановіть і запустіть застосунок CyrFlip

Будь-який із варіантів:

Після запуску CyrFlip сидить у системному треї (без вікна). Значок показує активну розкладку. Правий клік відкриває історію буфера, її увімкнення та паузу, перемикачі індикатора й Налаштування. У налаштуваннях є гарячі клавіші, автозапуск, приватність і діагностика.

Увімкніть Start with Windows, щоб застосунок - а отже й маркер розкладки всюди, включно з VS Code - був доступний одразу після перезавантаження.

Історія буфера (необов'язково)

Історія буфера вимкнена, доки ви не ввімкнете її в меню трея. Вона зберігає недавні Unicode-тексти у невеликому вікні поверх інших. Клацніть запис, щоб використати його; важливі записи можна закріпити, а непотрібні видалити. Ctrl+Shift+F10 показує або ховає вікно.

Історія зберігається лише локально та захищена Windows DPAPI для вашого облікового запису. Захоплення можна призупинити, очистити історію або повністю вимкнути функцію в треї чи налаштуваннях.

Налаштування по вкладках

Правий клік по значку в треї та Налаштування... (або подвійний клік по значку). Будь-яка зміна застосовується одразу - нічого перезапускати чи зберігати не треба.

ВкладкаЩо там є
ЗагальніЗапуск разом із Windows; не давати комп'ютеру засинати та не блокувати екран (обидва запам'ятовуються - забутий увімкненим перемикач не дасть комп'ютеру заснути й після перезапуску, стежити за вашою батареєю CyrFlip не буде); мова інтерфейсу - 13 на вибір.
ІндикаториМаркер на курсорі миші (типово вимкнений), маркер біля каретки (увімкнений), компактна крапка замість літер, змінювати розкладку після перетворення тексту та синхронізувати CapsLock після виправлення регістру.
Гарячі клавішіЗагальний вимикач плюс окремі вимикач і сполучення для виправлення регістру та менеджера буфера - можна лишити тільки потрібне. Там само поступатися хоткеями віддаленому робочому столу: поки у фокусі вікно mstsc/msrdc, сполучення йде у віддалений сеанс - саме це потрібно, коли CyrFlip запущено на обох кінцях RDP. Тут само живе контекстне меню: його вимикач і акорд миші, що його відкриває.
Перетворення розкладокОдна таблиця, де зібрані всі сполучення, що перетворюють текст між розкладками. Рядок EN ⇄ RU на Ctrl+Shift+F12 створюється під час першого запуску, його можна змінити або видалити, як і будь-який інший; пар можна додати скільки завгодно, кожна зі своїм сполученням і своїм вимикачем.
Мови WindowsНалаштування введення самої Windows, без відкриття її панелі: встановлення, порядок і видалення розкладок (нічого не завантажується - розкладки вже входять до складу Windows), сполучення перебору (Alt+Shift, Ctrl+Shift, ` або вимкнено) та прямі сполучення на мову, які обробляє сама Windows, тому вони працюють і при закритому CyrFlip - і, на відміну від штатного вікна Windows, тут не лише Ctrl+Shift+цифра. Обидва розділи один раз зберігають стан «до CyrFlip» і вміють його повернути.
Буфер обмінуУвімкнення історії, пауза захоплення, чи показувати вікно менеджера під час запуску, його прозорість, пошук по всій історії та повне очищення.
ПерекладВимикач перекладу виділеного тексту (типово вимкнений), адреса сервера Ollama та модель, кнопки «Встановити Ollama», «Запустити Ollama», «Перевірити зв'язок» і «Завантажити модель», таблиця напрямків перекладу — кожен рядок зі своїм сполученням — і що робити з результатом: покласти в буфер обміну чи одразу вставити замість виділення.
Швидкий запускНеобов'язковий лаунчер сценаріїв — див. розділ нижче.
Про програмуВерсія збірки (той самий штамп YY.M.D.HHmm, що й у релізного ZIP, - одразу видно, чи ввійшло виправлення до вашої копії; збірка з Microsoft Store повідомляє про це окремо), посилання, звіт діагностики положення каретки та Надіслати логи автору.. - збирає логи CyrFlip в один архів і відкриває лист, який надсилаєте ви самі.

Зміна в «Мовах Windows» зазвичай діє одразу, але іноді Windows остаточно приймає її лише після виходу та повторного входу. Версія з Microsoft Store працює в контейнері, тому Windows може перенаправити такі записи в реєстр усередину пакета - вкладка попереджає про це й дає посилання на налаштування Windows.

Швидкий запуск (лаунчер сценаріїв, необов'язково)

Необов'язковий модуль, що увібрав у себе OneClickRunner, — один процес у треї замість двох. За замовчуванням вимкнений: доки не ввімкнете його в «Налаштування → Швидкий запуск», CyrFlip поводиться точно як раніше — ні зайвого пункту в треї, ні завдань у Jump List.

Переклад виділеного тексту (необов'язково)

Виділіть текст у будь-якому застосунку Windows, натисніть своє сполучення — і переклад з'явиться в невеликому вікні біля вказівника миші, дописуючись у міру того, як модель його пише. Працює через Ollama — безкоштовну програму, яку ви один раз встановлюєте на власний комп'ютер; CyrFlip її не містить, не має ні облікового запису, ні ключа. За замовчуванням модуль вимкнений: доки ви не ввімкнете його в «Налаштування → Переклад», жодне сполучення не зайняте, у треї нічого не додається, і CyrFlip не відкриває жодного мережевого з'єднання.

Чесно про обмеження: якість перекладу - це якість локальної моделі; перший переклад після холодного старту триває довше, бо модель спершу має завантажитися в пам'ять; сама Ollama разом із моделлю - це кілька гігабайтів, які ви завантажуєте один раз. З довгого виділення перекладаються перші 4000 символів, і вікно про це повідомляє.

Власне контекстне меню CyrFlip (необов'язково)

Усе, що CyrFlip уміє робити з виділенням, живе за гарячою клавішею. Цей модуль кладе ті самі команди на мишу: утримуйте Ctrl і клацніть правою кнопкою по виділенню — біля вказівника відкриється власне меню CyrFlip: «Копіювати / Вирізати / Вставити», далі ваші перетворення розкладок, виправлення регістру та рядки перекладу, далі «Швидкий запуск» і історія буфера, далі налаштування. Типово модуль вимкнений, і доки він вимкнений, мишачий хук узагалі не встановлюється: хук, що стоїть на шляху кожного руху миші в системі, не має існувати заради функції, якої ніхто не вмикав.

Модуль не читає текст і нічого не зберігає. Він стежить за своїм сполученням і, доки меню відкрите, за клацанням повз нього: меню, що належить фоновому процесу, не отримує клацання, яке має його закрити, тому CyrFlip закриває його сам.

Мови інтерфейсу

Інтерфейс доступний англійською, російською, українською, а також Deutsch, Italiano, Español, Français, Português, العربية, हिन्दी, বাংলা, اردو та 中文. Під час першого запуску береться мова інтерфейсу Windows, інакше English; для арабської та урду інтерфейс дзеркалиться справа наліво. Переклади мовами, якими автор не володіє, зроблені моделлю й не вичитані - виправлення вітаються на GitHub.

Крок 2 - встановіть розширення для VS Code (необов'язково)

Розширення для VS Code не є обов'язковим для роботи застосунку. Якщо ви не користуєтеся VS Code - пропустіть цей крок. Встановлюйте його лише якщо хочете маркер точно біля каретки всередині VS Code. Оберіть один спосіб:

Після встановлення виконайте Developer: Reload Window (Ctrl+Shift+P). Розширення запускається саме - налаштування не потрібне.

Крок 3 - користуйтеся разом

  1. Переконайтеся, що застосунок CyrFlip запущений (значок у треї показує код розкладки).
  2. Клацніть у редактор коду у VS Code і почніть друкувати. Перемкніть розкладку - кольоровий маркер EN/RU/UK слідує за кареткою, а в рядку стану видно ⌨ EN, ⌨ DE, ⌨ ZH - залежно від активної.
  3. Скрізь в інших місцях (інші застосунки, діалоги, робочий стіл) маркер їде на курсорі-«балці» миші та на значку в треї - усе від того самого застосунку.
  4. Набрали пів повідомлення не в тій розкладці, перш ніж глянути на екран? Виділіть і натисніть Ctrl+Shift+F12 - CyrFlip транслітерує на місці (QWERTY ↔ ЙЦУКЕН, EN ↔ RU). Кожен символ перемикається за скриптом, тому навіть змішаний EN + RU шедевр обробляється коректно. Працює в будь-якому застосунку, включно з VS Code.
  5. Потрібна інша мовна пара? Це Ctrl+Shift+F12 — просто рядок EN ⇄ RU, з якого починається таблиця Перетворення розкладок: усі такі сполучення зібрані в цій одній таблиці. У Налаштування → Мови Windows встановіть однією кнопкою 13 популярних мов або додайте будь-яку розкладку Windows, а потім додайте рядок для потрібної пари. Кожен рядок має власне сполучення й власний вимикач, перетворення йде за фізичними клавішами й працює в обидва боки (натисніть те саме сполучення, коли активна цільова розкладка пари, — і текст перетвориться назад).
  6. Випадково лишили CapsLock і отримали ПРИВІТ замість «Привіт»? Виділіть і натисніть Ctrl+Shift+F11 - CyrFlip поміняє ВЕЛИКІ ↔ малі літери на місці. Ця функція має власну налаштовувану гарячу клавішу, а необов'язковий перемикач Синхронізувати CapsLock після виправлення регістру ще й приведе саму клавішу у відповідність до виправленого тексту - вимкне, якщо текст закінчується малою літерою, і ввімкне, якщо великою, - щоб ви друкували далі саме так, як тепер написано.

Коли CapsLock увімкнено, навколо маркера EN/RU/UK з'являється тонка рамка - на курсорі миші, біля каретки та на значку в треї, щоб стан CapsLock було видно прямо там, де ви друкуєте.

Що означає колір маркера

Літери називають мову: US і Dvorak однаково читаються як EN, бо у значку завширшки кілька пікселів немає місця для «US-International». Колір називає розкладку: кожна з 25 розкладок 13 курованих мов має власний відтінок кольору своєї мови, тож російська завжди червона, але «Російська друкарська» - інший червоний. У компактному режимі крапки цей колір і є весь маркер.

Будь-яка інша розкладка - польська клавіатура, японський IME - зберігає літери своєї мови (PL, JA, TR) і отримує один нейтральний колір: роздати розрізнювані впізнавані кольори всім ~218 розкладкам Windows чесно неможливо.

МоваМаркерРозкладка клавіатуриКолір
АнглійськаENUS 00000409 #4DA3FF
ENUS-International 00020409 #0A58FF
ENUS-Dvorak 00010409 #C2E3F4
КитайськаZHChinese (Simplified) - US keyboard 00000804 #F3B33D
ZHChinese (Traditional) - US keyboard 00000404 #FAEAA7
ГіндіHIDevanagari - INSCRIPT 00000439 #E68742
HIHindi Traditional 00010439 #F0B88F
ІспанськаESSpanish 0000040A #F06E9C
ESLatin American 0000080A #E92D8F
ФранцузькаFRFrench 0000040C #8D7CF2
FRCanadian French 00001009 #633BEC
АрабськаARArabic (101) 00000401 #35C6B4
ARArabic (102) AZERTY 00020401 #8BE0C7
БенгальськаBNBangla - INSCRIPT 00000445 #C67CDA
ПортугальськаPTPortuguese (Brazil ABNT) 00000416 #46B978
PTPortuguese 00000816 #96C0A1
РосійськаRURussian 00000419 #FF5A5A
RURussian (Typewriter) 00010419 #FF1313
УрдуURUrdu 00000420 #E5A3C7
НімецькаDEGerman 00000407 #D8D14A
DEGerman (IBM) 00010407 #CED4A5
ІталійськаITItalian 00000410 #7FB2E5
ITItalian (142) 00010410 #6587B7
УкраїнськаUKUkrainian 00000422 #5AD86A
UKUkrainian (Enhanced) 00020422 #3FD039
усе іншеPL, JA, TR ..будь-яка інша розкладка Windows #9AA6B2

Маркер поруч із кареткою та біля курсора миші малюється напівпрозорим, тож текст під ним лишається читабельним; значок у треї та сам курсор I-beam лишаються непрозорими. Ті самі кольори використовує розширення для VS Code, тож розкладка виглядає в редакторі так само, як і всюди.

Де показується розкладка

ПоверхняХто показуєДе
Текстовий курсор миші (I-beam)ЗастосунокУсюди, де можна друкувати
Маркер поруч із кареткоюЗастосунокКласичні Win32 / UI-Automation поля
Маркер біля каретки редактораРозширенняРедактори коду VS Code (точно)
Індикатор у рядку стануРозширенняVS Code, у всьому вікні
Значок у треїЗастосунокЗавжди, в області сповіщень

Усередині VS Code webview-панелі та віджети - вбудований термінал, поля пошуку, панелі чату, палітра команд - не можуть містити декорації редактора, тому маркер біля каретки там не з'являється. Розкладку все одно показують індикатор у рядку стану та маркер на курсорі миші - а також власний маркер застосунку біля каретки, який у цих панелях якраз працює.

Двох маркерів одночасно не буває: доки ви працюєте в редакторі, маркер малює розширення, а застосунок прибирає свій. Розширення повідомляє про це файлом поруч із layout.txt, і ознака живе 5 секунд після останнього введення чи клацання в редакторі - тому в чаті, терміналі та полях пошуку маркер застосунку повертається. Якщо застосунок запущено без розширення, нічого не змінюється.

Усунення проблем