xmodmapエラー診断

xmodmapエラー診断

xmodmap以下を使用してCaps Lockを削除しようとすると、このエラーが発生します。

$ xmodmap -e 'clear Lock'
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  118 (X_SetModifierMapping)
  Value in failed request:  0x17
  Serial number of failed request:  8
  Current serial number in output stream:  8

xfceを実行しています。この問題は、パネルにキーボードレイアウトアプレットを追加するまでは発生しませんでした。それ以前は、xmodmapスクリプトを実行してEscとCapsLockを置き換えることができました。

!Remap Caps_Lock as Escape
remove Lock = Caps_Lock
keysym Caps_Lock = Escape

これはキーボードレイアウト設定でキーボードスイッチの組み合わせとしてalt-capslockを選択したためです。

以前は、他のコンピュータでopenboxを実行しても同様の問題がありました。そのコンピュータからLucidにアップグレードしたときに問題が発生しました。一つ報告しました。抜け穴しかし、これが実際にxorgの問題なのか、それとも私の設定に問題があるのか​​はわかりません。

他の人がこの問題を経験したことがありますか?誰かがここで何が起こっているのか説明できますか?関連するレイヤーが多いようで、どんなものについても特に知識がないので、どんな情報でも役に立ちます。

修正する

特に、カナダのレイアウトバリアントである「多言語」(ca-multix)を追加して問題が発生したことがわかりました。代わりに、「多言語(パート1)」(ca-multi)バリアントを追加しても問題は発生しません。これが最終的には解決可能な解決策になる可能性があると思いますが、バリエーションの違いは何であるかまだわかりません。

無料デスクトップの問題、さんがコメントしています。Ubuntuの問題

ベストアンサー1

最新のXorgはXKB拡張機能を使用してキーボードレイアウトをサポートしています。 Xmodmapは互換性レイヤを介してエミュレートされますが、いくつかの欠点があります。 XKBを完全に無効にすると、Xorgは以前のXmodmapキーマップを使用するように戻ります。私の考えでは、xorg.confでXkbDisableオプションをtrueに設定しているようですが、これを行うにはXKBメソッドを使用することもできます。 /usr/share/X11/xkb/rules/xorg.xmlには設定可能なオプションがたくさんあります。 Caps LockとEscapeを変更するには、caps:swapescapeが必要だと思います。 setxkbmap -option caps:swapescape を試してください。

おすすめ記事