¿Cómo intercambiar mediante programación las mayúsculas y las teclas de esc?

17

Soy un usuario pesado de Vim y una de las primeras cosas que hago cuando comienzo a trabajar en una instalación limpia de ubuntu es cambiar el bloqueo de mayúsculas y las teclas Esc para reducir los movimientos de las manos sobre el teclado.

Hasta ahora lo he estado haciendo a través del diálogo de configuración del teclado, pero ahora estoy escribiendo un conjunto de scripts que configurarán Ubuntu de la manera que me gusta y no he podido encontrar un scriptable o forma programable para cambiar este elemento de configuración.

No estoy buscando opciones que cambien las claves en otro nivel que no sea gnome, entonces lo que estoy buscando es una forma de guionar este cambio y hacer que aparezca en la configuración de teclado que solía usar, si Decido revertirlo manualmente en el futuro.

    
pregunta Jacobo de Vera 19.04.2011 - 08:04

1 respuesta

22

Puede hacerlo a través de la GUI al abrir el panel de control Keyboard Preferences (en System -> Preferences ) y seleccionar la pestaña Layout . Haga clic en el botón Options... para abrir el cuadro de diálogo de opciones de diseño. Expanda la sección Caps Lock key behaviour y seleccione Swap ESC and Caps Lock .

Hay algunas maneras en que puede escribir este tipo de cosas.

Directamente a través de Xkb

Podemos hacer el cambio directamente con lo siguiente:

setxkbmap -option caps:swapescape

Puede desactivar todas las opciones de diseño actuales (que devolverán el bloqueo de mayúsculas a su comportamiento predeterminado) con:

setxkbmap -option ''

A través de GConf

El panel de control de preferencias del teclado almacena su configuración a través de gconf , con el diseño realmente aplicado por gnome-settings-daemon . Por lo tanto, puede hacer que gnome-settings-daemon ajuste el diseño actualizando gconf usted mismo.

La configuración relevante en este caso parece ser /desktop/gnome/peripherals/keyboard/kbd/options . Entonces puedes establecer la opción con:

gconftool-2 --set /desktop/gnome/peripherals/keyboard/kbd/options \
    --type list --list-type string \
    '[caps<tab>caps:swapescape]'

En lo anterior, <tab> debe ser un carácter de tabulación literal en lugar de espacios. Puede volver a desactivar el comportamiento configurando la clave gconf en una lista vacía.

    
respondido por el James Henstridge 19.04.2011 - 08:36

Lea otras preguntas en las etiquetas