Linux

AltGr 在 Linux 控制台中不起作用

  • November 28, 2020

當我在控制台(不是終端仿真器)中時(使用Ctrl+ Alt+後F_AltGr+*key*組合不起作用。

我正在使用捷克語鍵盤佈局(與許多佈局一樣)將各種特殊字元映射到AltGr+*key*組合(我相信有時稱為死鍵)。例如,我可以|通過鍵入AltGr+ w(AltGr是 right-Alt ) 來編寫。

這在 DE(在我的情況下是 GNOME Shell)中非常有效,但在 Linux 控制台中卻不行。任何建議如何解決它?捷克佈局缺少許多重要的鍵(如>),因此在終端中工作有點不可能。我使用帶有最新更新的 Fedora 25。

編輯:我剛剛在我的第二台 PC 上使用 Fedora 25(但從 F24 升級並且仍然使用 X11 而不是 Wayland)進行了嘗試,它工作正常..

輸出dumpkeys | grep -e 'AltGr\|Alt'

keycode  56 = Alt              Alt              Alt              Alt              Alt              Alt              Alt              Alt              Alt              Alt              Alt              Alt              Alt              Alt              Alt              Alt             
keycode 100 = AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr            AltGr           
keycode 119 = AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock       AltGr_Lock    

輸出dumpkeys | grep -ie 'AltGr' | sed -n '1,5p; 50,55p'

altgr   alt keycode   2 = Meta_one        
shift   altgr   alt keycode   2 = Meta_exclam     
altgr   control keycode   4 = Escape          
altgr   alt keycode   4 = Meta_three      
shift   altgr   alt keycode   4 = Meta_three      
shift   altgr   alt keycode  52 = Meta_greater    
altgr   control keycode  53 = Delete          
altgr   alt keycode  53 = Meta_slash      
shift   altgr   alt keycode  53 = Meta_question   
altgr   control keycode  59 = F1              
altgr   alt keycode  59 = Console_1     

輸出localectl status

System Locale: LANG=en_US.UTF-8
             LC_NUMERIC=cs_CZ.UTF-8
             LC_TIME=cs_CZ.UTF-8
             LC_MONETARY=cs_CZ.UTF-8
             LC_PAPER=cs_CZ.UTF-8
             LC_MEASUREMENT=cs_CZ.UTF-8
  VC Keymap: cz-us-qwertz
 X11 Layout: cz,us
X11 Variant: ,

我的問題的解決方案是執行localectl --no-convert set-keymap cz.

這將改變 VC Keymap 從 cz-us-qwertz 似乎沒有定義AltGr組合,因為它們顯示在這裡

切換到 Gnome 桌面後,我遇到了同樣的問題。但是像第一個答案那樣設置任何 de 鍵盤映射都沒有幫助。顯然 Gnome 將 AltGr 映射到 Alt,這可以通過

gsettings set org.gnome.desktop.input-sources xkb-options "['mode_switch:ralt_rctrl']"

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