SSD Nodes Learn Hosting plans →
Guías Matt ConnorPor Matt Connor · Actualizado 2026-08-23

Cómo cambiar a Colemak en Linux

Configura Colemak en la consola de Linux, X11 y Wayland. Comprueba por qué SSH no necesita distribución y qué ocurre con Vim hjkl y las teclas Ctrl.

Dónde se configura la distribución Colemak en Linux

Colemak no es una única configuración para todo el sistema en Linux. La distribución la aplica el componente que está leyendo el teclado en ese momento, por lo que se configura en uno de estos tres lugares: la consola de texto, el servidor X11 o el compositor Wayland. Si la configura en el lugar equivocado, no ocurrirá nada visible.

Existe una cuarta opción que omite por completo el sistema operativo. Un teclado que remapea las teclas en su propio firmware, como un teclado que ejecuta QMK o VIA, envía los códigos correspondientes a las letras que desea escribir. Así, cualquier máquina a la que lo conecte usará Colemak sin ninguna configuración, incluida la consola de un servidor y una máquina que no sea de su propiedad. La desventaja es que el teclado del portátil seguirá escribiendo en QWERTY.

El resto de esta guía cubre las tres capas de software, explica por qué un servidor remoto casi nunca necesita ninguna de ellas y describe cómo afecta el cambio a Vim y a los atajos de teclado del terminal.

Compruebe lo que ya tiene el sistema

Ejecute estos comandos antes de cambiar nada. Muestran la configuración actual y la lista de variantes de Colemak que ofrece la base de datos de teclados de X.

localectl status
setxkbmap -query
localectl list-x11-keymap-variants us | grep colemak

El último comando debe mostrar colemak y colemak_dh. Colemak forma parte de xkeyboard-config desde hace años. Colemak-DH llegó en la versión 2.34, por lo que sólo faltará en versiones antiguas. En agosto de 2026, Ubuntu 24.04 y Debian 13 incluyen una versión más reciente.

Si setxkbmap -query indica que no puede abrir una pantalla, está en una sesión de Wayland y el compositor controla la distribución del teclado. Ese caso tiene su propia sección más abajo.

Colemak o Colemak-DH

Colemak cambia diecisiete teclas respecto a sus posiciones en QWERTY y deja diez sin cambios, incluidas Z, X, C y V. Por eso, los atajos para deshacer, cortar, copiar y pegar siguen donde la mano izquierda los espera. Esa compatibilidad explica por completo el diseño de esta distribución.

Colemak-DH es una modificación de Colemak. Reubica D, B y G, e intercambia H con M, porque Colemak estándar hace que se escriban D y H estirando un dedo índice hasta la columna central del teclado. La modificación oficial mantiene cada letra en el mismo dedo que usaba en Colemak. Por tanto, quien escribe con Colemak y cambia a DH se enfrenta a un cambio pequeño, no a una distribución nueva. La variante de XKB es colemak_dh, y colemak_dh_iso corresponde a los teclados que tienen una tecla adicional junto a Shift izquierdo.

Si viene de QWERTY, cualquiera de las dos opciones exige un único proceso de reaprendizaje. Elija según la comodidad y no le dé más vueltas. Cambiar de distribución una segunda vez cuesta aproximadamente lo mismo que el primer cambio, porque lo que está reconstruyendo es la memoria motora asociada a las posiciones de las teclas. Si todavía no ha decidido si quiere abandonar QWERTY, resuélvalo consultando cómo se comparan Colemak, Dvorak y QWERTY antes de dedicar un mes a reconstruir esa memoria motora.

Configurar Colemak en X11 con setxkbmap y localectl

setxkbmap us -variant colemak
setxkbmap -query

setxkbmap -query ahora debería mostrar variant: colemak, y al escribir en cualquier ventana deberían aparecer letras de Colemak. El cambio dura mientras dure la sesión X y no escribe nada en el disco, por lo que es una forma segura de probar la distribución durante una hora.

Para conservarla después de reiniciar:

sudo localectl set-x11-keymap us pc105 colemak
localectl status

El orden de los argumentos es distribución, modelo y variante. localectl status ahora debería mostrar X11 Layout: us y X11 Variant: colemak. localectl también convierte la selección en el mapa de teclado de consola más cercano, salvo que añada --no-convert. Por tanto, en muchos sistemas este único comando también configura la tty. En Debian y Ubuntu, compruebe /etc/default/keyboard después, porque console-setup lee ese archivo durante el arranque.

Establecer Colemak en Wayland

Una sesión de Wayland no tiene un servidor X que configurar. El compositor carga el mapa de teclado y lo entrega a cada aplicación, por lo que la distribución es un ajuste del compositor. Por eso setxkbmap parece fallar en ese entorno: no encuentra una pantalla o sólo cambia XWayland, y las aplicaciones nativas de Wayland lo ignoran.

