У меня есть стандартная клавиатура с цифровыми клавишами на правой стороне (я думаю, она называется 104-клавишная клавиатура). Я хочу использовать цифровые клавиши только в качестве цифровых клавиш. Это означает, что я не хочу NumLockвключать и выключать цифровые клавиши.
Однако иногда случается (я не знаю, как, возможно, я случайно NumLockнажал клавишу), что numlock выключен, и я должен нажать его снова. Это очень раздражает.
Можно ли отключить отключение numlock?
Другими словами: я хочу, чтобы мои числовые клавиши всегда действовали как цифровые клавиши, и чтобы отключить переключатель numlock .
Я использую Debian и LXDE (Openbox).
~/.config/openbox/autostart
и~/.config/openbox/rc.xml
?xmodmap
. Остался только вопрос, как получить это событие ......?Ответы:
Прочитав все ответы здесь, я был весьма удивлен, увидев, что вы можете сделать следующее.
Таким образом, каждый раз, когда вы нажимаете Num, что деактивирует Numlock. Он будет выполнен
numlockx on
, что реактивирует numlock.Название происходит от моего вывода,
xev
который дал мне код ключа 77 и имяNum_Lock
В случае @MartinVegters ему нужно было подождать несколько секунд, чтобы
numlockx on
определенное выполнение выполнялось после обработки события Num. Поскольку между обработкой numlock в ядре и выполнением существует условие гонкиnumlockx
.Для этого случая вы можете написать небольшой скрипт,
denumlock.sh
каки использовать его в связывании ключей
Это грязно, но это работает.
Я рекомендую следующее, что я не смог проверить сам. Вам лучше следовать первым ответам, которые предлагают использовать
Но для LXDE вам нужно использовать механизм автозапуска LXDE, который отличается от способа редактирования Openbox
~/.config/openbox/autostart
.В LXDE вам, видимо, нужно редактировать
~/.config/lxsession/LXDE/autostart
или с Lubuntu~/.config/lxsession/Lubuntu/autostart
, который содержит команды для запуска. (См. Архивные документы и Документы LXDE ) Вам может потребоваться создать этот файл и добавить эту строку.К сожалению, как я уже сказал, я не могу проверить, работает ли это, поскольку у меня есть только виртуальная машина, работающая с LXDE.
источник
<keybind key="Num_Lock">
но, к сожалению, оно не работает. Пока командаnumlockx on
выполняется, <kbd> NumLock </ kbd> все еще продает свою функцию как numlock. Так что я все еще могу включить / выключить numlock.xmodmap
, когда я попробовал решение, предложенное Ристо Салминеном, команда работала, но я потерял все свои привязки клавиш.sleep 3; numlockx on
для связывания ключей. Для второго решения вы пробовали его с автозапуском?sleep 3; /usr/bin/numlockx on
не работает.NumLock
по-прежнему действует как переключатель вкл / выкл./usr/bin/numlockx on
работает в вашей системе?Если клавиатура принадлежит вам (а не вашему работодателю, например), просто физически снимите ее с клавиатуры .
Вы все еще можете нажать на нее заостренным предметом, если вам действительно это нужно.
источник
На моем ноутбуке клавиатура (Ubuntu 10.04) в настоящее время включена блокировка клавиатуры.
Вуаля! numlock теперь отключен.
Откладывает это снова. (Возможно, было бы лучше, если бы поискали Num_lock, но вы понимаете суть).
Ответ на комментарий @Martin Vegter.
Хорошо , в ответ на ваш комментарий xmodmap разрушает ваши привязки, понял.
Я только что проверил документацию Openbox
Посмотрите в ~ / .config / openbox / lxde-rc.xml
ls -l lxde-rc.xml
(у вас также есть rc.xml? пожалуйста, проверьте).взять его копию в качестве резервной копии
(используйте редактор) ищите numlock (возможно, nmlk).
Вы видите что-то подобное?
Закомментируйте это ИЛИ измените значение ключа связывания ключей на альтернативу, например Alt-Numlock для переключения
Например
Для того, чтобы Закомментируйте
или
Изменить на Alt + Numlock
сохранить изменения и выйти / войти или перезагрузить.
источник
xmodmap
команда (то естьxmodmap -e 'keycode 77 = Escape'
) разрушает мои существующие.config/openbox/lxde-rc.xml
.config/openbox/lxde-rc.xml
, нет строки, содержащейNumlock
илиNum_Lock
. Когда я его создаю, он не действует: <keybind key = "Num_Lock"> <action name = "Execute"> <command> / bin / true </ command> </ action> </ keybind>Найдите свой код ключа numlock с помощью
xev
. Например, здесь Num_Lock - 77.Используйте xmodmap для переназначения кода ключа:
xmodmap -e 'keycode 77 = '
.Для всех будущих X сессий, внутри
~/.xprofile
местаxmodmap -e 'keycode 77 = '
.РЕДАКТИРОВАТЬ: Примечание: не работает, если программное обеспечение изменяет состояние Num Lock.
источник
xmodmap -e 'keycode 77 = '
работает, но она вызывает серьезную проблему: все мои привязки клавиш перестают работатьxmodmap -e 'keycode 77 = Escape'
(YMMV, ESC кажется безопасным для меня). У вас есть файл ~ / .Xmodmap? Если да, вместо~/.xprofile
, поместитеkeycode 77 = Escape
в конце этого файла.xmodmap
команда (т.xmodmap -e 'keycode 77 = Escape'
.config/openbox/lxde-rc.xml
Просто удалите сопоставление клавиш NumLock, сопоставив его ни с чем: сначала запустите
xev
и нажмите Num Lock (вероятно, он выведет 77), а затем выполните команду:где # - это код ключа NumLock.
Вы также включили бы это,
~/.xprofile
чтобы отключить NumLock в сеансах x.источник
xmodmap -e "remove Lock = Num_Lock"
с LinuxMint 17.2 и другими версиями Ubuntu, вы можете перейти к настройке KEYBOARD, а затем на вкладках LAYOUTS на этой странице вы найдете маленькую кнопку «options».
Оттуда перейдите к «параметрам совместимости разного» и проверьте, что «цифровые ключи всегда вводят цифры»
Это спасатель для меня. Мне чертовски неприятно набирать номер и перемещаться куда-то еще на страницу. Ура! ;)
источник
setxkbmap -option numpad:mac
или путем установкиOption "XkbOptions" "numpad:mac"
вxorg.conf
.Другие ответы здесь предлагали использовать
numlockx on
сxmodmap -e 'keycode 77 ='
, ноnumlockx on
не работали в моей системе вместе с этойxmodmap
командой, показывая мне сообщение об ошибке:А также настройка
xmodmap -e 'keycode 77 ='
по какой-то причине удалит все мои сочетания клавиш, сделанные сxbindkeys
.Этот ответ на подобный вопрос помог мне, однако. Часть моего
~/.xinitrc
:Таким образом, NumLock ничего не делает сам по себе, но при нажатии Shift он служит своей первоначальной (в основном бесполезной) цели, и, что важнее всего, он не мешает
numlockx on
работе в моей системе и не портитxbindkeys
привязки клавиш.источник
Другой способ, если вы хотите отключить numlock ключ, отключите навсегда. Вы можете сделать это, изменив свой текущий файл раскладки, изменив код 77.
Установите это значение в «none», чтобы случайное нажатие клавиши ничего не делало.
Используйте
numlockx
при загрузке, чтобы запустить его, и используйте измененный файл раскладки ключей в одном из стартовых скриптов, например~/.bashrc
или в/etc/profile
.ПРИМЕЧАНИЕ: я не проверял это, но оно должно работать.
источник
В OpenSuse 13.x с KDE это работало для меня:
Если NumLock нужно включить, потому что он выключен, просто используйте
% numlockx on
.источник
Довольно хакерский обходной путь - добавить
cron
задание, которое запускает следующую командукаждые 30 секунд или около того, чтобы включить NumLock.
Смотрите также
источник
Возможно, это не лучшее решение, но это сработало для меня:
Где 11 - идентификатор вашей клавиатуры. Сделайте
xinput
список, чтобы определить свой идентификатор клавиатуры (в моем случае это 11):Очевидно,
numlockx
должен быть установлен, чтобы это работало.Объяснение:
stdbuf -oL
изменяет операции буферизации выходного потока на строку буферизированнойxinput test 11
печатает нажатые клавиши в стандартный выводmawk -W interactive '$3==77 {printf "/usr/bin/numlockx on\n"}'
для каждой строки, которая напечатана и содержит 77 (клавиша numlock), создайте команду/usr/bin/numlockx on
...| bash
... и направить его в bash для его выполнения.Вы можете вставить этот oneliner в один из начальных сценариев окружения рабочего стола или запустить его в фоновом режиме.
источник
Я также хочу, чтобы цифровые клавиши на цифровой клавиатуре всегда были цифрами, а не KP _...
Мое решение является частью моей перегруппировки клавиатуры Apple для использования с Linux репозиторием .
По сути, он просто переназначает Num_Lock как F20, а цифры как сами по себе.
Это решение всегда обеспечивает желаемый результат и дополнительную функциональную клавишу в качестве дополнительной выгоды.
источник
Создайте следующий скрипт и сделайте его исполняемым с
chmod +x <filename>
Поместите путь к файлу в
.config/openbox/autostart
Или поместите его как задание cron, которое проверяет каждые пару минут и запускает скрипт, если numlocks выключен.
Или просто запустите скрипт в цикле.
Если у вас нет numlockx, вы сможете получить его с
sudo apt-get install numlockx
источник