Відповіді:
Наступні кроки допоможуть вам переключити клавіші клавіатури на кнопки миші.
Визначте клавішу клавіатури за допомогою xev
утиліти.
Запуск утиліти xev та натискання клавіші клавіатури, яку потрібно перемотати, виведе щось подібне
KeyPress event, serial 37, synthetic NO, window 0x3e00001,
root 0x82, subw 0x0, time 28977858, (-419,294), root:(175,613),
state 0x0, keycode 38 (keysym 0x61, a), same_screen YES,
XLookupString gives 1 bytes: (61) "a"
XmbLookupString gives 1 bytes: (61) "a"
XFilterEvent returns: False
Зверніть увагу на код ключа, який буде перейменований.
Запустіть утиліту xkbset
xkbset m
Перейдіть за допомогою утиліти xmodmap.
У нижченаведеному випадку клавіша меню перевстановлена в праву кнопку миші.
xmodmap -e "keycode 135 = Pointer_Button3"
Я думаю, ви могли б досягти цього за допомогою xmodmap та клавішної карти Pointer_Button1.
Подивіться у файлі /usr/include/X11/keysymdef.h для точного написання та написання великої літери, але має бути можливість відобразити клавішу клавіатури на кнопку миші (1,2,3 тощо), навіть подвійне клацання ( переглянути файл заголовка біля рядка 460 або близько того)
keysym W = Pointer_Button1
МОЖЕ працювати, змушуючи клавішу W діяти як ліву кнопку миші. Я рекомендую використовувати інший ключ, якщо ви не використовуєте жоден W, але все, що працює для вас. (ні, я не збираюся сам пробувати це, мені потрібні мої W!)
Також перегляньте сторінку man для xmodmap та, звичайно, вміст /usr/include/X11/keysymdef.h, щоб правильність написання написала. Відкиньте префікс XK_, щоб використовувати імена ключів для xmodmap.
Схоже, це (keysymdef.h) в пакеті x11-proto-core-dev для моєї системи Debian ... можливо, ви захочете шукати файл та його вміст в Інтернеті, сумніваєтесь, що хочете встановити всі задіяні файли -dev просто дістань ЦЕ. GIYF.
Щось лоскоче в моїй голові про інший спосіб зробити це, але зараз нічого не доходить до мене.
О! Залежно від ваших потреб, ви можете заглянути в емуляцію миші з клавіатури, перетворюючи цифрову клавіатуру в повнофункціональну мишу з двома кнопками (без колеса прокрутки!).
Option XkbOptions "keypad:pointerkeys"
. Якщо натиснути клавіші, це не єдиний спосіб увімкнути це: xkbset m
чи це робиться відповідно до crunchbang.org/forums/viewtopic.php?id=27937 , і може контролювати неприємний тайм-аут, а також вимикати його з cmdline.
Вбудований режим "Емуляція миші клавіатури" може це робити та /, але має попередньо налаштовані комбінації клавіш для емуляції різних клацань і натискань миші (для перетягування).
(FYI: Комбінація клавіш для його ввімкнення була видалена з типової картки за замовчуванням з деякого часу тому і тепер потрібна Option XkbOptions "keypad:pointerkeys"
.)
Натискання клавіші - не єдиний спосіб увімкнути цей режим:
xkbset m
робить це відповідно до http://crunchbang.org/forums/viewtopic.php?id=27937 , і може керувати неприємним тайм-аутом, а також вимкнути його з cmdline. Щоб вимкнути неприємний тайм-аут:
xkbset exp =m
Отже, xkbset
це дійсно зручніше (ніж мати клавішу лише для ввімкнення цього режиму), оскільки xkbset
дає більше контролю над бажаним тайм-аутом і т.д.
Використовується numpad. Деякі основні комбінації (докладніше на веб-сайті http://en.linuxreviews.org/HOWTO_use_the_numeric_keyboard_keys_as_mouse_in_XOrg :
/
, *
, -
Призначено для вибору вліво, середньої або правої кнопки;5
призначений для натискання вибраною кнопкою;0
і .
призначені для натискання та звільнення вибраної кнопки (для перетягування тощо)Я не міг зробити так, щоб "Емуляція миші клавіатури" завжди була включена. Тому я покладався на спеціальний ключ (як у keypad:pointerkeys
) для цього.
Я з'ясував, що Xfce возився з цими налаштуваннями також під час запуску, тому якщо xkbset m
запускається перед Xfce, то налаштування не активне. Тому мені довелося змінити налаштування в конфігурації Xfce, щоб відповідати моєму загальному бажанню, а саме: Налаштування Xfce: Доступність: Миша: включення емуляції . (Джерелом, яким я дізнався про існування такого варіанту Xfce, було: https://bugzilla.xfce.org/show_bug.cgi?id=3860 .) Це, мабуть, допомогло. (Я також відключаю свій сенсорний панель xinput float ...
; це зіпсовано перемиканням між консолями Linux, але можна попрацювати ще раз, відключивши цей пристрій хоча б у налаштуваннях Xfce.)
setxkbmap -option keypad:pointerkeys
зробив би те, що ти хочеш. Потім зсув-нумелок.