друга клавіатура для запуску команд


16

На моєму комп’ютері підключено дві клавіатури USB. Чи можна замість того, щоб обидві просто вводити одну і ту ж клавішу, чи можна налаштувати другу клавіатуру для запуску команд замість того, щоб набирати літери? А якщо це неможливо, чи можна налаштувати принаймні ввести іншу мову, наприклад, наприклад, як російська?


Ви хочете прив’язати певні команди до вибраних клавіш другої клавіатури, щоб мати можливість лише запускати щось, а не вводити літери?
пбм

І наступне запитання: ви хочете використовувати ярлики для запуску фонових програм (або додатків у середовищі X) або просто введіть ім'я команди в активний термінал за допомогою комбінації клавіш?
пбм

Альтернативний спосіб відключення надсилання ключів до програм. askubuntu.com/a/178741/554601
Ariunbayar

Відповіді:


15

Це моя третя відповідь, коли я можу порекомендувати actkbd... :)

Тож якщо ви хочете налаштувати всі клавіші другої клавіатури для виконання команд, щоб не вводити літери, ви можете використовувати actkbd... :)

Після встановлення actkbdнам потрібно знайти, який файл пристрою використовується для отримання подій з клавіатури:

pbm@tauri ~ $ cat /proc/bus/input/devices 
[cut]
I: Bus=0003 Vendor=046d Product=c31c Version=0110
N: Name="Logitech USB Keyboard"
P: Phys=usb-0000:00:1a.0-1.1/input0
S: Sysfs=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1/1-1.1:1.0/input/input7
U: Uniq=
H: Handlers=sysrq kbd event5 
B: PROP=0
B: EV=120013
B: KEY=1000000000007 ff9f207ac14057ff febeffdfffefffff fffffffffffffffe
B: MSC=10
B: LED=1f

I: Bus=0003 Vendor=046d Product=c31c Version=0110
N: Name="Logitech USB Keyboard"
P: Phys=usb-0000:00:1a.0-1.1/input1
S: Sysfs=/devices/pci0000:00/0000:00:1a.0/usb1/1-1/1-1.1/1-1.1:1.1/input/input8
U: Uniq=
H: Handlers=kbd event6 
B: PROP=0
B: EV=1b
B: KEY=2010000 397ad801d001 1e000000000000 0
B: ABS=100000000
B: MSC=10
[cut]

У цьому списку ви повинні знайти свою клавіатуру та перевірити її обробниками. Використовуйте, sudo actkbd -s -d /dev/input/HANDLER_NAMEщоб перевірити, чи передає цей обробник події. Якщо ви запускаєте цю команду і натискаєте клавішу на клавіатурі (перевірте наявність клавіш, які ви хочете прив’язати до команд), ви повинні отримати щось подібне:

pbm@tauri ~ $ sudo actkbd -s -d /dev/input/event5 
Keys: 57
Keys: 35

Якщо у вас є коди ключів, ми можемо створити actkbdконфігураційний файл:

pbm@tauri ~ $ sudo nano /etc/actkbd.conf 
30:::sudo -u pbm DISPLAY=:0 amarok
//30 is keycode for letter a

Коли ви зберігаєте цей файл, ми повинні перевірити, чи працює конфігурація:

pbm@tauri ~ $ sudo actkbd -d /dev/input/event5 -D

При натисканні клавіші, яка є у вашому конфігураційному файлі, буде запущена команда з останнього стовпця файла конфігурації.

Я думаю, що є спосіб відключити надсилання ключів до програм, але мені не вдалося його знайти - перевірити файл README .

Замість того, щоб намагатися відключити його, actkbdви можете вимкнути клавіатуру в X.

pbm@tauri ~ $ xinput list
[cut]
    ↳ Logitech USB Keyboard                     id=12   [slave  keyboard (3)]
    ↳ Logitech USB Keyboard                     id=11   [slave  keyboard (3)]
pbm@tauri ~ $ xinput set-prop 11 "Device Enabled" 0
pbm@tauri ~ $ xinput set-prop 12 "Device Enabled" 0

Це має зробити роботу ... :) Для отримання додаткової інформації про actkbdперевірку цієї відповіді .

Використовуючи actkbd(і, мабуть, кілька сценаріїв), ви також можете налаштувати клавіатуру для зміни режимів з командного режиму в режим введення з російськими літерами. Для цього прочитайте Ulrich Schwarz'sвідповідь.


1
Я задавав це питання мільйон разів на мільярді форумів, і ти єдиний, хто насправді новий. Дякую трильйон.
captainandcoke

0

Я написав невелику програму на C, яка просто може це зробити. Я написав це "на льоту", тому це не дуже добре, але це працює. Ви можете отримати його тут .


Привіт і ласкаво просимо на сайт Unix та Linux Stack Exchange. Перегляньте довідковий центр та відвідайте екскурсію, щоб дізнатися більше про цей сайт. Хоча ваше посилання може вирішити проблему з користувачем, чи можете ви додати додатковий контекст до своєї публікації? Наразі це лише пропозиція завантажити програмне забезпечення з сторонніх сайтів. Ви повинні включити, що це робить, як встановити та використовувати його, і чому він відповідає на відповідне питання. Дякую.
kemotep
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.