Sé cómo usar xmodmap para reasignar la tecla de bloqueo de mayúsculas para que actúe como una tecla de control o como una tecla de escape. Me gustaría combinar ambas características de la siguiente manera:
Cuando presiono, luego suelto, la tecla de bloqueo de mayúsculas, envía Escape. Cuando mantengo presionado el bloqueo de mayúsculas y presiono otra tecla (por ejemplo, A), envía Control-A.
¿Hay alguna combinación de xkb, xmodmap y algo más que pueda hacer que el bloqueo de mayúsculas se comporte de esta manera en X?
Estoy usando Ubuntu Precise en un Macbook Air 3,1.
Tengo esta configuración en mi Mac e intenté encontrar una forma de Ubuntu sin suerte.
Bueno, ahora está funcionando. Gracias tungd por considerarme para xcape . Lo que he hecho es realmente simple y directo.
En Preferencias del sistema> Distribución del teclado> Opciones ...> Posición de la tecla Ctrl, marqué 'Bloq Mayús como Ctrl'.
xcape -e 'Control_L = Escape'
Hecho, el Bloqueo de mayúsculas funciona como Ctrl cuando se usa como un modificador, y como Esc cuando se presiona solo (hay un ligero retraso de unos cientos de milisegundos, como se indica en el archivo README de xcape, por lo que aún no es tan óptimo como la solución Mac que usa KeyRemap4MacBook.)
fuente
gnome-tweak-tool
para mapearCaps Lock
aCtrl
, ya que no estáKeyboard layout
enSystem Settings
en Ubuntu 14.04. Entoncesxcape -e 'Control_L=Escape'
no funcionaba, pero después de usarxcape -d
He descubierto queCaps Lock
genera código de llave 66 y remapped que, respectivamente:xcape -e '#66=Escape'
.setxkbmap -option 'caps:ctrl_modifier'
xcape -e 'Caps_Lock=Escape'
setxkbmap -option 'caps:ctrl_modifier'
xcape -e 'Caps_Lock=Escape;Control_L=Escape;Control_R=Escape'
Estoy buscando esto también. Hace una semana, encontré una solución parcial usando
xmodmap
:Por supuesto, esto no funciona a la perfección, envía de manera efectiva tanto Escape como Ctrl al mismo tiempo cuando presiono CapsLock, pero estuve contento por un tiempo.
Finalmente encontré esta pequeña utilidad https://github.com/alols/xcape . Entonces ahora puedo simplemente reasignar CapsLock a Ctrl y dejar que xcape haga su trabajo.
fuente
EDITAR: Se corrigió esto para la mayoría de los administradores de pantallas inteligentes (más nuevos)
Según los comentarios de Louis y Sergiy, se me ocurrió esta solución que me funciona en Ubuntu 16.04 (Xenial) con LightDM y Unity.
Puse la siguiente línea de código en mi
.xprofile
archivo en mi directorio de inicio.El seguimiento y pone el comando xcape en segundo plano para que no bloquee su sesión. El setxkbmap hace su cambio de inmediato.
Sergiy
Louis
fuente
Instalar
xcape
Agregue las dos líneas en su
~/.bashrc
Observe la parte
-t 100
, si no la configura, puede notar un retraso en Esc si usa vim.fuente
sudo apt-get install xcape
(error tipográfico)He creado una herramienta en C especialmente para este propósito que supera muchos de los problemas con la solución xcape / xmodmap :
fuente