¿Cómo vuelvo a asignar las teclas Bloq Mayús y Ctrl?

77

Me gustaría reasignar mis claves de tal Ctrlmanera que se comporte como la Caps Lockclave y viceversa. Además, si es posible, me gustaría que la configuración esté disponible solo para el usuario actualmente conectado. ¿Cómo puedo conseguir esto?

Soy un usuario de vim, a diferencia de otras personas que usan esta máquina, por lo que me gustaría esa configuración solo para mi cuenta.

k0pernikus
fuente
1
¿ Esto ayuda?
Mitch
Esto puede ser útil: the-flat-trantor-society.blogspot.com/2013/12/…
Keith Thompson el
44
Me horroriza que esta no sea una característica estándar en la configuración de Linux en la actualidad.
Edward Falk

Respuestas:

59

13.10+:

Instalar y utilizar gnome-tweak-tool> Keyboard & Mouse> Keyboard> Additional Layout Options> Caps Lock behavior.

Pre 13.10:

Abra el cuadro de diálogo Preferencias de teclado ( System -> Preferences -> Keyboard). En la pestaña de diseño, haga clic en el Options...botón. Expande la Ctrl key positionsección y selecciona Swap Ctrl and Caps Lock.

Esa configuración debe aplicarse cada vez que inicie sesión y solo afectará a su cuenta de usuario.

James Henstridge
fuente
2
Esta opción ha desaparecido en Ubuntu Saucy. No estoy seguro de cómo explicar esto, pero simplemente no está allí. Las preferencias del teclado no tienen "pestaña Diseño", pero hay un botón "configuración de diseño", y cuando hago clic en él, me lleva a la pestaña "Fuentes de entrada" del panel "Región e idioma", que misteriosamente carece de cualquier tipo del botón 'Opciones'. El único botón allí abre un teclado virtual en pantalla que me muestra la distribución de mi teclado roto sin ninguna forma de cambiar qué teclas se comportan de esa manera.
robru
44
Para Ubuntu 13.10, necesitará usar gnome-tweak-tool.
Jeremy Bicha
1
La opción Pre 13.10 me funciona en 14.04
JeremyKun
Igual que @JeremyKun. En mi caso, usando 14.04, la solución anterior a la 13.10 funcionó pero la 13.10+ no
funcionó
Gracias por esta respuesta! El gnome-tweak-tooles realmente agradable; También puede usarlo para detalles como "usar el bloqueo de mayúsculas para cambiar la distribución del teclado" (un favorito personal) y "cambiar Alt / Win" (que es útil si ha sido un usuario de Mac desde hace mucho tiempo ...)
Por Lundberg
63

Una de las mejores formas de hacerlo gráficamente es instalar Gnome Tweak Tool :

sudo apt-get install gnome-tweak-tool

  • Abra la herramienta de ajustes y haga clic en la sección de escritura en la columna izquierda.
  • Ahora debería ver el comportamiento de la tecla Bloq Mayús de línea a la izquierda.
  • Elija Hacer que las mayúsculas bloqueen una tecla Ctrl adicional en lugar de Desactivar en la lista desplegable y debería ser bueno.

Además, el panel de configuración no tarda mucho en aparecer en mi máquina, por lo que no tengo idea de cuál es el problema.

¡Disfruta tu nueva Ctrlllave!

Pierre Thalamy
fuente
Quería usar mi tecla MAYÚSCULAS para apagar mi pantalla. Configuré esto antes en la ventana Configuración del sistema> teclado, pero las MAYÚSCULAS todavía alternaban el estado y el LED de CapsLock. Así que desactivé la tecla con la herramienta que me recomendó (que tiene algunos errores de visualización por cierto - fondo de ventana transparente), que también impidió que mi acceso directo personalizado funcionara. Después de deshabilitar, tuve que configurar el acceso directo nuevamente para que funcione. Se configuró con el valor 0xff o algo así en lugar de MAYÚSCULAS. Pensé que este procedimiento podría ayudar a algunos futuros lectores con deseos similares.
Byte Commander
Cuando ejecuto gnome-tweak-tool desde la línea de comando, hay un mensaje de error acerca de que Shell no ejecuta DBus y luego cualquier intento que haga para cambiar la configuración no tiene efecto.
Edward Falk
1
Actualización: gnome-tweak-tool solo funciona dentro del gnome shell
Edward Falk
1
no hay sección de "escritura" en mi columna de la izquierda: solo Escritorio, Fuentes, Shell, Extensiones de Shell, Tema, Windows.
Reb.Cabin
2
Tenga en cuenta que la opción en gnome-tweak-tool para intercambiar está en "Posición de la tecla Ctrl", no en "Comportamiento de la tecla Bloq Mayús".
Phil Goetz
59

