Xorg

為什麼 setxkbmap 組合鍵會與其他鍵混淆?

  • October 21, 2021

我剛剛找到了一個手動設置撰寫鍵的提示:

setxkbmap -option compose:caps

不幸的是,在執行這幾個按鍵之後,就像按下了撰寫鍵一樣。例如,要獲得波浪號,我現在必須按Shift-~ 兩次,而且我不再知道如何獲得單引號或雙引號 - 當我按該鍵兩次(按 Caps Lock)時,我得到一個單引號´(不Shift) 或¨(with Shift) 字元。

$ setxkbmap -print 
xkb_keymap {
   xkb_keycodes  { include "evdev+aliases(qwerty)" };
   xkb_types     { include "complete"  };
   xkb_compat    { include "complete"  };
   xkb_symbols   { include "pc+us(dvorak-intl)+inet(evdev)+level3(ralt_switch)+compose(caps)"  };
   xkb_geometry  { include "pc(pc105)" };
};

將撰寫鍵設置為更流行Right-Alt並沒有幫助 - 結果與以下設置相同:

$ setxkbmap -print 
xkb_keymap {
   xkb_keycodes  { include "evdev+aliases(qwerty)" };
   xkb_types     { include "complete"  };
   xkb_compat    { include "complete"  };
   xkb_symbols   { include "pc+us(dvorak-intl)+inet(evdev)+level3(ralt_switch)+compose(ralt)"  };
   xkb_geometry  { include "pc(pc105)" };
};

更奇怪的是,即使在禁用組合鍵後setxkbmap -option,鍵仍然搞砸了。

在具有 GNOME 3 和類似設置的另一台機器上,它工作得很好(Caps Lock, a, aproducts å,而單次按下-produces Shift):~``~

$ setxkbmap -print 
xkb_keymap {
   xkb_keycodes  { include "evdev+aliases(qwerty)" };
   xkb_types     { include "complete"  };
   xkb_compat    { include "complete"  };
   xkb_symbols   { include "pc+us(dvorak-alt-intl)+ch:2+inet(evdev)+compose(caps)" };
   xkb_geometry  { include "pc(pc105)" };
};

也許這是一個 LXDE 問題 - 我將在下週對其進行測試。

原來問題實際上是鍵盤佈局 -切換到英語(Dvorak 替代國際無死鍵)(XKBVARIANT="dvorak-alt-intl"in /etc/default/keyboard)修復了它。

不幸的是,我找不到僅為我的使用者設置它的方法。

引用自:https://unix.stackexchange.com/questions/36315