脱出は機能しません。 xevは奇妙なイベントを検出します。

脱出は機能しません。 xevは奇妙なイベントを検出します。

EndeavourOS-i3wmシステムで奇妙な問題が発生しました。 Escキーはまったく機能しません。私はキーボード設定を再設定しなかったか、xkbmapを混乱させませんでした。この問題は、Doom Emacs でファイルを開こうとすると発生します。同時に複数のキーを押した可能性がありますが、わかりません。

Super + ESCはそのタスクを実行しますが、ほとんどのソフトウェアではESCを押した後は何も起こりません。奇妙なことに、これは特定のアプリケーションのようです。 ESCはrofiメニューを閉じますが、Rstudio、VIM、EMACS、firefoxではまだ何もしません。

xevを実行して終了キーを押すと、次のメッセージが表示されます。

FocusOut event, serial 34, synthetic NO, window 0x3000001,
    mode NotifyGrab, detail NotifyAncestor

FocusIn event, serial 34, synthetic NO, window 0x3000001,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 34, synthetic NO, window 0x0,
    keys:  111 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

これを得ると、ランダムに自発的に動作し始めます。

KeyPress event, serial 34, synthetic NO, window 0x3400001,
    root 0x798, subw 0x0, time 983421, (-228,520), root:(1057,532),
    state 0x0, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
    XLookupString gives 1 bytes: (1b) "
mbLookupString gives 1 bytes: (1b) "
FilterEvent returns: False

KeyRelease event, serial 34, synthetic NO, window 0x3400001,
    root 0x798, subw 0x0, time 983529, (-228,520), root:(1057,532),
    state 0x0, keycode 9 (keysym 0xff1b, Escape), same_screen YES,
    XLookupString gives 1 bytes: (1b) "
FilterEvent returns: False

それからsudo showkey -> ESC私は得る。

keycode   1 press
keycode   1 release

ランニングはsetxkbmap何もしません。 etc/X11/xorg.conf.d/00-keyboard.conf:

# Read and parsed by systemd-localed. It's probably wise not to edit this file
# manually too freely.
Section "InputClass"
        Identifier "system-keyboard"
        MatchIsKeyboard "on"
        Option "XkbLayout" "br"
EndSection

ランニングすると、setxkbmap -print -verbose 10次のような結果が得られます。

Setting verbose level to 10
locale is C
Trying to load rules file ./rules/evdev...
Trying to load rules file /usr/share/X11/xkb/rules/evdev...
Success.
Applied rules from evdev:
rules:      evdev
model:      pc105
layout:     br
Trying to build keymap using the following components:
keycodes:   evdev+aliases(qwerty)
types:      complete
compat:     complete
symbols:    pc+br+inet(evdev)
geometry:   pc(pc105)
xkb_keymap {
    xkb_keycodes  { include "evdev+aliases(qwerty)" };
    xkb_types     { include "complete"  };
    xkb_compat    { include "complete"  };
    xkb_symbols   { include "pc+br+inet(evdev)" };
    xkb_geometry  { include "pc(pc105)" };
};

以前のタイムシフトスナップショットに戻すと、すべてが大丈夫ですが、他のキーボードでこれが起こるという事実が私を狂わせます。

ESCキーだけが機能するようにキーマップが特定の方法で混乱する可能性はありますか?

**更新**

@dirktの答えを読んだ後、どのソフトウェアがESCキーを盗んでいるかを見つけました。隠しスクラッチパッドi3wmバッファにあるfromScratchソフトウェアを開きました。それは素晴らしいとスクラッチアプリでポップアップが浮かぶハッキーソリューションとして動作します。これは脱出です。殺すと問題が解決します。

ベストアンサー1

部分的な回答(ここまたはスーパーユーザーから以前に1回以上要求):

FocusOutイベントは、FocusInキーストロークを盗む他のアプリケーションが実行中であることを意味しますESC

キーボードのレイアウトを変更してもまったく影響しません。

通常、これは「言語」拡張によって使用され、既存のキーボードレイアウトのキーの組み合わせを使用して外国語文字を入力できるようにします。しかし、原則として、それは何でもすることができます。ウィンドウマネージャ(私は慣れていません)も同じです。

したがって、イベントを盗むアプリケーションが実行されているかどうかを確認する必要があります。xlsclientsそれともps役に立つかもしれません。アプリケーションをシャットダウンまたは削除してシステムをデバッグします。あなただけがこれを行うことができます。質問にはこれを見つけるための情報が不十分です。

おすすめ記事