É possível adicionar mais modificadores?

4

Estou usando o WM minimalista controlado por um teclado.
A questão principal é, é possível? Como?
Por exemplo, Mod6 . Eu sei remapear os modificadores existentes, mas não como adicionar novos modificadores. Estou usando o Arch Linux.

    
por aksr 04.07.2011 / 10:53

2 respostas

6

O X normalmente tem 8 modificadores, que têm teclados atribuídos a eles. Pressionar uma tecla resulta em um evento de teclado associado ao keysym. Se o keysym tiver um modificador atribuído a ele, enquanto a tecla estiver desativada, os eventos de chave serão marcados com esse modificador.

Os modificadores, juntamente com atribuições comuns de keysym, são:

  • Shift : Shift_L , Shift_R
  • Lock : Caps_Lock
  • Control : Control_L , Control_R
  • Mod1 : Num_Lock
  • Mod2 : Meta_L , Meta_R
  • Mod3 : Alt_L , Alt_R
  • Mod4 : Hyper_L , Hyper_R
  • Mod5 : Super_L , Super_R

A distribuição de Alt / Hyper / Meta / Super / NumLock entre Mod1-5 é arbitrária; você pode encontrá-los em uma ordem diferente e você pode descobrir que alguns estão faltando.

8 modificadores são tudo o que você obtém com a biblioteca X padrão, e alguns aplicativos nem permitem que você obtenha todos eles. Duas delas ( Shift e Lock ) têm um significado fixo que você provavelmente não conseguirá anular sem efeitos colaterais desagradáveis ao digitar caracteres.

No entanto, a maior parte do processamento de eventos do teclado é tratada no lado do cliente (ou seja, dentro de cada aplicativo). Portanto, é possível que um aplicativo específico permita que você manipule mais modificadores. A maneira de fazer isso seria específica para esse aplicativo (ou pelo menos para a biblioteca ou framework que ele usa para o processamento de eventos).

    
por 04.07.2011 / 11:54
1

Normalmente o Mod1-Mod5 é combinado com os Modificadores nomeados como Shift, Control, Alt, Hyper, Super.

Em alguns WMs é possível dissociá-los e usá-los como dez modificadores diferentes. Nem todos os WMs cooperam com isso, mas alguns o fazem.

O bit importante está no seu .xmodmaprc para limpar as várias associações usando coisas como clear Mod e clear Shift , mas NÃO as combina novamente usando os mapeamentos normais de estilo add Mod2 = Alt_L .

    
por 04.07.2011 / 11:08

Tags