Se você usa um teclado padrão americano no Linux e digita em português brasileiro e inglês, provalmente já encontrou os seguintes problemas:
'
+c
vira umć
se você usa Inglês como idioma padrão do sistema- Quando digita
'
+ uma letra que não aceita acento em português, como umt
, nenhum carácter é inserido - ou pior, em algums casos, como o da letran
, a letra fica acentuada:ń
. Este tipo de comportamento é muito ruim quando se está digitando em inglês:doesn't
, por exemplo.
Infelizmente, até onde eu pude investigar, parece não ser possível simplemente criar um novo layout do tipo "pt-BR - US", que seria uma solução mais elegante. É preciso utilizar configurações customizadas do XCompose
com uim
.
Aplicando essas configurações, o comportamento passar a ser o seguinte:
'
+c/C
, viraç/Ç
'
+ carácter que não aceita acento, vira apóstrofe + o próprio carácter. Exemplo:'t
,'n
,'[
,'}
, etc. Isso vale para crase e til também.
Este é o mesmo comportamento que existe no macOS e Windows 10 quando você seleciona o layout US international para português.
Isso só foi testado no Ubuntu 19.04 com Gnome
- Configure o layout do teclado como
us-intl
- "English (US, intl., with dead keys)" - Instale o pactote
uim
. Isso é necessário para que o XCompose possa expandir para mais de um carácter ('t
, por exemplo). No Ubuntu/Debian, faça:
sudo apt update
sudo apt install uim
- Configure GTK e QT para usarem o
uim
Adicione as seguintes linhas ao seu ~/.profile
export GTK_IM_MODULE="uim"
export QT_IM_MODULE="uim"
- Copie o arquivo
XCompose
deste repositório para o seu~/.XCompose
curl -o ~/.XCompose https://raw.githubusercontent.com/lucasfais/xcompose-pt-BR_US/master/XCompose
- Reinicie
-
Quando digitar
"
+ espaço, tome o cuidado de não continuar segurando o Shift enquanto pressiona o espaço. Ouim
vem configurado para mudar o método de input quando Shift + espaço é pressionado. Infelizmente, não é possível alterar isso por causa de um bug: https://bugs.launchpad.net/ubuntu/+source/uim/+bug/1202038Caso pressionar Shift + espaço acidentamente, pressione novamente para voltar ao modo normal.
-
Não funciona no Slack. Provalmente porque Slack não é GTK nem QT.