skkeleton icon indicating copy to clipboard operation
skkeleton copied to clipboard

keymapでhenkanFirstを登録した際、登録したキーを含む仮名入力が上手く発火しないことがある

Open Osmium1008 opened this issue 5 months ago • 1 comments

d2d7126 において、気になる挙動があったため報告させていただきます。

再現手順

  1. input の keymap において <space> (等)に henkanFirst を割り当てる。
  2. kanaTable に対して
  • z<space> ,
  • zab,
  • <space> といったテーブルを設定する。
  1. skkeletonを有効化し、z と打鍵する。

期待する挙動

  (全角スペース)が入力される。

現在の挙動

ab という文字列が入力される。

最小構成

vimrc

set runtimepath+=~/vim_plugins/denops.vim
set runtimepath+=~/vim_plugins/skkeleton

imap <C-j> <Plug>(skkeleton-enable)

autocmd User skkeleton-initialize-pre call skkeleton#config({"globalDictionaries": [["~/vim_plugins/SKK-JISYO.L", "euc-jp"]]})

autocmd User skkeleton-initialize-pre call skkeleton#register_kanatable('rom', {'z': ['ab', '']})
autocmd User skkeleton-initialize-pre call skkeleton#register_kanatable('rom', {'z ': [' ', '']})
autocmd User skkeleton-initialize-pre call skkeleton#register_kanatable('rom', {' ': [' ', '']})
autocmd User skkeleton-initialize-pre call skkeleton#register_keymap('input', '<space>', 'henkanFirst')

動作環境

# vim --version
VIM - Vi IMproved 9.1 (2024 Jan 02, compiled Jul 15 2025 19:26:25)
macOS 版 - arm64
適用済パッチ: 1-1550
...
# deno --version
deno 2.4.4 (stable, release, aarch64-apple-darwin)
v8 13.7.152.14-rusty
typescript 5.8.3

skkeleton: d2d7126, Denops: b0ee649

Osmium1008 avatar Aug 18 '25 00:08 Osmium1008

なるほど。z が先に処理されてしまうんですね。厄介です。

Shougo avatar Aug 18 '25 05:08 Shougo