A melhor maneira de fazer isso é na configuração do teclado.
Não sei se você pode definir um atalho personalizado para imprimir o caractere no seu cliente de jabber, mas seria apenas para esse aplicativo. Quanto ao Awesome: é um gerenciador de janelas, então não é o trabalho dele.
Como inserir (ou qualquer caractere unicode) em alguns aplicativos (GTK pelo menos):
Ctrl + Deslocamento + U e depois 2E2E (o código hexadecimal).Como configurar o keyboad para obtê-lo em outro lugar também:
xmodmap
é unidirecional, mas está sendo substituído em favor do Xkb, mesmo que a configuração do Xkb possa parecer mais complexa. Mas você pediu por encantamentos arcanos: D
setxkbmap -print
imprime o mapa de teclado em uso. Você pode enviar isso para um arquivo para usá-lo como base para o novo mapa de teclado. ( Pule para exemplo abaixo para a versão rápida de "como" ).
xkbcomp
é um utilitário que pode ser usado para compilar e enviar um mapa de teclado para o servidor X.
xkbcomp $DISPLAY keymap.dump
irá despejar a configuração atual no arquivo keymap.dump
. É bastante longo, pois é o mesmo que anteriormente, mas com os valores obtidos da combinação dos elementos include
d. Pode ser útil procurar os nomes que são dados às chaves. Precisamos do nome para atribuir outro símbolo a uma chave. Você também pode modificar e usá-lo diretamente, mas você também pode usar os includes e apenas redefinir o que você deseja. Os include
são arquivos em /usr/share/X11/xkb/
, nos diretórios correspondentes às seções.
O arquivo de mapa de teclado tem várias seções:
-
xkb_keycodes
: a parte que mapeia códigos de teclas do teclado X para um nome de chave usado em outras seções. Você pode obter o código-chave do X comxev
e encontrar o nome associado nesta parte. -
xkb_types
: a parte que descreve os tipos e qual nível corresponde a quais modificadores de teclado (Shift, Control, Alt, qualquer combinação deles, etc.) -
xkb_compatibility
: Para "aplicativos que não são compatíveis com Xkb", pelo que li, não sei o que acontece aqui. -
xkb_symbols
: a parte que mapeia os nomes das chaves para os keyyms e aquela em que vamos reescrever uma das definições para adicionar esse caractere unicode. Você pode ver a definição atual da chave que deseja usar. -
xkb_geometry
: a forma do teclado físico. Não sei o que usa isso.
Se você observar as principais definições no mapa de teclas descartado, verá que elas têm um tipo associado. O tipo da chave determina quais modificadores estão disponíveis e corresponde a qual nível. A combinação de chave e nível corresponde a um keysym. O tipo é um definido na seção xkb_types
.
Se você não especificar outro tipo ao redefinir a chave, será o definido no xkb_symbols
map incluído.
Se eu pegar, por exemplo, minha chave I , existem quatro níveis, correspondentes a: apenas a tecla, chave + Shift , tecla + AltGr , tecla + Shift + AltGr .
Para o grupo, se você não estiver usando mais de um layout (na configuração do teclado), provavelmente terá apenas um e não precisará especificá-lo. (Você pode usar vários grupos para alternar entre as principais definições associadas a esse grupo).
Aqui está um exemplo de arquivo keymap modificado:
xkb_keymap {
xkb_keycodes { include "evdev+aliases(azerty)"};
xkb_types { include "complete"};
xkb_compatibility {include "complete"};
xkb_symbols {
include "pc+fr+inet(evdev)"
key <AD08> {[ i, I, U2E2E, idotless]};
key <AD09> {[ o, O, oslash, U262F]};
};
xkb_geometry { include "pc(pc104)"};
};
Com este mapa de teclas AltGr + I fornece ⸮ e Deslocamento + AltGr + O dá ☯.
Para definir o mapa de teclado:
xkbcomp mykeymap.xkb $DISPLAY
O wiki do Archlinux tem mais detalhes e alguns outros links no final.