Як відключити Alt-Arrow перемикання віртуальних консолей?


36

На різних шнурках відбувається таке:

Коли я перебуваю у віртуальній консолі, утримуйте Altта натискайте або , цикл віртуальних ttys. Це дійсно дратує, оскільки я використовую рибну шкаралупу, яка також використовує цю клавішу комбо. Я міг би переробити скорочення риби, але цього не хочу. Натомість я хочу відключити функцію Linux або перезавантажити її.

Як я можу відключити або змінити комбінацію клавіш tty-cycling-key-combo?


2
Відповідь, яка може вам допомогти: superuser.com/questions/290115/…
Діді Кохен

Відповіді:


14

Ви можете скористатися loadkeysкомандою для перенастроювання ключів на консолі Linux. У наступних рядках визначаються прив'язки клавіш до комутаційних консолей (на клавіатурі ПК):

alt keycode 105 = Decr_Console
alt keycode 106 = Incr_Console

Завантажте власний файл ключових карт, який переосмислює ці вкладення, послідовністю втечі, яка розпізнає риба. Щоб ключ надіслав послідовність втечі, вам потрібно прив’язати його до імені ключа форми та визначити послідовність символів для .FNUMBERFNUMBER

alt keycode 105 = F105
alt keycode 106 = F106
string F105 = "\033\033[D"
string F105 = "\033\033[C"

Різні дистрибутиви (а іноді і різні пакети для підтримки консолі) зберігають клавіатурну карту завантаження системи в різних місцях під /etc. Шукайте файл з ім'ям *.kmapабо *.kmap.gzабо *.mapабо *.map.gzпід /etcабо зверніться по експлуатації вашого дистрибутива. Деякі дистрибутиви /etcзамість цього зберігають ім'я ключової карти та перекладають фактичну мапу клавіш в інше місце; шукайте налаштування, пов’язане з картами клавіш, в /etc/sysconfigіншому каталозі конфігурації.

Ви можете або написати власну карту клавіш і використовувати include "/path/to/foo.map"для посилання на систему клавішних файлів, або домовитись про завантаження власної клавішної карти, що містить лише налаштування, які ви хочете змінити під час завантаження.


Ви впевнені в .kmapрозширенні? Я не зміг знайти жодних файлів у Fedora 20, але з іншого боку, я знайшов /lib/kbd/keymaps/legacy/i386/qwerty/us.map.gz.
Cristian Ciupitu

@CristianCiupitu Моє погано, я мав би згадати інші способи цього зробити. Я думаю, що у Fedora десь там є налаштування, /etc/sysconfigяке визначає ім'я файлу карти ключів для завантаження при запуску.
Жил "ТАК - перестань бути злим"

Чи варто мені отримати налаштування dumpkeys, зберегти його, змінити та змінити /etc/sysconfig? Це зробить це стійким?
Макс Рід

@Gilles, можливо сторінки сторінки для systemd-vconsole-setup.service та [vconsole.conf] ( freedesktop.org/software/systemd/man/vconsole.conf.html ) можуть пролити щось на це.
Крістіан Цюпіту,

@MaxRied Я рекомендую тримати їх окремо, це буде простіше в обслуговуванні. Змініть посилання /etc/sysconfigна файл, що містить includeдирективу до стандартної карти ключів.
Жил 'ТАК - перестань бути злим'

44

Ось одноразове виправлення:

sudo sh -c 'dumpkeys |grep -v cr_Console |loadkeys'

Я б запропонував додати це як команду у "запуску програм".
Samy Bencherif

20

Я відновив відповідь Тобу, щоб змінити лише абсолютно необхідне:

sudo sh -c 'dumpkeys -k|grep -v Incr_Console|grep -v Decr_Console|grep -v Last_Console|loadkeys'

NB: Як було сказано, це одноразовий виправлення, і він, ймовірно, піде після перезавантаження.


1
Два виправлення: 1. скидайте лише прив'язки клавіш, щоб уникнути помилки синтаксису в завантажувальних ключах; 2. Також позбудьтеся Last_Console (Alt + Tab): sudo sh -c 'dumpkeys | grep -v Incr_Console | grep -v Decr_Console | loadkeys' Дякую за це!
Рувім Томас

На додаток до мого попереднього коментаря я виявив, що світло Caps Lock все ще вмикається та вимикається (навіть незважаючи на те, що Caps Lock все ще було відображено для управління в моїй системі). Щоб виправити це, відфільтрувати рядок, що містить Caps_Lock, не працює, оскільки це єдине відображення відповідного коду ключа, тому не перезаписується, коли відфільтрований список відображень перезавантажується. Врешті-решт, найпростішим рішенням було скинути "відому хорошу" клавішу, а потім явно завантажити це.
Рувім Томас

14

У мене іноді виникали проблеми з Ubuntu 18.04:

sudo kbd_mode -s

Зробив роботу. (принаймні тимчасово)

Тут ви можете знайти довгий звіт про помилки на панелі запуску .


Як це працює? Я не вагаюся експериментувати, оскільки на сторінці чоловіка написано "Попередження: зміна режиму клавіатури, окрім ASCII та Unicode, ймовірно, зробить вашу клавіатуру непридатною".
nshiff

1
Привіт, я додав посилання.
COil

Спасибі! Це спрацювало. Я спробував натиснути "Так, це впливає на мене" на сторінці bugs.launchpad.net/ubuntu/+source/console-setup/+bug/520546, але я постійно отримував помилку тайм- аута . Будь-яка ідея, як це виправити?
6005

Я думаю, це повинно бути тимчасово, або ви повинні заповнити звіт про помилки для самої системи звітування про помилки! : p
COil
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.