-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
候補入力時にカーソルを使えるようにする #156
Comments
https://wayland.app/protocols/input-method-unstable-v1 |
まずはanchor==cursor、つまり範囲選択のないsurrounding text対応として実装を始めたい。連文節変換をしないSKKにおいて範囲変更や中途の範囲のみを対象とする操作が意味を成す仕様が考えられないため、anchor!=cursorの範囲選択は対応しない方針。 第一段階はskkstateをきちんとcontextと分離し、state内部操作がcontextから行なわれないようにリファクタリング、contextからの無茶な操作でstateの状態が矛盾を起こさないようにする。 まずは実現可能かどうかわからないが想定する仕様として
surrounding textのカーソル位置を変えること自体に非対応か、かな変換の中途で文字を変えたい需要を想定できないので変えた時に変換前の文字列をそのまま入力したことにして対処か、あるいはかな変換前の文字列を消してから対処か。
cursor位置が末尾でない場合に大文字を入力した時には
|
▼ぞうご【ここ】
この【】内でカーソルが使えると嬉しい。
現在の仕様
fcitx-cskkではlibskkを使ったものと同じ挙動
IMEからはカーソル位置は変更されていない状態でpreeditの文字列が変わるだけなので、カーソル位置は常に】の後
新変換候補入力時にカーソル移動をしようとしても、無視される。
例として辞書内に「ぺ」の変換候補がない時|をIMEのカーソルとすると
P e space a a a -> ▼ぺ【あああ】|
P e space a a a leftarrow -> ▼ぺ【あああ】|
また、新変換候補入力に限らず、
A i leftarrow -> ▽あい|
と、カーソル位置は常に未確定文字列の後となっている。
できるのかどうかわからないが
IME側でのカーソル位置を変更できそうであれば
P e space a a a -> ▼ぺ【あああ|】
P e space a a a leftarrow -> ▼ぺ【ああ|あ】
のようにpreedit文字列の中にカーソルを移動させたい。
参考例としてはWindowsのSKKFEPでは
A i leftarrow -> ▽あ|い
のようにカーソル位置が動く。
fcitx および ibusどちらでもそのような想定がないならば新変換候補入力の時のみ独自にカーソルをもつしかない。
The text was updated successfully, but these errors were encountered: