Como vincular Alt + Arrows ao PageUp / PageDown?

10

Eu apenas tentei usando loadkeyse este arquivo de mapa:

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

Mas isso não funciona.

int_ua
fonte
Você tem que usar loadkeys?
Seth
Acontece que loadkeys é para TTYs. Também teremos que usar o xkbcomp, eu estou cavando lentamente.
int_ua
11
E o xbindkeys ou o xmodmap?
Seth
11
O xbindkeys é excessivo para isso, xmodmap - sim, pode ser :) Eu já estou trabalhando com um despejo do xkbcomp.
int_ua
Mas se você vai encontrar uma maneira com xbindkeys seria ok também, eu acho :)
int_ua

Respostas:

7

Instale xbindkeyse xte:

sudo apt-get install xbindkeys xautomation

Em seguida, precisamos encontrar os principais mapeamentos para Alt+ Arrow.

Execute xbindkeys -ke pressione Altmais qualquer tecla de seta que desejar. Para Alt+ Up Arroweu recebo:

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

Agora que sabemos quais são as ligações para nossas chaves, precisamos criar o .xbindkeysarquivo de configuração. Corre:

touch .xbindkeysrc
gedit .xbindkeysrc

touchcria o arquivo e o geditabre. Agora adicione:

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

Para o arquivo e salve-o. Isso ligará Alt+ Up Arrowa PgUp.

A sintaxe básica para xbindkeysé:

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

Seu arquivo completo deve parecer quase idêntico a este:

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

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

Agora adicione xbindkeysa "Aplicativos de inicialização" para executá-lo quando você inicializar o computador.
Clique em 'Adicionar' e coloque /usr/bin/xbindkeysno campo 'Comando'.

insira a descrição da imagem aqui

Clique em 'Adicionar' novamente e reinicie.

Seth
fonte
11
Não funciona para mim :( Tentei ambos m:0x8 + c:111(apenas Alt + Up) m:0x18 + c:111e ambos no Unity e no KDE.
int_ua
@int_ua Você recebeu suas ligações xbindkeys -kou as copiou da minha postagem? Você deve obter o seu próprio xbindkeys -k.
Seth
Eu tentei os dois, mas agora eu o usei pela segunda vez no Unity e dá um resultado diferente: m:0x18 + c:64Edit: no, the same. Tive que matar outro xbindkeys.
int_ua
Também não funciona para mim. Eu tentei remapear Alt + Leftpara Home.
Rasmus
11
@Rasmus Isso é estranho. Qual é o conteúdo do seu .xbindkeysrc? (publique-o em paste.ubuntu.com para que eu possa olhar).
Seth
0

Este:

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 ]
};

funciona apenas em alguns casos, postando apenas para referência , está longe de ser a solução final.

PS s/KP_//gdá o mesmo resultado.

int_ua
fonte
0

Eu li este https://help.ubuntu.com/community/KeyboardShortcuts que me ajudou a descobrir o seguinte. Enquanto o pacote xautomation que inclui a xteferramenta pode ser usado em vez de xvkbdemitir os códigos de chave que eu costumava xvkbdfazer a mesma coisa.

sudo apt-get install xbindkeys xbindkeys-config xvkbd

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

Por alguma razão, isso adicionou uma ligação para ctrl-f que eu tive que comentar. Embora talvez seja um exemplo padrão útil, eu preciso do ctrl-f para encontrar dentro das páginas da web.

Depois de descobrir os "keyimsims" de Prior para PgUp e Next para PgDown, isso não foi muito difícil. A execução e o uso xbindkeys-configresultaram nas seguintes entradas em .xbindkeysrc para mim.

#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

ao usar o pangolin preciso do Ubuntu 12.04 depois de criar o arquivo .xbindkeysrc, ele foi detectado e o xbindkeysprograma foi executado automaticamente no meu próximo login.

O mesmo funcionará para 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
concha
fonte