Включить num-lock по умолчанию в Linux

11

Был похожий вопрос - но ИМХО должно быть более простое решение. Если в BIOS включена функция num-lock - почему она отключается во время загрузки linux и / или KDE / Gnome / любого другого запуска?

Nils
источник

Ответы:

9

Linux инициализирует большинство периферийных устройств, чтобы они находились в известном состоянии. Это относится и к клавиатуре: внутренние данные Linux о клавиатуре лучше совпадают со светодиодами, поэтому Linux делает так, чтобы отключить светодиоды (насколько я помню, процессор не может прочитать состояние светодиодов на клавиатуре ПК) и объявить, что все * Lock отключены.

Мне нравится иметь NumLock по умолчанию. Для текстовых консолей Linux я обычно запускал

for t in /dev/tty[0-9]*; do setleds -D +num <$t; done

из загрузочного скрипта ( /etc/rc.localили /etc/init.d/50_local_setledsтам, где дистрибутив любит их помещать).

В настоящее время, по крайней мере , на некоторых дистрибутивах , таких как Debian, вы можете добавить LEDS=+numк /etc/console-tools/config(или в /etc/kbd/configзависимости от того, какой у вас есть).

Система X Window имеет свою собственную обработку клавиатуры, поэтому вам нужно разбираться с ней отдельно. Что я делаю, так это отключаю блокировку заглавных букв (у меня нет клавиши Caps Lock в моей раскладке) и постоянно включаю num Lock (у меня нет раскладки Num Lock в моей раскладке, а клавиши клавиатуры отправляют KP_1и скоро). Если вы хотите сохранить модификаторы, но включить Num Lock по умолчанию, вы можете написать небольшую программу для вызова, XKbLockModifiersчтобы установить модификатор внутри X и XChangeKeyboardControlустановить физический светодиод.

¹ Раньше, потому что я давно не беспокоился о текстовых консолях.

Жиль "ТАК - прекрати быть злым"
источник
Вы упомянули консоли - не было ли опции ядра для numlock в старых linux-ядрах? 0.x или 1.y? В любом случае - нет ли Xconfig-опции для numlock?
Нильс
@ Нильс Мммм, может быть, я не помню. Я не думаю, что есть что-то для X, но я узнал о клавиатурах в X до того, как появился XKB, так что я мог бы пропустить некоторые из этих новомодных вещей с самого конца 20-го века.
Жиль "ТАК - перестать быть злым"
1
Я добавлю примечание, что в Debian установка numlock после загрузки выполняется kbdпакетом, который создает скрипт инициализации kbd.
carandraug
1
@Rodrigo Операционная система может знать состояние ключа. Насколько я знаю, он не может знать о состоянии светодиода - он может помнить только то, был ли он в последний раз включен или выключен, но это не работает при смене операционной системы (например, BIOS → загрузчик). → Linux).
Жиль "ТАК - перестань быть злым"
1
@Rodrigo Этот вопрос касается приложений, получающих информацию из операционной системы. Часть, о которой вы спорите, - как операционная система получит информацию.
Жиль "ТАК - перестань быть злым"