En GNOME, el ajuste es una clave de gsettings:

gsettings set org.gnome.desktop.input-sources sources "[('xkb', 'us+colemak')]"

Se aplica de inmediato, sin cerrar la sesión. La cadena us+colemak combina la distribución y la variante con un signo más.

En sway, añádala a ~/.config/sway/config:

input type:keyboard {
    xkb_layout us
    xkb_variant colemak_dh
}

Recargue la configuración con swaymsg reload. swaymsg -t get_inputs muestra todos los dispositivos de entrada y la distribución que usa cada uno. Ejecute este comando cuando sólo un teclado presente problemas.

En KDE Plasma, abra Configuración del sistema, seleccione Teclado, después Distribuciones y añada English (US) con la variante Colemak.

Configurar Colemak en la consola de texto

La consola es el tty de texto plano al que se accede con Ctrl+Alt+F3 y mantiene su propio mapa de teclado. Ninguna configuración de X11 ni de un compositor se aplica a ella, algo importante si trabaja en un entorno de terminal en una consola virtual sin entorno gráfico.

En Debian y Ubuntu, edite /etc/default/keyboard:

XKBMODEL="pc105"
XKBLAYOUT="us"
XKBVARIANT="colemak"
XKBOPTIONS=""

Después, aplique el cambio:

sudo setupcon

Escriba en la consola para confirmarlo. console-setup convierte esa descripción de XKB en un mapa de teclado de consola con ckbcomp, por lo que la consola y X usan una única descripción en estos sistemas.

En las distribuciones que usan directamente mapas de teclado de kbd, consulte primero el nombre:

localectl list-keymaps | grep -i -e colemak -e latin9
sudo localectl set-keymap en-latin9

El paquete kbd incluye el mapa de consola de Colemak como i386/colemak/en-latin9, por lo que el nombre que normalmente debe pasar es en-latin9 y no colemak. Pase un nombre que aparezca en la lista, porque se rechaza cualquier nombre inexistente.

sudo loadkeys en-latin9 cambia inmediatamente la consola actual y sudo loadkeys us la restaura. Considere loadkeys una prueba, no una configuración: dura hasta el reinicio y, en Debian y Ubuntu, la ejecución de setupcon durante el arranque restaura lo que indique /etc/default/keyboard.

¿Necesita un VPS sin interfaz gráfica una distribución Colemak?

Casi nunca, y conviene entender el motivo. SSH transmite caracteres, no posiciones de teclas. El emulador de terminal recibe la pulsación, la distribución local la convierte en un carácter y sólo ese carácter viaja por la conexión. El servidor recibe n y no puede saber qué tecla física lo produjo. Por tanto, la distribución configurada en el portátil se mantiene en todas las sesiones SSH, en tmux y en todos los editores que ejecute de forma remota. La máquina remota no necesita ninguna configuración de teclado.

Téngalo en cuenta antes de empezar a editar archivos de teclado en servidores de producción. Si administra una flota de servidores Linux, la distribución pertenece al equipo que tiene delante y no a la flota, por lo que no debe incluirse en el aprovisionamiento. Los primeros diez minutos en un VPS nuevo permiten realizar tareas más útiles que esta.

Conviene planificar dos excepciones. La primera es una consola conectada directamente a la máquina. La consola del navegador del panel del proveedor suele presentarse ante la máquina virtual como un teclado. Por tanto, las pulsaciones llegan como scancodes y el mapa de teclado de la consola del servidor determina qué carácter aparece. Este es el único lugar donde una distribución configurada en el servidor tiene efecto. También es la vía de recuperación cuando SSH deja de funcionar, por lo que dejar allí un mapa de teclado de consola a medio configurar supone un riesgo real.

Una consola serie funciona de otra forma, porque transmite caracteres y se aplica la distribución local. La segunda excepción es una máquina compartida. El mapa de teclado de la consola se aplica a todo el sistema. Configurar Colemak en un equipo al que acceden otras personas también lo cambia para ellas, y no sabrán por qué.

Qué ocurre con las teclas hjkl de Vim

En Colemak, h no mueve el cursor. Las otras tres sí. j está bajo la Y de QWERTY, k está bajo la N de QWERTY y l está bajo la U de QWERTY, por lo que las teclas de movimiento quedan repartidas en tres filas en lugar de quedar bajo cuatro dedos.

Hay dos opciones viables, y ambas tienen usuarios reales.

Mantenga la configuración predeterminada y vuelva a aprender las posiciones. No se rompe nada más de su configuración, todos los plugins siguen funcionando y todos los consejos de Vim escritos por otras personas siguen siendo aplicables exactamente como están escritos.

