Як очистити налаштування xmodmap?


42

Саме те, що запитує заголовок. Як очистити налаштування xmodmap?

У мене модель IBM M, і якимось чином xkeycaps отримав це в голову, що мій Endключ зовсім не був. xevповідомляє натискання клавіш, коли я його використовую, тому я знаю, що подія створюється за допомогою клавіатури. Крім того, xkeycaps вважає, що мої клавіші зі стрілками все вибагливі, і, мабуть, панель прокрутки зламана, тому вона лише прокручується вниз - тому я не можу прокрутити вгору, щоб знайти клавіатуру IBM, яка, можливо, близько до моєї карти, щоб я міг виправити свої клавіші .

Тому я намагаюся скинути мою клавіатуру до налаштувань за замовчуванням, але сторінка xmodmap жахливо позбавлена ​​"скидання всіх" або "очищення всіх" або будь-якого подібного характеру (що мені вдалося знайти).

Відповіді:


65

xmodmapне має поняття держави, тому він не має можливості безпосередньо скинути стан. Ви можете імітувати його, використовуючи xmodmap -pke >.xmodmap.origперед тим, як вносити будь-які зміни (хоча це не зберігає карту модифікаторів, яку вам доведеться зберегти та відновити вручну) - але це занадто пізно для цього.

xmodmapОднак сучасні системи зазвичай не використовують для налаштування клавіатури. setxkbmapсучасний спосіб це зробити; і це скидає прив’язки під час запуску. Тож ви зможете скористатись setxkbmap -layout usдля того, щоб відновити стан до нормального. Повніше було б перевірити наявність конфігурації за замовчуванням у /etc/X11/xorg.conf. Наприклад, у моїй системі

jinx:718 Z$ sed -n '/Identifier.*Keyboard/,/EndSection/p' /etc/X11/xorg.conf
        Identifier      "Generic Keyboard"
        Driver  "kbd"
        Option  "XkbModel"      "pc105"
        Option  "XkbLayout"     "us"
        Option  "XkbOptions"    "grp:alt_shift_toggle"
EndSection

Відповідна команда є

setxkbmap -model pc105 -layout us -option grp:alt_shift_toggle

Якби XkbVariantу висновку був запис, ви передаваєте його значення -variant. Одне, на що слід звернути увагу, - це те, що параметри обробляються спеціально: ви можете встановити лише один параметр на -optionпараметр, і вам потрібно -option ''спершу скинути параметри. Тож повністю скинути, коли є щось таке, що XkbOptions "grp:alt_shift_toggle,grp:ctrls_toggle"вам знадобиться

setxkbmap -model pc105 -layout us -option '' -option grp:alt_shift_toggle -option grp:ctrls_toggle

30
setxkbmap -layout usскинув мої ключі, дякую!
День

8
Ще один дуже корисний варіант, який я виявив - setxkbmap -queryроздрукувати поточні налаштування у форматі xkb, що допомогло мені налаштувати мою клавіатуру Apple за бажанням з терміналу.
metakermit

1
обережно з цією командою, setxkbmap -layout usоскільки вона відновить usмакет для кожної мовної підтримки. Наприклад, моя французька розкладка ключів разом з моєю англійською розкладкою ключів перетворюється на qwerty, атакуючи azerty ..
vdegenne

Це питання стосується xmodmap не xkb. Ці програми суперечать один одному, і якщо ваша система використовує xmodmap (як це робить сучасний Ubuntu), ви можете заплутатися після використання команди скидання xkb, а потім спробувати змінити прив’язки ключів у xmodmap (як я це зробив)
Майкл Фултон


1

Експериментуючи xmodmap, я переплутав свої ключові налаштування, використовуючи xmodmap -en "keysym BackSpace = Delete". Думав, що -nпрапор не спричинить жодних дій, тому що на man xmodmapсторінці зазначено

-n      This  option indicates that xmodmap should not change the mappings, but should display what it would
               do, like make(1) does when given this option.

Однак команда призвела до того, що мій Deleteключ був марним.

Прочитавши вище, я просто набрав текст setxkbmap, сподіваючись, що він покаже мені варіанти, тоді як насправді він повернувся негайно без вихідних даних, і тоді мій Deleteключ дивом знову працював!

Так виглядає, ніби

setxkbmap

поодинці зроблять роботу ...


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