smzht / fakeymacs

Emacs-like key bindings for Keyhac
MIT License
111 stars 49 forks source link

A-Tab で GWSL のウィンドウに移動した時、Ctrl キーが押された状態になる #41

Closed smzht closed 3 months ago

smzht commented 3 months ago

Windows の X サーバの実装である GWSL を使っている際、A-Tab で GWSL のウィンドウに移動すると、Ctrl が押された状態になっている。

smzht commented 3 months ago

次のコードで再現した。

from keyhac import *

def configure(keymap):

    keymap_global = keymap.defineWindowKeymap()
    keymap_global["A-Tab"] = keymap.InputKeyCommand("A-Tab")

次のコードでは再現しない模様。

from keyhac import *

def configure(keymap):

    keymap_global = keymap.defineWindowKeymap()
    keymap_global["A-Tab"] = "A-Tab"
smzht commented 3 months ago

Fakeymacs では押したキーを記録するためやキーの JIS->US 配列変換を実装するため、基本すべてのキーの設定を行っている。この設定に前者の方法を用いているため、今回の問題が発生していた。

smzht commented 3 months ago

以下で対策しました。