Use Caps Lock como tecla de atalho arbitrária no KDE5

Use Caps Lock como tecla de atalho arbitrária no KDE5

Gostaria de executar um script bash quando pressiono caps lock no KDE5. Eu fiz isso funcionar muito bem no KDE4. Posso facilmente atribuir Caps Lock como gatilho para um comando no system settings -> shortcuts -> custom shortcuts, mas simplesmente não funciona.

Existem algumas opções em system settings -> input devices -> keyboard -> advanced"Comportamento da tecla Caps Lock", mas todas são bastante específicas, como usar maiúsculas como uma tecla modificadora adicional. Desabilitar também desativa completamente, em vez de apenas desabilitar a funcionalidade caps, o que é um problema comesta abordagem.

Existe uma solução alternativa para remapear corretamente os limites?

Responder1

Não é a solução ideal, mas mapear o caps lock para outra tecla, como 'F22', permite xmodmapque os atalhos personalizados do KDE capturem o caps lock. Em seguida, desative a funcionalidade de caps:

Adicionar à ~/.Xmodmap:

! May need the following line. On ubuntu this seems to cause an error.
! remove Lock = Caps_Lock
keycode 66 = F22
clear Lock

(Execute xmodmap ~/.Xmodmappara analisar imediatamente, em vez de registrar novamente)

Não tenho certeza se ambas as linhas de bloqueio são necessárias, mas já gastei tempo suficiente nisso.


Usar setxkbmaptambém funciona, mas não tem a conveniência do .Xmodmap. Eu tentei inseri-lo ~/.bash_profile, embora isso não pareça funcionar lá. Eu suspeito que o KDE entra em ação e reativa o Caps Lock após sua execução.

setxkbmap -option ctrl:nocaps
xmodmap -e "keycode 66 = F22"

informação relacionada