Как изменить раскладку клавиатуры при нахождении в консоли?


42

Мне нужно изменить раскладку клавиатуры во время работы в консоли в Linux. Мне нужно установить английскую раскладку по умолчанию для консоли. Как это сделать?


Какой дистрибутив вы используете?
Emzero


1
"Loadkeys нас" работал! Как сделать это макетом по умолчанию?
J.Olufsen

Ответы:


42

Чтобы изменить общесистемную раскладку клавиатуры, запустите

sudo dpkg-reconfigure keyboard-configuration

или отредактируйте XKBLAYOUTстроку в /etc/default/keyboard.


2
В Red Hat 7: localectl status, localectl list-keymaps, localectl set-keymap czсм Изменение раскладки клавиатуры ... В раскладку в /usr/lib/kbd/keymaps/BTW ..
Дэвид Tonhofer

Привет)) Ubuntu 18.04.2 с рабочим столом Gnome не отвечает на состояние /etc/default/keyboard. Чтобы изменить настройки клавиатуры в этом случае, вам нужно использоватьdconf
AtachiShadow

16

Чтобы быстро изменить раскладку клавиатуры, просто установите setxkbmap с помощью:

sudo apt-get install x11-xkb-utils

После этого вы всегда можете изменить раскладку клавиатуры с помощью:

setxkbmap us

Чтобы сделать это автоматически каждый раз, добавьте .bashrc:

echo "setxkbmap us" >> ~/.bashrc

Теперь откройте новую консоль и раскладка клавиатуры США будет активирована. Не беспокойтесь, если маленький значок раскладки клавиатуры на панели Ubuntu не изменится.


Это на самом деле не меняет раскладку клавиатуры по умолчанию, но является своего рода хаком для сброса раскладки клавиатуры на другую каждый раз, когда вы открываете новую консоль (хотя ее необходимо выполнить только после перезагрузки). Для постоянного решения, можно установить его напрямую, например, /etc/default/keyboardкак предложено другими ответами.
baptx

Это не отвечает на вопрос. setxkbmap (1) работает в X (графическом), а OP спрашивает о консоли. ОП даже упомянул loadkeys (1) в комментарии к своему вопросу, за три года до того, как вы опубликовали этот ответ (loadkeys (1) - программа только для консоли).
Гильденстерн

6

другой путь, но я понимаю, что это не будет длиться до следующей загрузки:

sudo loadkeys /usr/share/keymaps/i386/qwerty/us.kmap.gz

проверьте / usr / share / keymaps / i386 / для вашей раскладки клавиатуры и раскладки клавиш, которые вам больше подходят


Поместите это в /etc/profile.d/bashrc
BK

@BK, может быть, /etc/rc.localчтобы не требовать sudo?
Водолей Сила

1

loadkeys нас ---- он загружает ключи США, но для одного сеанса.


Loadkeys был предложен, и в лучших ответах, которые включали информацию о том, КАК его использовать. Пожалуйста, избегайте размещения дубликатов информации в ответах, особенно если ваши сообщения не состоят из полного ответа.
music2myear

Лучший ответ для меня, хотя.
not2savvy

0

очень забавным может быть переключение обратно ... возможное решение состоит в том, чтобы сделать скрипт bash (названный w / символами целевого языка. например, англ). Второй трюк заключается в том, чтобы набрать «setxkbmap us; setxkbmap ru», тогда можно использовать историю bash, чтобы вернуть основной макет в консоль.


1
Не могли бы вы уточнить (1), что вы говорите, и (2) как это отвечает на вопрос?
Скотт

ну ты переключил консоль на русский язык. как бы вы хотели переключить его обратно на английский 777 на самом деле, я не ответил на главный вопрос, я просто добавил несколько хитростей, чтобы избежать возможных проблем. Например, вы работаете без графического интерфейса и переключили консоль на русский язык, поэтому вы не можете набрать любую команду. :)
Z0dCHiY8

0

Лучше взломать, чтобы отслеживать udev и сбрасывать его автоматически, если клавиатура отключается. Это может понадобиться даже пользователям ноутбуков, поскольку они могут мгновенно отключиться. Я только что сделал репозиторий GitHub, чтобы сделать это.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.