Як прив’язати стрілки Alt + до PageUp / PageDown?


10

Я просто спробував це за допомогою loadkeysцього файлу карти:

alt keycode 73 = Prior
string Prior = "\033[5~"
alt keycode 81 = Next
string Next = "\033[6~"

Але це не працює.


Чи потрібно використовувати loadkeys?
Сет

Виявляється, вантажні ключі призначені для TTY. Доведеться також використовувати xkbcomp, я повільно копаю його.
int_ua

1
Що з xbindkeys або xmodmap?
Сет

1
xbindkeys для цього надмірний, xmodmap - так, може бути :) Я вже працюю з дамп xkbcomp.
int_ua

Але якщо ви знайдете спосіб з xbindkeys, було б гаразд теж, я думаю :)
int_ua

Відповіді:


7

Встановити xbindkeysта xte:

sudo apt-get install xbindkeys xautomation

Далі нам потрібно знайти ключові відображення для Alt+ Arrow.

Запустіть xbindkeys -kі натисніть Altплюс будь-яку клавішу зі стрілкою. За Alt+ Up Arrowя отримую:

"NoCommand"
m:0x18 + c:111
Alt+Mod2 + Up

Тепер, коли ми знаємо, які прив’язки для наших ключів, нам потрібно створити .xbindkeysфайл конфігурації. Виконати:

touch .xbindkeysrc
gedit .xbindkeysrc

touchстворює файл і geditвідкриває його. Тепер додайте:

"xte 'key Page_Up'"
m:0x18 + c:111
Alt+Mod2 + Up

У файл і збережіть його. Це прив’яже Alt+ Up Arrowдо PgUp.

Основний синтаксис для xbindkeys:

"command to run (in quotes)"
keysym of key

Ваш повний файл повинен виглядати майже ідентично цьому:

"xte 'key Page_Down'"
m:0x18 + c:116
Alt+Mod2 + Down  

"xte 'key Page_Up'"
m:0x18 + c:111
Alt+Mod2 + Up  

Тепер додайте xbindkeysв "Запуск програм", щоб запустити його під час завантаження комп'ютера.
Клацніть «Додати» та введіть /usr/bin/xbindkeysу поле «Команда».

введіть тут опис зображення

Натисніть "Додати" ще раз і перезавантажте.


1
Не працює для мене :( Пробував обидва m:0x8 + c:111(лише Alt + Up) m:0x18 + c:111і обидва в Unity та KDE.
int_ua

@int_ua Чи отримали ви свої прив’язки xbindkeys -kчи скопіювали їх з моєї публікації? Ви повинні отримати своє xbindkeys -k.
Сет

Я спробував і те, і інше, але зараз я вдруге використав це в Unity, і це дає різний результат: m:0x18 + c:64Edit: ні, те саме. Довелося вбити ще одного xbindkeys.
int_ua

Не працює і для мене. Я намагався перерозподілити Alt + Leftв Home.
Расмус

1
@Rasmus Це дивно. Який вміст вашого .xbindkeysrc? (опублікуйте його на paste.ubuntu.com, щоб я міг подивитися).
Сет

0

Це:

key   <UP> {
    type= "PC_ALT_LEVEL2",
    symbols[Group1]= [           Up,         KP_Prior ]
};
key <DOWN> { 
    type= "PC_ALT_LEVEL2",
    symbols[Group1]= [           Down,         KP_Next ]
};
key <LEFT> {
    type= "PC_ALT_LEVEL2",
    symbols[Group1]= [           Left,         KP_Home ]
};
key <RGHT> {
    type= "PC_ALT_LEVEL2",
    symbols[Group1]= [           Right,         KP_End ]
};

працює лише в деяких випадках, розміщуючи лише для довідки , це далеко не остаточне рішення.

PS s/KP_//gдає такий же результат.


0

Я прочитав це https://help.ubuntu.com/community/KeyboardShortcuts, який допоміг мені з'ясувати наступне. Хоча пакет xautomation, що включає xteінструмент, може використовуватися замість того, xvkbdщоб випромінювати ключові коди, я xvkbdробив те саме.

sudo apt-get install xbindkeys xbindkeys-config xvkbd

xbindkeys --defaults > /home/your-user-name/.xbindkeysrc

Чомусь це додало прив'язку для ctrl-f, яку я мав коментувати. Хоча, можливо, корисний за замовчуванням приклад, мені потрібен ctrl-f, щоб знайти всередині веб-сторінок.

Після з'ясування "ключів" Prior для PgUp та Next для PgDown це було не надто складно. Запуск та використання xbindkeys-configпризвели до наступних записів у .xbindkeysrc для мене.

#alt-up
"xvkbd -xsendevent -text "\[Prior]""
    m:0x18 + c:111
    Alt+Mod2 + Up

#alt-down
"xvkbd -xsendevent -text "\[Next]""
    m:0x18 + c:116
    Alt+Mod2 + Down

при використанні Ubuntu 12.04 точного панголіну після створення файлу .xbindkeysrc його було виявлено, і xbindkeysпрограма автоматично запускалася під час мого наступного входу.

Те саме буде працювати для ctrl.

#ctrl-up
"xvkbd -xsendevent -text "\[Prior]""
    m:0x14 + c:111
    Ctrl+Mod2 + Up

#ctrl-down
"xvkbd -xsendevent -text "\[Next]""
    m:0x14 + c:116
    Ctrl+Mod2 + Down
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.