私のノートパソコンのキーボードが水に損傷し、左のコントロールキーが時々アクティブになります。
xmapmod -e "keycode 37=" が左コントロールキーを無効にできることを知っています。私はこれが新しい問題を引き起こすので、別のことをしようとしました。別のキー(「a」など)を押し続けると、aが繰り返し入力されます。左Ctrlがアクティブになるまで。左コントロールは何もしませんが(xmapmodのおかげで)、それでもキーを押すのを妨げます。
キーボードを止め、左のコントロールキーも聞く必要があるようです。
誰でもこの問題を解決できますか?私はLinux Mintを使用しています。ありがとう
答え1
「鍵を完全に無効にする」には、水に損傷を受けたキーボードに役立つという意味で、キーボード自体のキーボードコントローラチップを再プログラムするか、キーボードワイヤマトリックスを物理的に変更してブロック/バイパスする必要があると思います。欠陥のあるキー。
キーボードに特別な機能がないと、問題を引き起こす価値はありません。既存のキーボードを復元したい場合は、交換/交換用キーボードを購入してください。最初:古いキーボードを非破壊的に分解する方法がわからないことを知った後、コンピュータの金物屋に急いで走ります。 (そこに行ってそうしました。)
答え2
キーを無効にするには、カーネルレベルで再マッピングするだけです(udev
)。これはかなり複雑なプロセスです。 この記事スリープキーをブロックする方法に関するセクションがあり、これをデッドコントロールキーとして使用できます。
ステップの要約:
- 入力デバイスIDを使用してキーボードを識別します
evemu-describe
。 - ブロックしたい重要なコードを識別するために使用されます
evtest
。 - カスタムキーコードファイルを作成します
/etc/udev/hwdb.d/50-block-ctrld.hwdb
。 - 最上位ファイルにデバイス ID を追加します。
- キーコードを含む
KEYBOARD_KEY_xxx=reserved
ファイルに追加します。xxx
systemd-hwdb
カスタムキーコードファイルを使用して適用しますudevadm
。
デバイスIDの形式を正しく指定する必要があるため、手順4はすでに完了しています。それ以外の場合は何も起こりません。 この記事キーボードイベントソースとキー押しコードを識別する方法の良い説明があります。私もステップを説明しましたこの回答。
他の人が指摘したように、問題に対するより良い解決策があるかもしれません。ただし、キーを無効にするには、この手順を実行します。