También puede reasignar las cuatro teclas que quedan bajo la mano derecha, donde antes estaban hjkl. En Colemak, esas teclas producen h, n, e e i. En Colemak-DH, las mismas cuatro teclas físicas producen m, n, e e i, porque DH intercambió H y M.

noremap n j
noremap e k
noremap i l
noremap l i
noremap k n

n ahora mueve el cursor hacia abajo, e lo mueve hacia arriba, i lo mueve hacia la derecha y h ya lo movía hacia la izquierda. Las dos últimas líneas recuperan los comandos que desplazó: l inicia el modo de inserción y k repite la última búsqueda. Aplique el mismo tratamiento a las mayúsculas; de lo contrario, Shift más una tecla de movimiento producirá un resultado inesperado.

La opción langmap de Vim realiza una tarea similar con menos líneas:

set langmap=nj,ek,il,li,kn

Cada par se interpreta como el carácter que escribió, seguido del carácter que Vim debe procesar. Sólo se aplica al modo normal, por lo que el modo de inserción sigue escribiendo texto Colemak con normalidad. La ayuda oficial de Vim documenta dos limitaciones: langmap no se aplica a las combinaciones con Ctrl o Alt, y las asignaciones de plugins escritas para las teclas predeterminadas pueden comportarse de forma extraña al usarla.

Elija la opción que prefiera, pero hágalo una sola vez. Abandonar una reasignación después de un mes le hará perder otro mes.

Qué ocurre con los atajos de terminal

Un código de control del terminal procede del carácter, no de la tecla física, por lo que cada atajo con Ctrl cambia con la distribución. Ctrl+C, Ctrl+Z, Ctrl+X y Ctrl+V mantienen su posición, porque Colemak deja deliberadamente Z, X, C y V donde están en QWERTY.

Cuatro atajos que usa a diario sí cambian. Ctrl+D, que finaliza la entrada, está ahora donde QWERTY tiene G. Ctrl+R, la búsqueda en el historial, está donde QWERTY tiene S. Ctrl+E, que va al final de la línea, está donde QWERTY tiene K. Ctrl+U, que borra la línea, está donde QWERTY tiene I.

tmux mantiene su prefijo predeterminado, porque B no cambia de posición en Colemak. En Colemak-DH, B pasa a la fila superior y el prefijo cambia con ella. Es lo primero que notará si mantiene una sesión de tmux de larga duración en un VPS. Cambiar el prefijo a una tecla que prefiera requiere modificar una sola línea y es más fácil que volver a entrenar el mismo reflejo.

Los atajos del escritorio siguen la misma regla. Una asignación en Super+E cambia con la distribución, porque está definida por el carácter. Una asignación en Super+F1 mantiene su posición, porque las teclas de función no se remapean con la distribución.

Cuánto tiempo le cuesta el cambio

Nadie puede darle una cifra exacta para sus manos. La escritura al tacto depende de la memoria motora. No está aprendiendo dónde están las letras. Está reconstruyendo el reflejo que convierte una palabra en una secuencia de dedos. Por eso, el único factor que ayuda es el tiempo que pasa escribiendo.

Lo que indican los usuarios, según registros de práctica personales y no según una medición controlada, es una primera semana con una velocidad muy inferior a la mitad de la anterior y una recuperación de esa velocidad entre uno y tres meses de uso diario. La diferencia entre personas es amplia. Por tanto, considere esas cifras como una tendencia general y no como un calendario.

Dos hábitos hacen que el proceso sea más lento. Alternar entre QWERTY y Colemak durante el día mantiene débiles ambos reflejos. Por eso, la mayoría de las personas que completan el cambio lo mantienen de forma exclusiva en su equipo principal. Empezar durante una semana con mucha carga de trabajo obliga a escribir mal bajo presión. Esto le enseña a mirar las teclas.

Configure el método para volver antes de necesitarlo. El momento en que querrá usar QWERTY de nuevo será precisamente cuando algo se haya averiado y alguien esté esperando.

Cómo volver rápidamente a QWERTY

En X11, setxkbmap us restaura QWERTY de inmediato. En la consola, sudo loadkeys us hace lo mismo. Para deshacer la configuración persistente, ejecute sudo localectl set-x11-keymap us.

Un cambio de distribución es mejor que un comando que debe escribir con una distribución que todavía no puede usar:

setxkbmap -layout us,us -variant colemak, -option grp:win_space_toggle

Esto carga Colemak como primera distribución y US sin modificaciones como segunda. Super+Space alterna entre ambas. La coma final de colemak, no es un error: asigna la variante colemak a la primera distribución y ninguna variante a la segunda. En GNOME, añada ambas fuentes de entrada en Settings. Super+Space ya permite alternar entre ellas.