Aquí hay una manera de hacerlo sin instalar software adicional:

setxkbmap -layout us -option ctrl:nocaps

Fuente:

Jorge Castro
fuente
3
Esto no sobrevive después del reinicio. ¿Cómo puedo hacer esto permanente? Prefiero no poner esto en un script de inicio (por ejemplo, .bashrc).
nic
99
@nic También debe cambiar el archivo sudo vi /etc/default/keyboardy cambiar XKBOPTIONS="ctrl:nocaps". Ejecute el comando de Jorge después de eso, pero como setxkbmap -option ctrl:nocapstal, no cambia la distribución predeterminada del teclado.
Léo Léopold Hertz 준영
43

Abra lo siguiente para editar:

sudo vi /etc/default/keyboard

Y editar XKBOPTIONS="ctrl:swapcaps"

Luego, reconfigure:

sudo dpkg-reconfigure keyboard-configuration

o

/usr/bin/setxkbmap -option "ctrl:swapcaps"
nombre
fuente
La pregunta era "Me gustaría esa configuración solo para mi cuenta". Editar / etc / default / keyboard lo cambiará para todos.
skierpage
1
Tienes 3 pasos (1, 2, 3). ¿Te refieres a [(1 y 2) o 3] o [1 y (2 o 3)]?
jgomo3
¡Excelente! Ejecuté sudo dpkg-reconfigure keyboard-configurationy presioné varias veces, ¡y funcionó! EDITAR: sin embargo, después de cerrar sesión y volver a iniciar sesión, la configuración desapareció. :(
LeOn - Han Li
24

Para cambiar permanentemente el comportamiento:

  1. correr dconf-editor

  2. seleccionar org.gnome.desktop.input-sources

  3. Cambie xkb-optionsa ['ctrl:nocaps'](o agréguelo a cualquier opción existente)

o en la línea de comandos ( Atención - Este sobrescribe la configuración existente! ):

gsettings set org.gnome.desktop.input-sources xkb-options "['ctrl:nocaps']"
Geoff Jacobsen
fuente
Este revestimiento también se puede agregar a ~ / .profile para su portabilidad.
jthetzel
Esto no funcionó para mí en Kubuntu 16.04, incluso después de un reinicio.
zplizzi
3
La configuración de dconf se aplica de inmediato y es persistente, por lo que no tiene sentido ponerla en ~ / .profile y no es necesario reiniciarla. Esta configuración particular solo se aplica a Gnome / Unity, no a KDE que se usa en Kubuntu.
Anton Eliasson
4

Esta es una tarea fácil una vez que sabes cómo hacerlo.

1) Verifique el código clave de la suya. Ejecute este programa en la terminal.

xev


En este ejemplo, el terminal muestra que el código clave para mi kes "45".

2) Cámbielos como desee al crear este archivo:

gedit ~ / .Xmodmap

Su contenido debería verse así:

keycode 37 = Caps_Lock NoSymbol Caps_Lock keycode
66 = Control_L NoSymbol Control_L

(Cambie el número del código clave según sea necesario; consulte el paso "1")

Ilustración:
(Obs .: si quiero cambiar mi kdebería usar el "código clave 45" como se muestra en el paso "1").

4) Cerrar sesión y volver a iniciar sesión o reiniciar o ejecutar esto

xmodmap ~ / .Xmodmap

Espero que lo disfrutes ;-)

