I have realized I need some sort of virtual keyboard so that I can type different alphabets faster with UK keyboard layout.
I have been inspired by this website in my trilingual language journey.
Run with python
uv sync
python ./keyboard.py
Or roll your own binary
uv sync --all-extras --dev
uv run pyinstaller keyboard.spec
./dist/keyboard
Grab the binary from releases for your OS then rename it to virtual-keyboard
and move to /usr/local/bin
Create the virtual-keyboard.desktop
in /usr/share/applications
and copy the contents of this desktop file
- Do you plan to add more languages?
We can consider as long as we don't break existing languages, I will not support chinese or japanese due to the complexity it brings.
- Why Python?
Safest way to touch GTK and not become a sociopath even if python binding is not feasible and has no docs.
- Why GTK?
I use GNOME so I wanted to feel the native experience even though I hate every library GLib ecosystem produce in raw complex macro-maniac C
- Will you support GTK3 or Python 2.7?
No, please use up-to-date software
- Design the layout for buttons with label size and color
- Finish the text area input implementation with Gtk.Entry
- Add sub-menu to pick target languages
- Key Event presses follows target language mapping
- Port it to GTK 4