NumLock совершенно бесполезен, и я хочу полностью отключить его в Linux

30

Забудьте о всех беспорядках Caps Lock, Num Lockэто самый бесполезный ключ из всех. Это никогда, никогда не полезно. Вы не хотите использовать свою цифровую клавиатуру в качестве клавиатуры, поскольку стрелки находятся на расстоянии 1 см от нее. Когда-либо.

Было время, когда некоторые клавиатуры имели цифровую клавиатуру, но не имели специальных клавиш со стрелками. Они больше не существуют. Вы можете найти клавиатуры без цифровой клавиатуры, но с клавишами со стрелками, но не наоборот.

Следовательно, Num Lockбесполезно, и это только раздражает меня и, я полагаю, других. Обратите внимание, что я не хочу знать, как включить компьютер Num Lockпри запуске, я не хочу знать, как оторвать ключ, я хочу отключить его, чтобы он оставался включенным все время и не мог быть выключен ошибка. Есть идеи, как это сделать?

В идеале я хотел бы иметь возможность вернуть ключ для другого использования, такого как модификатор, который позволяет мне вводить hex на цифровой клавиатуре.

Кроме того, я хотел бы знать, как отключить столь же бесполезную эмуляцию мыши, вызванную Shift+ Num Lock.

niXar
источник
И как вы получаете хороший стиль клавиш в MarkDown? Не могу найти это!
niXar
1
Тег <kbd> не является функцией MarkDown! Он существует с HTML 3.2.
одиннадцать81
1
+1 Я восхищаюсь вашей страстью, она отражает мои чувства на CapsLock против Ctrl.
Кмарш
1
@rich: Я сказал, что не хочу об этом слышать, и это не решает проблему, поскольку, если по какой-то причине numlock выключается, вы не можете включить его снова.
niXar
2
В одном случае производители ноутбуков перезаписывают обычные буквенные символы для цифровой клавиатуры, но это конкретный случай использования.
wag2639

Ответы:

19

Что касается вашего первого вопроса, вы можете переназначить его ни к чему xmodmap:

xmodmap -e "keycode # = """

где # - это код сканирования NumLock. Вы можете найти код сканирования, используя xev. Вместо ничего вы можете переназначить его на любую клавишу, какую захотите.

Джон Т
источник
3
Ну, большое спасибо, что ответили на мой вопрос. Я сделал xmodmap -e 'keycode 77 = ISO_Level3_Shift Num_Lock'так, чтобы я мог включить вещь, если она выключается, и использовать сам ключ в качестве модификатора.
niXar
Хорошая идея, молодец :)
Джон Т
3

Я заметил, что это было помечено "Gnome", однако для тех, кто попал сюда и использует KDE, очень просто заставить цифровую клавиатуру всегда печатать числа.

В Системных настройках> Оборудование> Устройства ввода> Клавиатура> Дополнительно

Установите флажок «Настроить параметры клавиатуры», затем установите флажок «Различные параметры совместимости»> «Цифровая клавиатура всегда вводит цифры (как в Mac OS)»

Нажмите применить, и это работает напрямую.

«Разные параметры совместимости»> «Переключить PonterKeys с помощью Shift + NumLock» Включает / выключает эмуляцию мыши с помощью Shift+ NumLock, однако по умолчанию она отключена.

JKAbrams
источник
У меня работает: в Linux Mint 18.2: Клавиатура> Раскладки> Параметры ...> «Различные варианты совместимости»> «Цифровая клавиатура всегда вводит цифры (как в Mac OS)»
Тим Кейперс
Я заметил, что для 25% всех моих приложений цифровые клавиши на клавиатуре ведут себя всегда так, как будто Num Lock отключен. У KDevelop и Cura их поведение num lock инвертировано после вышеуказанного исправления.
Тим Кейперс
2

Ну, я точно знаю, что если вы запустите это как root, он включит Num Lock, и по крайней мере на моей машине я не смогу его отключить,

echo /etc/rc.local >> 'for tty in /dev/tty?; do /usr/bin/setleds -D +num < "$tty"; done'

Я использую Arch Linux, так что вы можете найти соответствующий файл для вашего конкретного варианта * nix ... но это должно включить Num Lock при загрузке и оставить фактический ключ открытым для повторного отображения. Мне нравится идея использовать его как модификатор для ввода в Hex, я не думал об этом.

ring_zero
источник
1

Для дальнейшего чтения, проверьте команду loadkeys , она также может изменить клавиатуру для входа в консоль.

NVRAM
источник
1

После Джона и niXar в ответ выше, для стандартной клавиатуры, то это должно быть добавлено в ваш .xprofileили аналогичный файл:

xmodmap -e 'keycode 77 = NoSymbol Num_Lock'

Объяснение:

  • xmodmap "утилита для изменения раскладок клавиш и указателей в Xorg"
  • -eоценивает xmodmapкоманду.
  • keycodeявляется командой для присвоения keycodes (физических ключей) keysyms («кодирование символа на верхушке ключа», см. ниже.)
  • NumLockКлючевой код 77 является ключом.
  • Первая клавиша, NoSymbolэто вывод нажатия клавиши, когда с этой клавишей не нажимаются никакие модификаторы.
  • Вторая клавиша Num_Lock- это вывод нажатия клавиши, когда с этой клавишей нажимается модификатор сдвига.
Уди
источник
1

Для Ubuntu 16.04 - xmodmapэто не постоянное решение. Вместо этого установите «Gnome Tweak Tools», перейдите к «Ввод» -> «Прочие параметры совместимости» и выберите «Цифровые клавиши на клавиатуре всегда вводят цифры».

user3294195
источник
То же самое для Fedora
edmondscommerce