desgua
fuente
2
Tenga en cuenta que es probable que esta solución cause problemas para cualquier cosa que no sean los mapas de teclas más simples. La compatibilidad con xmodmap en el nuevo sistema xkb no es perfecta, por lo que probablemente sea mejor que se adhiera a xkb si es posible.
James Henstridge
@ James, ¿te gustaría explicar cómo podemos hacer eso?
desgua
Vea la otra respuesta a esta pregunta. El panel de control de teclado estándar construirá un mapa de teclas xkb a partir del diseño base que elija más las opciones que habilite.
James Henstridge
1
Bueno, puedes configurar los mismos mapas de teclas usando el setxkbmapprograma de línea de comandos . Es posible escribir nuevos mapas de teclas, pero un poco más complicado que las asignaciones de códigos de teclas Xmodmap. Es bueno que la mayoría de las variantes de opciones que desee ya estén disponibles.
James Henstridge
1
@James. He estado buscando y aprendiendo sobre setxkbmap. Pero no pude encontrar una respuesta para: ¿es posible reasignar una clave para lo que queramos? Por ejemplo, algo excéntrico como: "keycode 51 = bracketright braceright bracketright braceright masculino bar"?
desgua
4

Así es como hacerlo manualmente (sin herramientas adicionales), a través de XKB, que es el administrador de claves predeterminado para Ubuntus reciente. Modificar /usr/share/X11/xkb/symbols/pc, sección xkb_symbols "pc105":

//key <CAPS> {  [ Caps_Lock     ]   };
//key <LCTL> {  [ Control_L     ]   };
key <CAPS> {    [ Control_L ]   };
key <LCTL> {    [ Caps_Lock     ]   };

Iniciar sesión / cerrar sesión o reiniciar. Ver aquí para más detalles.

Alternativamente, puede intercambiar al nivel de códigos clave que emiten esos botones. Modify /usr/share/X11/xkb/keycodes/evdev:

<CAPS> = 64; //66;
<LCTL> = 66; //64

Tendrá sudo rm -rf /var/lib/xkb/*que aplicar los cambios.

Alex Fedulov
fuente
Gran punto sobre trabajar a nivel de los códigos clave. En mis computadoras portátiles que ejecutan Kubuntu Bionic, el simple cambio en el nivel de símbolos no es satisfactorio porque al presionar la tecla Caps física todavía se alterna el estado interno de Caps. ¡Cambiar los códigos clave funciona! Por cierto, extendí esto a tres teclas (Caps, Meta y RAlt) y me gustaría señalar que realmente necesita escribir en <CAPS> = *orig code of the physical key you want to act **as** CAPS*lugar de <CAPS> = *orig code of the key you want physical CAPS to act **as**(espero que la distinción sea clara). Esta distinción es necesaria en tales casos.
jamadagni
3

La respuesta aceptada es confusa porque gnome-tweak-tools no muestra ninguna sección de "tipeo".

En su lugar, haga clic en la sección "Teclado y mouse" y luego elija "Opción de diseño adicional". Allí, verá "Comportamiento de bloqueo de mayúsculas" que permite convertir el bloqueo de mayúsculas a diferentes teclas.

Captura de pantalla de tweak-tool

zerotimer
fuente
2

En distribuciones basadas en KDE (como KDE Neon o Kubuntu), este comportamiento se puede configurar en la configuración normal del sistema. Abra la configuración del sistema, seleccione "Dispositivos de entrada" => "Teclado" => "Avanzado". En la categoría "Posición de la tecla Ctrl", seleccione "Cambiar Ctrl y Bloq Mayús".

Captura de pantalla del módulo del teclado de configuración del sistema de KDE

Gerald Senarclens de Grancy
fuente
0

gnome-tweaks 3.28.1 no tiene Typingsección.
Por lo tanto, setxkbmap -layout us -option ctrl:nocapso setxkbmap -layout us -option ctrl:swapcapsserían opciones viables.

Para hacerlo permanente, puede consultar la respuesta de @name.

David Jung
fuente
Teclado y mouse -> opción de diseño adicional
Voyager