Відповіді:
Ви можете використовувати xkb-перемикач ( -n
переходить на наступний макет):
xkb-switch -n
або xkblayout-state (з set +1
обертанням у вашому випадку):
xkblayout-state set +1
або xte
з xautomation для імітації Control_L+ Shift_Lнатискання / випуск клавіші:
xte 'keydown Control_L' 'keydown Shift_L' 'keyup Shift_L' 'keyup Control_L'
Пошуки Stack Exchange для kbdmap знаходять цю сторінку, не вказуючи цього слова. Для наочності, ось відповідь (не зовсім відповідає тегу X11 питання, але він повинен комусь допомогти)…
- без X.
kbdmap (1)
kbdmap
,vidfont
- передній кінець для syscons та vt… Дозволяє легко налаштувати доступні карти клавіш…
По-справжньому, це легко і (для мене, змінюючи розкладку клавіатури Великобританії) ефективно.
- наприклад, з TrueOS Desktop на базі FreeBSD.
З допису 5 в розділі Змінити розкладку клавіатури? | Форуми FreeBSD (2015-08-03):
kbdmap
призначений для консолі.setxkbmap
це утиліта, яку ви хочете для X11. …
Там це попередження, наприклад , при переході на U nited Королівство:
$ kbdmap
kbdcontrol: getting keymap: Inappropriate ioctl for device
You are not on a virtual console - expect certain strange side-effects
lang_default = en
dialect = en_...UTF-8
lang_abk = en
…
keymap="uk.kbd"
$
Залежно від дистрибутива для розкладки клавіатури, це команда
loadkeys <path/to/file>
loadkey /lib/kbd/keymaps/i386/qwerty/pt_PT.map.gz
Якщо я правильно пам’ятаю. Також перевірте manpage на завантаження ключів, якщо ви хочете призначити певні ключі певній поведінці.
loadkeys us
, він скидає налаштування, які я створив за допомогою setxkbmap (два макети та перемикання між ними)
Погляньте на цю статтю з підробки під назвою: Зміна мови та розкладки клавіатури на різних дистрибутивах , щоб різні команди змінили розкладку клавіатури на різних дистрибутивах.
Більшість цих команд є графічними інтерфейсами, але якщо ви шукаєте більшість з них, можна також запустити з командного рядка. Наприклад, я використовую Fedora (дистрибутив на основі Red Hat). Команда system-config-keyboard
при запуску без аргументів показує мені графічний інтерфейс.
Але якщо я запускаю, system-config-keyboard --help
його можна запускати і з командного рядка:
$ system-config-keyboard --help
Usage: system-config-keyboard [--help] [--noui] [--text] [<keyboardtype>]
--help Print out this message.
--noui Run in command line mode.
--text Run in text interface mode.
<keyboardtype> options are: ar-azerty, ar-azerty-digits, ar-digits, ar-qwerty, ar-qwerty-digits, be-latin1, ben, ben-probhat, bg_bds-utf8, bg_pho-utf8, br-abnt2, cf, croat, cz-lat2, cz-us-qwertz, de, de-latin1, de-latin1-nodeadkeys, dev, dk, dk-latin1, dvorak, es, et, fi, fi-latin1, fr, fr-latin1, fr-latin9, fr-pc, fr_CH, fr_CH-latin1, gr, guj, gur, hu, hu101, ie, is-latin1, it, it-ibm, it2, jp106, ko, la-latin1, mk-utf, nl, no, pl2, pt-latin1, ro, ro-cedilla, ro-std, ro-std-cedilla, ru, sg, sg-latin1, sk-qwerty, slovene, sr-cy, sr-latin, sv-latin1, tj, tml-inscript, tml-uni, trq, ua-utf, uk, us, us-acentos
Отже, щоб змінити розкладку моєї клавіатури на російську, я міг виконати таку команду:
$ system-config-keyboard ru
xkblayout-state set 1
, і миттєво отримуюus
макет.