* Package name : fcitx5-telebit
Version : 2.13.0
Upstream Author : Nguyen Nam Son <sonnn.uct@gmail.com>
* URL : https://github.com/sonnam0904/telebit
* License : MIT
Programming Lang: C++
Description : Vietnamese Telex/VNI input method for Fcitx 5
Telebit types Vietnamese with the Telex and VNI layouts on top of Fcitx 5, so
it works in GTK, Qt, Electron and terminal applications alike, and inside
Flatpak and Snap sandboxes.
Alongside the input method it ships two front ends of the same diagnostics —
the telebit-setup window and the `telebit doctor` command — which report
whether the input method actually reaches applications: the environment the
graphical session handed out, which compositor is running, and what each
sandbox can see.
Two properties are worth calling out because they are what the engine was
built around.
Mixed English/Vietnamese typing needs no mode switch. After applying Telex,
the engine checks the result against the Vietnamese onset and rime tables and
restores the literal keystrokes when the result is not a valid Vietnamese
syllable. So "person", "cheese", "toolbox" and "employee" type as themselves
while "tieengs" still becomes "tiếng" — there is no EN/VI toggle key to press
and no separate key to strip diacritics. The check is structural rather than a
word list, so the few English words that happen to spell a valid Vietnamese
syllable ("data" -> "dât") still convert; doubling the Telex modifier key
escapes those.
It is also small and stays out of the way. The engine runs in-process with no
candidate window, no helper daemon and no runtime dictionary file: the syllable
tables are compiled in. The addon is about 350 kB and links no GUI toolkit
(for comparison, fcitx5-unikey links Qt 5 and fcitx5-bamboo's engine is about
1.7 MB); measured throughput is about 0.1 microseconds per keystroke on an
ordinary x86-64 desktop, including the syllable check. The GTK 4 dependency
belongs to the separate telebit-setup window, not to the input method.
Beyond those, what it adds over the existing two engines:
* diagnostics that see inside Flatpak and Snap sandboxes, which is where a
missing input-method module usually hides and which fcitx5-diagnose cannot
inspect;
* user-defined macros (abbreviation expansion at word boundaries);
* modern Vietnamese tone placement (hoà/khoẻ/thuý) as an option;
* per-application preedit behaviour, discovered as applications are used.
I intend to maintain it within the Debian Input Method Team, which maintains
fcitx5 and the other fcitx5-* engines.