Eu não acho que você pode fazer isso em xmodmap
. Aqui estão algumas possibilidades ...
Aproximações preferenciais.
-
Personalize o layout do teclado em inglês (deve ser
/usr/share/X11/xkb/symbols/us
). Faça uma cópia e altere o original para trocar os parênteses e colchetes. Isso não deve afetar o layout português. Você também pode tentar o software Editor de Layout de Teclado .Algumas referências:
-
Se você estiver usando um ambiente personalizável (por exemplo, Emacs) para codificação, você pode simplesmente religar as teclas de parênteses e colchetes para inserir o outro símbolo.
no Emacs:
(define-key key-translation-map (kbd "[") (kbd "(")) ;; etc...
Ou no Vim:
imap [ ( " etc...
Observação: Se não for possível vincular novamente as chaves de impressão em seu editor, você poderá usar um complemento de substituição de texto, correção automática ou expansão de snippets para substituir automaticamente os caracteres . (Você terá que verificar os recursos precisos da extensão para ver se funcionará para isso.)
Por exemplo, no Emacs, além da abordagem acima, você também pode usar a autocorrecção
abbrev-mode
, ou mesmo o Yasnippet (se você o tiver configurado para expansão automática e não recursiva).
Outras abordagens.
-
Tecnicamente, tenho certeza que você poderia fazer isso em
xbindkeys
, ligando as chaves a um script que verifica o mapa de chaves atual e emula o pressionamento de tecla apropriado (não sei se pode fazer o último nativamente; se você não precisaria usar algo comoxkvbd
ouxdotool
).Esta provavelmente não é a melhor abordagem, no entanto. Seria mais rápido e menos propenso a erros para alterar o mapa de teclas.
-
Você deve conseguir fazer isso usando Autokey . Pode ser usado para substituição de texto. Você teria que fazer alguma pesquisa para descobrir como torná-lo condicional no mapa de teclado atual.
Referência: artigo do Lifehacker