На более ранних версиях Ubuntu, AltF и Alt⇆ сочетания клавиш для переключения между виртуальными терминалами, кажется, были отключены под X-окнами, таким образом, не было возможно инициировать их случайно.
Я теперь использую Ubuntu 16.04 с Коричной настольной средой, и ярлыки включены даже под X-окнами.
Я часто инициировал их случайно при попытке получить доступ к пунктам меню или пойти вперед/назад в веб-браузере.
Как я могу отключить эти сочетания клавиш виртуального терминала или заменить их версиями, которые требуют Ctrl (например, CtrlAltF1 вместо просто AltF1)?
--
(Я нашел несколько более старых ответов, которые предлагают пользовательское xmodmap
, но это, кажется, не имеет никакого эффекта для меня.)
Этот поток в Unix stackexchange помог мне выяснить временное одноразовое решение:
# This command removes all the lines that look like:
# alt keycode 123 = Console_1'
# ... with no additional modifiers
$ sudo dumpkeys | grep -Pv '^\s+alt(gr)?\s+keycode\s+\d+\s+=\s+(Console_|Incr_Console|Decr_Console)'|sudo loadkeys
кажется, что консольный установочный пакет Ubuntu 16.04's хранит свою кэшируемую контурную карту по телефону /etc/console-setup/cached.kmap.gz
.
, Но я не могу выяснить, какая программа генерирует этот "кэш" во-первых. Какие-либо идеи? Все, что я могу сказать, то, что повторное выполнение dpkg-reconfigure console-setup console-setup-linux
триггеры его регенерация.
Попытайтесь использовать команду в терминале sudo kbd_mode -s
и видеть, помогает ли она. Это изменяет режим ввода с клавиатуры на "scancode". Я имел ту же проблему и нашел, что это может быть решением.
Для постоянной фиксации можно добавить измененное отображение на /etc/console-setup/remap.inc
.
Необходимо работать sudo dpkg-reconfigure console-setup -phigh
применять изменения и перезагрузку.
Например, это, что я использую для отключения alt-Fxx и переключения стрелки высокого звука
# Remap alt+Fxx key to void to avoid terminal switching
alt keycode 59 = VoidSymbol
alt keycode 60 = VoidSymbol
alt keycode 61 = VoidSymbol
alt keycode 62 = VoidSymbol
alt keycode 63 = VoidSymbol
alt keycode 64 = VoidSymbol
alt keycode 65 = VoidSymbol
alt keycode 66 = VoidSymbol
alt keycode 67 = VoidSymbol
alt keycode 68 = VoidSymbol
# Also remove mapping for alt left arrow and right arrow
alt keycode 105 = VoidSymbol
alt keycode 106 = VoidSymbol
`