Establecer permanentemente la distribución del teclado en X11

1

Necesito un psiquiatra para mi PC.

Está convencido de que es un iMac (más o menos).

En serio: tengo un problema que apareció aparentemente de la nada, probablemente debido a alguna actualización con "efectos secundarios", pero realmente no sé qué sucedió.

Por supuesto, tengo una configuración bastante complicada:

  • PC X64 con Windows 7
  • Máquina virtual sin cabeza VirtualBox que ejecuta Debian (estiramiento)
  • Accedo a la VM a través de ssh (KiTTY) con reenvío X11
  • Por lo general, trabajo en la línea de comandos, pero a veces uso programas gráficos.
  • Tengo la versión actual de VcXserv instalada en el host para servir a los clientes X.

Esto funciona desde hace años.

Ahora, de repente, mi teclado comenzó a "actuar de manera extraña" solo para clientes X (el terminal ssh simple no se ve afectado).

Después de mucho investigar, encontré algo:

Esta es la salida de setxkbmap -print -verbose 10:

Setting verbose level to 10
locale is C
Trying to load rules file ./rules/xorg...
Trying to load rules file /usr/share/X11/xkb/rules/xorg...
Success.
Applied rules from xorg:
rules:      xorg
model:      macintosh
layout:     it
options:    grab:break_actions
Trying to build keymap using the following components:
keycodes:   macintosh+aliases(qwerty)
types:      complete+numpad(mac)
compat:     complete+xfree86(grab_break)
symbols:    pc+macintosh_vndr/it+inet(apple)
geometry:   macintosh(macintosh)
xkb_keymap {
        xkb_keycodes  { include "macintosh+aliases(qwerty)"     };
        xkb_types     { include "complete+numpad(mac)"  };
        xkb_compat    { include "complete+xfree86(grab_break)"  };
        xkb_symbols   { include "pc+macintosh_vndr/it+inet(apple)"      };
        xkb_geometry  { include "macintosh(macintosh)"  };
};

Efectivamente setxkbmap -model pc105 -layout itresuelve el problema, pero volverá en el próximo arranque de VM.

¿Cómo puedo configurar esto permanentemente? (tenga en cuenta que no tengo un servidor x local en la máquina virtual, por lo que no tengo ~/.xinitrcarchivos similares)

También me gustaría entender lo que pasó. ¿Alguien puede sugerir dónde buscar?

ZioByte
fuente

Respuestas:

0

Intente configurar un sistema predeterminado para X:

$ sudo localectl set-x11-keymap it pc105

... eso solo puede afectar a Xservers en el host, pero intente eso primero; Como efecto secundario, establecerá un mapa de teclas de consola equivalente que podría ser parte de la detección inestable.

Si eso no funciona, simplemente ejecute una setxkbmap | xkbcomprutina apropiada en un ~/.profileo ~/.bashrc:

 if [ -n $DISPLAY ] ; then
   setxkbmap -model pc105 -layout it -print | xkbcomp - $DISPLAY
 fi

Eso se ejecutará cuando inicie sesión en la sesión SSH, por lo que cualquier programa gráfico que ejecute después debería obtener el mapa de teclas correcto.

quijotesco
fuente
tenga en cuenta que no lo sé, KiTTYo VcXservninguno, y cualquiera de esos puede tener configuraciones que podría modificar. La configuración predeterminada del mapa de teclas generalmente depende del servidor X, por lo que es posible que deba buscar respuestas sobre qué cambió.
quijotesco