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).