Colemak Mod-DH vs Colemak padrão: qual escolher?
Veja o que muda nas 6 teclas do Colemak Mod-DH, quem deve migrar e como ativar colemak_dh no Linux sem escolher a variante errada.
O que o Colemak Mod-DH altera
O Colemak Mod-DH é o Colemak padrão com seis letras movidas. D e H descem das duas colunas centrais e ficam sob os dedos indicadores, enquanto G, B, V e M ocupam as teclas que ficaram livres. Todas as outras teclas, incluindo as teclas de posição inicial que aprende primeiro, permanecem exatamente onde ficam no Colemak padrão.
O nome da variante descreve a alteração. No Colemak padrão, D fica na tecla identificada como G e H fica na tecla identificada como H. Essas duas teclas ficam nas colunas centrais do teclado. Para chegar a elas, o dedo indicador precisa deslocar toda a mão lateralmente. Por isso, o projeto Mod-DH considerou essas teclas o ponto mais fraco de um layout que, de resto, é bom, e moveu as duas letras uma linha para baixo.
Se ainda está a aprender um layout, escolha o Mod-DH e não precisa de comparar variantes. Se já escreve em Colemak padrão sem pensar, prepare-se para várias semanas de menor velocidade em troca de um ganho de conforto que nenhum teste de velocidade consegue mostrar. Este guia apresenta primeiro a alteração exata e, depois, a parte relacionada com Linux: o nome da variante a solicitar e o que fazer quando o sistema não a disponibiliza.
Os dois layouts, lado a lado
Colemak padrão, apenas letras:
q w f p g j l u y ;
a r s t d h n e i o
z x c v b k m , . /Colemak Mod-DH, apenas letras:
q w f p b j l u y ;
a r s t g m n e i o
z x c d v k h , . /Seis letras são diferentes. A alteração é mais fácil de entender como quatro movimentos na mão esquerda e uma troca na mão direita. À esquerda: D desce da linha base para a linha inferior, G desce da linha superior para a coluna central que D deixou, B sobe para a linha superior onde estava G e V desliza uma tecla para a direita, ocupando a tecla que B deixou. À direita: H e M trocam de posição. Assim, H fica sob o dedo indicador e M fica na coluna central.
Leia esses diagramas como dez colunas por linha, que é a disposição de um teclado matricial (ortolinear). Num teclado normal com teclas desalinhadas, o canto inferior esquerdo do Mod-DH tem uma segunda disposição. Essa disposição é explicada mais abaixo.
Por que D é um problema tão grande no Colemak padrão?
Os dedos indicadores ficam apoiados em duas teclas da fila inicial: a tecla identificada como F, à esquerda, que escreve T em ambos os layouts, e a tecla identificada como J, à direita, que escreve N em ambos os layouts. Cada dedo indicador também controla a coluna ao lado, formada pelas teclas identificadas como G e H. Nenhuma mão cobre as duas colunas sem se mover, porque o dedo não é comprido o suficiente. Por isso, a mão desloca-se lateralmente, e os outros três dedos saem das respetivas teclas da fila inicial. Esse movimento lateral é o mais dispendioso na digitação sem olhar para o teclado e é precisamente o movimento que o Mod-DH elimina.
O Colemak padrão coloca D na tecla identificada como G e H na tecla identificada como H, fazendo com que as duas teclas da coluna central tenham letras frequentes. O Mod-DH coloca D na tecla identificada como V e H na tecla identificada como M, usando a disposição mostrada no diagrama acima. Num teclado com escalonamento, cada uma dessas teclas fica aproximadamente meia largura de tecla à direita da tecla inicial do respetivo dedo indicador. Assim, o dedo dobra-se para baixo dentro da sua própria coluna, e a mão permanece no lugar. As letras que passam a ocupar as colunas centrais são G, à esquerda, e M, à direita.
Toda a argumentação depende da frequência com que cada letra é digitada.
The data behind this chart
[
{
"label": "H",
"frequency_pct": 6.1
},
{
"label": "D",
"frequency_pct": 4.3
},
{
"label": "M",
"frequency_pct": 2.4
},
{
"label": "G",
"frequency_pct": 2.0
},
{
"label": "B",
"frequency_pct": 1.5
},
{
"label": "V",
"frequency_pct": 1.0
}
]Estes são valores publicados típicos para textos comuns em inglês, e variam alguns décimos de ponto dependendo do corpus usado na contagem. A ordenação mantém-se estável. H corresponde a 6.1 por cento das letras digitadas e D corresponde a 4.3 por cento, enquanto M corresponde a 2.4 por cento, G corresponde a 2.0 por cento e V corresponde a 1.0 por cento. O Mod-DH não elimina o alcance lateral. Ele reserva esse alcance para letras raras, em vez de o usar para letras comuns, e precisa de 6 movimentos de letras para fazer isso.
O que permanece igual?
- As teclas de posição inicial A R S T, à esquerda, e N E I O, à direita, não mudam. Essas oito teclas concentram a maior parte da digitação e são a parte do Colemak que aprendeu primeiro.
- A linha superior é idêntica, exceto por uma tecla: Q W F P à esquerda e J L U Y, com o ponto e vírgula, à direita.
- As teclas de pontuação do lado direito não mudam.
- A linha dos números e as teclas modificadoras permanecem inalteradas.
- Os jogos configurados para WASD comportam-se da mesma forma nos dois layouts, porque essas quatro teclas físicas contêm as mesmas letras em ambos.
Uma coisa não permanece igual após a mudança. O Colemak padrão mantém Z, X, C e V nas respetivas teclas QWERTY. Assim, Ctrl+Z, Ctrl+X, Ctrl+C e Ctrl+V continuam sob os dedos que as utilizam desde o primeiro computador. O Mod-DH precisa da linha inferior esquerda para D, por isso esse grupo tem de mudar.
Há duas disposições dessa área em circulação, e o diagrama acima mostra apenas uma delas. A disposição simples mantém Z, X e C nas teclas identificadas como Z, X e C, e move V uma tecla para a direita, para a tecla identificada como B. O angle mod desloca todo o grupo uma tecla para a esquerda. Assim, o indicador esquerdo dobra-se para alcançar D, em vez de descer e avançar para a direita. Um teclado ISO tem uma tecla adicional entre Shift esquerdo e Z, e o angle mod utiliza-a. Um teclado ANSI não tem essa tecla. Por isso, a versão ANSI tem de deslocar Z, o que é aceitável porque Z é a letra menos frequente em inglês.
É por isso que os nomes das variantes fornecidas incluem o tipo de teclado. Escolha a variante que corresponde ao teclado à sua frente e prima a tecla identificada como Z. O resultado indica qual das duas disposições está ativa e quais dos seus atalhos de edição mudaram.
Você deve mudar do Colemak padrão?
- Você ainda está a aprender ou ainda usa QWERTY: escolha Mod-DH. Não é mais difícil de aprender do que o Colemak padrão e nunca mais terá de pensar nesta página. Se ainda não adotou o Colemak, essa é a questão anterior; como o Colemak se compara com Dvorak e QWERTY é o local para a decidir.
- Você escreve fluentemente com o Colemak padrão: o ganho é real e pequeno, e o custo são semanas. Seis letras são suficientes para interromper a escrita automática, e as duas mais importantes pertencem aos dedos indicadores, que aparecem numa grande parte das palavras em inglês. Quem fez a mudança descreve alguns dias de escrita dolorosamente lenta e algumas semanas até recuperar a velocidade anterior.
- Você já tem um teclado programável: este é o caso mais simples. A mudança consiste numa compilação do firmware, e a reversão noutra. Experimente durante um mês e mantenha o que preferir.
- Você escreve noutra língua durante a maior parte do dia: os dados de frequência acima referem-se ao inglês. Verifique a sua própria língua antes de aceitar este argumento, porque D, H, G e M não têm o mesmo peso em todas as línguas.
- As suas mãos doem: o layout é apenas um dos vários fatores, juntamente com a altura da secretária, a cadeira, o teclado e as horas que passa sentado. Não espere que trocar letras resolva um problema causado pelo resto da configuração.
Como digitar Colemak Mod-DH no Linux?
Consulte o que o seu sistema já tem. Em agosto de 2026, as variantes Mod-DH são fornecidas pelo xkeyboard-config, a base de dados de teclados usada por todos os ambientes de desktop Linux.
localectl list-x11-keymap-variants us | grep colemakUm sistema atualizado lista colemak e as entradas Mod-DH. colemak_dh é a versão ANSI, colemak_dh_iso é a versão ISO, colemak_dh_ortho destina-se a teclados matriciais, e colemak_dh_wide e colemak_dh_wide_iso são as versões largas, que deslocam a mão direita uma coluna para fora. O layout UK também inclui uma variante Mod-DH. Por isso, execute o mesmo comando com gb se usar um teclado UK. Se o grep não mostrar nada, a versão do seu xkeyboard-config é anterior a estas variantes. Nesse caso, consulte a próxima seção.
Teste a configuração numa sessão X antes de a tornar permanente.
setxkbmap -layout us -variant colemak_dh
setxkbmap -querysetxkbmap -query mostra o layout e a variante atualmente ativos, para que possa confirmar se a alteração foi aplicada. Digite algumas frases e volte ao layout anterior com setxkbmap -layout us. Se a variante não existir no seu sistema, o comando falha com Error loading new keyboard description e o layout permanece inalterado.
Observe o que esse comando não faz. Ele afeta apenas a sessão X em execução, desaparece ao terminar a sessão e não tem efeito no Wayland, onde o compositor controla o mapa de teclas. Tornar um layout permanente é uma tarefa diferente em cada desktop, e esse procedimento já está documentado em configurar o Colemak permanentemente na consola, no X11 e no Wayland. Todas as etapas desse guia aplicam-se a esta variante. Escreva colemak_dh onde o guia indicar colemak.
E se o sistema não tiver uma variante colemak_dh?
Há três formas de obter o layout, e cada uma deixa de funcionar num ponto diferente.
Uma variante xkb personalizada. Escreva as definições das teclas num ficheiro de símbolos e registe a variante. Depois, use-a pelo nome, como uma variante fornecida por um pacote. O mecanismo é o mesmo, por isso o comportamento é idêntico e abrange sessões X11 e Wayland. O custo é a manutenção: um ficheiro que edite em /usr/share/X11/xkb pertence ao pacote xkeyboard-config, por isso uma atualização pode substituí-lo. Também terá de o instalar novamente em cada máquina onde o utilizar.
Um remapeador em userspace. O keyd lê o teclado através de evdev, a camada de entrada do kernel, e escreve as teclas remapeadas através de uinput, o dispositivo de injeção de entrada do kernel. A troca ocorre antes de qualquer servidor gráfico ver a tecla. Assim, um único ficheiro abrange uma sessão X, uma sessão Wayland e uma consola de texto sem ambiente gráfico. O mapa fica em /etc/keyd/default.conf:
[ids]
*
[main]
e = f
r = p
t = b
y = j
u = l
i = u
o = y
s = r
d = s
f = t
h = m
j = n
k = e
l = i
v = d
b = v
n = k
m = hCada linha indica que a tecla física identificada à esquerda passa a enviar a tecla identificada à direita. As teclas que não mudam ficam de fora. A tecla de ponto e vírgula muda nos dois sentidos e foi omitida de propósito acima: execute keyd list-keys para obter o nome usado pela sua compilação e, depois, adicione essas duas linhas. Carregue a configuração e confirme o funcionamento:
sudo systemctl enable --now keyd
sudo keyd reload
keyd monitorkeyd monitor mostra cada tecla tal como o keyd a vê. É assim que pode detetar uma tecla remapeada duas vezes. Reponha o layout do sistema para US QWERTY simples antes de ativar o keyd, porque a saída do keyd continua a ser interpretada pelo layout configurado. Dois remapeamentos em série produzem letras que não correspondem a nenhum layout.
Firmware do teclado. QMK, ZMK e Vial colocam o layout dentro do teclado. A placa envia a letra pretendida, e o host nunca sabe que ocorreu um remapeamento. Com QMK, o processo consiste em compilar e gravar o firmware:
qmk setup
qmk list-keyboards
qmk compile -kb planck/rev6 -km default
qmk flash -kb planck/rev6 -km defaultOs nomes do teclado e do keymap acima são apenas exemplos. Substitua planck/rev6 pelo valor apresentado por qmk list-keyboards para a sua placa. Substitua default pelo nome do diretório do keymap que contém o seu layout Mod-DH.
Vial e VIA fazem o mesmo através de um editor gráfico por USB, se o firmware da sua placa os suportar. Assim, pode mover uma tecla sem usar um compilador.
Qual método funciona numa consola de texto?
Apenas o firmware acompanha-o em todo o lado. Uma variante xkb pertence a uma sessão numa máquina. O keyd pertence a uma máquina e precisa de root nessa máquina. O teclado pertence-lhe: ligue-o a uma shell de recuperação, ao ecrã de configuração UEFI, a um sistema acabado de instalar ou a uma consola série, e ele escreve Mod-DH, porque nada do outro lado precisa de saber o layout.
Isto é menos relevante para o trabalho remoto do que muitas pessoas esperam, e mais relevante para consolas locais. Quando estabelece uma ligação SSH a uma VPS, o servidor nunca vê o seu layout: o terminal transforma as teclas premidas em caracteres e envia esses caracteres, pelo que o mapa de teclado da máquina remota é irrelevante. O problema surge numa consola à sua frente, como uma shell de recuperação depois de um arranque falhado, ou uma bancada de trabalho permanente que mantém num TTY adicional. A consola virtual do Linux tem o seu próprio sistema de mapas de teclado, separado do xkb, e as definições do ambiente de trabalho não o afetam.
No Debian e no Ubuntu, o mapa de teclado da consola é gerado a partir dos dados xkb pelo ckbcomp, pelo que a consola pode usar o mesmo nome de variante:
ckbcomp us colemak_dh | sudo loadkeys -Isto mantém-se até ao próximo reboot. Para o manter, defina XKBLAYOUT e XKBVARIANT em /etc/default/keyboard e execute sudo setupcon. Nas distribuições sem console-setup, fica limitado aos mapas de teclado fornecidos pelo kbd, que são sobretudo QWERTY: confirme com localectl list-keymaps | grep -i colemak antes de assumir que existe um mapa Colemak-DH. Quando não existir, o keyd é o caminho mais curto, porque um único ficheiro abrange simultaneamente a consola e a sessão gráfica.
O que falha depois da mudança?
Duas camadas de remapeamento. Uma placa com Mod-DH gravado e um host configurado com colemak_dh produz letras de nenhum dos dois layouts, porque os dois mapas são compostos. Prima a tecla identificada como S: a placa envia R, o layout do host interpreta isso como a tecla R e escreve P. Faça o mapeamento num único local.
A linha inferior errada para a sua placa. Escolher colemak_dh num teclado ISO ou colemak_dh_iso num teclado ANSI coloca incorretamente as letras junto ao canto inferior esquerdo. Prima a tecla identificada como Z logo depois da mudança, porque é nesse canto que as duas disposições diferem.
O ecrã de início de sessão. GDM e SDDM mantêm a sua própria configuração de teclado, por isso o pedido de palavra-passe ainda pode usar QWERTY quando a sua sessão já não usa. keyd e o firmware evitam este problema, porque ambos estão ativos antes de o greeter apresentar qualquer elemento.
Caps Lock. O layout publicado do Colemak também transforma Caps Lock em Backspace, e as implementações divergem quanto à inclusão dessa alteração. Verifique essa tecla logo depois da mudança. Descobrir o problema a meio de uma frase é desagradável.
A velocidade, durante algum tempo. Espere que os primeiros dois dias sejam suficientemente maus para considerar voltar atrás. Isso é normal e acontece com qualquer pessoa que mude de layout.
FAQ
Vale a pena mudar para o Colemak Mod-DH se já escrevo com o Colemak padrão?
Se a sua digitação já é automática, a resposta honesta geralmente é não. Seis letras mudam de posição, duas delas são letras comuns do dedo indicador, e isso é suficiente para quebrar o reflexo que levou meses a desenvolver. Pessoas que fizeram a mudança descrevem alguns dias de digitação muito lenta e algumas semanas até recuperarem a velocidade anterior. O ganho é conforto, não velocidade: D e H deixam de exigir um movimento lateral da mão. Faça a mudança se os seus dedos indicadores causarem desconforto ou se tiver um teclado programável em que reverter a alteração exigir apenas um flash.
O Colemak Mod-DH quebra Ctrl+Z, Ctrl+X, Ctrl+C e Ctrl+V?
Ele altera parte desse conjunto, mas o Colemak padrão não. O Colemak padrão mantém Z, X, C e V nas teclas QWERTY correspondentes, por isso os quatro atalhos continuam onde a mão espera encontrá-los. O Mod-DH precisa da linha inferior esquerda para D, por isso alguma tecla tem de mudar. Na disposição simples, Z, X e C permanecem no lugar e V move-se uma tecla para a direita. Na disposição com angle mod, o grupo move-se uma tecla para a esquerda e Z é reposicionado. Prima a tecla identificada como Z depois da mudança para verificar qual disposição a sua implementação disponibiliza.
Como verifico se o meu sistema Linux tem a variante colemak_dh?
Execute localectl list-x11-keymap-variants us | grep colemak. Tudo o que aparecer nessa lista pode ser selecionado pelo nome. Teste-a numa sessão X com setxkbmap -layout us -variant colemak_dh e confirme com setxkbmap -query. Se a variante estiver ausente, setxkbmap imprime Error loading new keyboard description e a disposição do teclado não muda. Nesse caso, as opções são uma variante xkb personalizada, o remapeador keyd ou o firmware do teclado.
O Colemak Mod-DH funciona na consola de texto do Linux?
Não por si só. A consola virtual tem o seu próprio mapa de teclado, carregado por loadkeys, e não lê as definições xkb do ambiente gráfico. No Debian e no Ubuntu, ckbcomp us colemak_dh | sudo loadkeys - converte a variante xkb num mapa de teclado da consola para o boot atual, e definir XKBVARIANT em /etc/default/keyboard, seguido de sudo setupcon, faz com que a alteração persista após um reboot. O keyd funciona na consola em qualquer distribuição porque faz o remapeamento na camada de entrada do kernel. O firmware também funciona nesse ambiente e não requer qualquer instalação na máquina.
Que variante Mod-DH devo escolher para o meu teclado?
Escolha a variante de acordo com o teclado físico. colemak_dh destina-se a teclados ANSI, com uma tecla Enter larga e plana e uma tecla Shift esquerda comprida. colemak_dh_iso destina-se a teclados ISO, que têm uma tecla Enter alta e uma tecla adicional entre Shift esquerdo e Z. colemak_dh_ortho destina-se a teclados matriciais com colunas retas. As variantes wide movem a mão direita uma coluna para fora e só fazem sentido se tiver decidido que pretende essa disposição. Se as letras próximas do canto inferior esquerdo aparecerem erradas, escolheu a variante incorreta.