私は最近Emacsを試してみることにしました。このソフトウェアの非常に残念なことの1つは、ほとんどの場合、スペースバーを押している間にスペース文字を挿入するだけで次のメッセージが表示されることです。
<Hangul> is undefined
エコゾーンで。以前は、スペースバーを押すとうまく機能し、スペースバーを繰り返し押すと複数の空白文字が得られましたが、スペースを維持することは期待どおりに機能しませんでした。問題を解決するためにGoogleに行きましたが、このスレッド私はそれについて多くの情報を見つけることができません。幸運にも解決策を見つけました。数値ロックをクリックすると効果があるようですが、Emacsを開くたびにそれを行う必要があります(たぶん新しいバッファを開くたびに – 私はそれほど多くは使用しません)。
xevを開いてスペースバーを押すと、予想通りに空白文字が生成されますが、時には韓国語の文字が生成されることがわかりました。以下はいくつかのサンプル出力です。
KeyPress event, serial 34, synthetic NO, window 0x2800001,
root 0x6c4, subw 0x0, time 2848166447, (-197,490), root:(767,510),
state 0x0, keycode 65 (keysym 0x20, space), same_screen YES,
XLookupString gives 1 bytes: (20) " "
XmbLookupString gives 1 bytes: (20) " "
XFilterEvent returns: False
KeyPress event, serial 34, synthetic NO, window 0x2800001,
root 0x6c4, subw 0x0, time 2848166463, (-197,490), root:(767,510),
state 0x0, keycode 130 (keysym 0xff31, Hangul), same_screen YES,
XLookupString gives 0 bytes:
XmbLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 34, synthetic NO, window 0x2800001,
root 0x6c4, subw 0x0, time 2848166511, (-197,490), root:(767,510),
state 0x0, keycode 130 (keysym 0xff31, Hangul), same_screen YES,
XLookupString gives 0 bytes:
XFilterEvent returns: False
KeyRelease event, serial 34, synthetic NO, window 0x2800001,
root 0x6c4, subw 0x0, time 2848166567, (-197,490), root:(767,510),
state 0x0, keycode 65 (keysym 0x20, space), same_screen YES,
XLookupString gives 1 bytes: (20) " "
XFilterEvent returns: False
このエラーを再現するのは難しく、エラーが発生したときに何が違っていたのかわかりませんが、このエラーを見るたびにこのKeypress Keypress Keyrelease Keyreleaseパターンに従うようです。
私はコマンドを使用xkbcomp $DISPLAY my_keymap.xkb
しましたファイルがgithubにアップロードされましたそれが役立つなら。そこにハングルが定義されていますが、それがどのように実行されるかまだ理解していません。
役に立つと思われる追加情報は次のとおりです。
私はクォーティキーボードを使用しています。
私はLinux Mint 19.2を使用しています。
xevによって検出されたため、システム全体の問題であることは明らかですが、これは私が実行しているアプリケーション(Emacsを除く)で奇妙な動作が発生するという事実を見つけることができませんでした。私がEmacsを実行していなかった場合、おそらくこれを知らなかったでしょう。
の出力は
setxkbmap -query
次のとおりです。ルール: evdev モデル: pc105 レイアウト: us
この問題の解決にご協力いただきありがとうございます。