add focused unit and map checks
This commit is contained in:
24
README.md
24
README.md
@@ -7,6 +7,7 @@ Inspired by 9front's ktrans. Threads communicate via CSP channels.
|
||||
## Dependencies
|
||||
|
||||
- plan9port
|
||||
- Python 3 (for generated-map checks)
|
||||
- dbus-1
|
||||
- wayland-client, libxkbcommon (for Wayland support)
|
||||
- gtk+-3.0 (optional, for GTK IM module)
|
||||
@@ -17,6 +18,21 @@ Inspired by 9front's ktrans. Threads communicate via CSP channels.
|
||||
cd xim && make # XIM adapter
|
||||
cd gtk && make docker && make install # GTK IM module
|
||||
|
||||
Unit tests use the sibling `cutest` Git repository as a submodule and do not
|
||||
require the Wayland, D-Bus, GTK, or X11 development packages. Repository
|
||||
mirrors must provide the same sibling; initialize it after cloning with
|
||||
`git submodule update --init`:
|
||||
|
||||
make check # generated map + unit tests
|
||||
make test TESTARGS=hangul # filtered unit tests only
|
||||
make verify-map # generated-map check only
|
||||
|
||||
The suite covers the fixed-size UTF-8 string, hash table, trie fixtures,
|
||||
Japanese/Hangul/Telex state transitions, dictionary candidates, engine
|
||||
selection state, and the byte-stream IPC path. Tests use explicit case tables,
|
||||
boundary values, and small regressions for repaired core contracts. GUI
|
||||
protocol stacks are outside this suite and require separate integration checks.
|
||||
|
||||
## Run
|
||||
|
||||
./strans map font &
|
||||
@@ -60,10 +76,10 @@ Tab or Enter to commit.
|
||||
|
||||
Threads communicate via CSP channels:
|
||||
|
||||
- [imthread](strans.c#L271): keystroke processing, transliteration
|
||||
- [dictthread](dict.c#L38): dictionary lookup
|
||||
- [drawthread](win.c#L133): preedit window rendering
|
||||
- [srvthread](srv.c#L42): IPC via unix socket
|
||||
- [imthread](strans.c): keystroke processing, transliteration
|
||||
- [dictthread](dict.c): dictionary lookup
|
||||
- [drawthread](win.c): preedit window rendering
|
||||
- [srvthread](srv.c): IPC via unix socket
|
||||
- [ibusthread](ibus.c): IBus D-Bus endpoint for GLFW/kitty
|
||||
- [waylandthread](wayland.c): Wayland input-method-v2 + virtual-keyboard-v1
|
||||
|
||||
|
||||
Reference in New Issue
Block a user