Age | Commit message (Collapse) | Author |
|
終了 is more appropriate then 出口 in this context.
|
|
* exit if we get eof on kbdtap
* do not nuke the line if we restore a kanji selection without okurigana
* guard against unfortunate scheduling, the dictthread needs to get
through all it can before the keythread processes more. In typical use,
the processing was fast enough to never notice this condition but writing
out a large set of input can trigger it.
|
|
we were not handling multi null delimted messages
with one read. This makes us a bit more uniform to
other handling on the system as well ... something about clever
code.
|
|
Revisiting the man page example and README from the
original ktrans there was some descripency on how
to handle punction marks and special characters.
Notably 。(.) and 、(,) need special casing. If we
have anything in the buffer we need to tack on
these characters as an Okuri tail and avoid the actual
punction from entering the Kanji buffer.
Newlines were previously modified to be taken as a completion
if there was runes in the buffer. This has been backed out,
instead Shift + Space can serve this role via kbmap should they
prefer (and as is done in the jp kbmap). Instead we treat newlines
as hints to reset the buffer.
There was also a bug in where after cycling through all options the
original hiragana was not printed back. This has been corrected.
The max number of candidates has been bumped to 32 and moved to an enum.
This does nearly double our resident memory size, but we reguarly had
matches exceed this limit. A better solution is slated.
The man page now makes an attempt to explain the rules around Okuri and
Joshi input modes.
|
|
Graphical display shows current candidate list.
|
|
This also does some slight style normalization
and removes the Msg struct in favor of just
using a plain char array. The previous kbdsink
fprint calls were incorrect and was not passing upon
the null bytes.
|
|
Multiple readers eat each other's lunch, and it makes more
sense to limit use to one 'pipeline' then just one reader.
This also brings back the 'focus' message from kbdtap used
by ktrans to reset its line buffers when the user switches
windows. An event file was considered, but deemed harmful
to the artwork. To paraphrase an old excuse found in the code:
"rio just isn't structured for that. Apologies."
|
|
we no longer serve 9p
|
|
Add telex Vietnamese input.
|
|
The kbdtap is now given as the first argument instead.
The use of stdio allows for multiple taps to be chained
together in something like:
; </dev/kbdtap ktrans | progB | progC >/dev/kbdtap
|
|
|
|
Rewrite of ktrans to act as an overlay to kbdfs.
Move map files outside of the binary in to /lib/ktrans
and get our dictionaries out of /lib while we're at it.
Use \n as an alias for ctrl-\ for first lookup, use ^w
to clear okurigana input. This also in general changes
the logic to never us to 'swallow' a character and always echo
them out, using backspaces for cleaning us up.
|
|
Tidy up the hash interface to make cleanup
a bit more explicit vs non cleanup.
|
|
This consolidates jisho and map lookups
to use the same structure and removes
the old jisho code.
|
|
|