Hay dos solicitudes de contraseña fuera de la sesión de escritorio que requieren atención independiente. La pantalla de inicio de sesión se inicia antes de aplicar la configuración de la sesión. Por eso, pruébela cerrando la sesión en lugar de confiar en la configuración. Si el disco está cifrado, la solicitud de contraseña se ejecuta desde initramfs, que contiene su propia copia de la distribución del teclado. En Debian y Ubuntu, regenérelo con sudo update-initramfs -u después de cambiar /etc/default/keyboard. Después, reinicie una vez para probarlo mientras todavía tenga otra forma de acceder al equipo.

¿Puedo mantener un programa en QWERTY?

La distribución se aplica antes de que una aplicación reciba la tecla. El servidor X o el compositor convierte un scancode en un carácter y entrega ese carácter, por lo que una aplicación no puede solicitar otra distribución. Sólo puede reasignar lo que recibe. Por eso la corrección para Vim se configura en Vim y no existe un cambio general de distribución por ventana que se pueda utilizar.

Hay dos métodos que funcionan. El primero es por dispositivo. Si la escritura en QWERTY se realiza en un teclado independiente, configure la distribución en ese dispositivo en lugar de hacerlo en todo el sistema:

xinput list
setxkbmap -device 12 -layout us

Obtenga el id de xinput list y confirme el resultado escribiendo alternativamente en cada teclado. sway acepta la misma configuración por identificador de entrada desde swaymsg -t get_inputs, y un selector más específico tiene prioridad sobre type:keyboard.

El segundo método consiste en realizar la reasignación dentro de la aplicación, como hace langmap de Vim. Los juegos casi siempre tienen una pantalla para configurar las asignaciones de teclas, y reasignar allí las teclas de movimiento requiere menos tiempo que intentar controlar la distribución desde fuera. Para las aplicaciones que no ofrecen ninguna de las dos opciones, configure el cambio de distribución anterior y actívelo antes de iniciar la aplicación.

FAQ

¿Necesito configurar Colemak en mi VPS?

No, si accede a él mediante SSH. SSH transporta caracteres, por lo que la distribución se resuelve en su portátil antes de enviar nada y el servidor recibe los mismos bytes que recibiría de un usuario con teclado QWERTY. La excepción es la consola del navegador del panel de su proveedor, que se conecta a la máquina virtual como un teclado y utiliza el mapa de teclado de la propia consola del servidor. Esa consola es la vía de recuperación cuando SSH falla. Por tanto, cámbielo sólo si está seguro y pruébelo mientras SSH siga funcionando.

¿Debo aprender Colemak o Colemak-DH?

Ambas requieren volver a aprender desde QWERTY, así que elija según la comodidad y no según el coste de migración. Colemak-DH reubica D, B y G, e intercambia H con M, porque Colemak estándar escribe D y H con un estiramiento del dedo índice hacia la columna central. Los nombres de las variantes XKB son colemak y colemak_dh, con colemak_dh_iso para los teclados que tienen una tecla adicional junto a la tecla Mayús izquierda. Ejecute localectl list-x11-keymap-variants us | grep colemak para ver cuáles ofrece su sistema.

¿Qué ocurre con las teclas hjkl de Vim en Colemak?

h permanece en su posición. j pasa a la posición de la Y de QWERTY, k a la de la N de QWERTY y l a la de la U de QWERTY, por lo que las teclas de movimiento del cursor se distribuyen en tres filas. Puede volver a aprenderlas en sus nuevas posiciones. Así mantendrá la compatibilidad con todos los complementos y tutoriales. También puede reasignar las cuatro teclas situadas bajo la mano derecha: h, n, e e i en Colemak, y m, n, e e i en Colemak-DH. La opción langmap de Vim realiza la misma función en el modo normal, aunque no se aplica a las combinaciones con Ctrl y puede causar conflictos con las asignaciones de los complementos.

¿Cuánto tardaré en volver a escribir a mi velocidad anterior?

Espere semanas, no días, porque se trata de memoria motora y el único método es practicar. Los registros de práctica publicados por usuarios suelen describir una primera semana muy por debajo de la mitad de la velocidad anterior y una recuperación de esa velocidad después de uno a tres meses de uso diario. Alternar entre QWERTY y Colemak cada día alarga el proceso, porque ninguno de los dos reflejos llega a consolidarse.

¿Por qué setxkbmap no hizo nada en mi escritorio?

Casi con toda seguridad porque la sesión utiliza Wayland. En Wayland, el compositor controla el mapa de teclado y lo aplica a cada aplicación, por lo que setxkbmap no puede encontrar una pantalla o sólo cambia XWayland, mientras que las aplicaciones nativas lo ignoran. Configure la distribución en el compositor: use la clave gsettings org.gnome.desktop.input-sources en GNOME, xkb_variant en la configuración de sway o la página Layouts de System Settings de KDE Plasma.