Zerkalo (Зеркало - Mirror) is a lightweight macOS daemon written in Rust that provides system-wide real-time phonetic transliteration from Latin to Cyrillic.
- System-wide: Works in all macOS applications (Browsers, IDEs, Messaging apps).
- Zero Latency: Direct interception via Quartz Event Tap for maximum responsiveness.
- Intelligent Phonetic Mapping: Supports single characters and complex sequences (e.g.,
sh->ш,shch->щ). - Full Control: Instantly enable or disable transliteration with a keyboard shortcut.
- Lightweight: Minimal CPU and memory usage.
- Ensure you have Rust installed on your Mac.
- Clone the repository and enter the directory.
- Run the installation script:
./install.sh
To function, Zerkalo requires Accessibility access to intercept keyboard input:
- Go to System Settings > Privacy & Security > Accessibility.
- Add and enable your Terminal (or the application that will launch Zerkalo).
Launch the program via the run script:
./run.sh- Enable / Disable:
Cmd+Alt+C - Quit:
Ctrl+Cin the terminal.
The mapping follows standard phonetic logic. For more details, see TRANSLATION_TABLE.md.
Examples:
p->пr->рi->иv->вe->еt->т- Result:
privet->привет