2 votos

XQuartz: ¿usuario / entorno al ejecutar xinit? (XMonad, xmodmap, etc.)

Estoy ejecutando XMonad con XQuartz en un 11,3 Macbook Prop Retina. Mi .xinitrc se ve así:

[[ -f ~/.Xdefaults ]] && xrdb -load ~/.Xdefaults
export LANG="en_CA.UTF-8"
xmodmap /Users/xxxxxxx/.xmodmarc
cd $HOME
/Users/xxxxxxxx/Library/Haskell/bin/xmonad

He notado que tanto la exportación de LANG como el xmodmap se están llamando, pero sus efectos no persisten. Si agrego un env >> tmp.txt puedo ver que es un entorno diferente al que finalmente llego en un terminal, y sospecho que incluso un usuario diferente está llamando a xinit.

Mis preguntas

  • ¿Qué usuario o entorno está realmente llamando a xinit cuando inicias XQuartz?
  • ¿Cuál es el lugar adecuado para colocar xmodmap para que se llame una vez, y solo una vez, al iniciar XQuartz?
  • ¿Cómo puedo configurar LANG una vez, y solo una vez, como una variable de entorno al iniciar XQuartz (lo necesito para el soporte de unicode)?

¡Gracias!

2voto

Alexej Magura Puntos 434

¿Qué usuario/entorno está llamando realmente a xinit cuando se inicia XQuartz?

En Linux, este será el usuario con el que iniciaste sesión; sospecho que es probablemente lo mismo para Mac OS X. En cuanto al entorno, sea cual sea el entorno actual cuando ejecutas xinit, ese será el entorno con el que se ejecutará XQuartz, excepto los cambios en el entorno realizados dentro de uno de los archivos que XQuartz lee al iniciar.

¿Dónde debo colocar xmodmap para que se llame una vez, y solo una vez, cuando se inicie XQuartz?

Para crear tu propio mapa/tabla personalizado y guardarlo en un archivo de configuración, ejecuta:

xmodmap -pke > ~/.Xmodmap

Haz los cambios deseados en ~/.Xmodmap y luego prueba la nueva configuración con:

xmodmap ~/.Xmodmap

Para activar tu tabla personalizada al iniciar Xorg, es decir, XQuartz, agrega lo siguiente a tu ~/.xinitrc

[ -s ~/.Xmodmap ] && xmodmap ~/.Xmodmap # también puedes intentar usar `[[ -s ~/.Xmodmap ]] && xmodmap ~/.Xmodmap`

¿Cómo logro que el LANG se establezca una vez, y solo una vez, como una variable de entorno cuando inicio XQuartz (lo necesito para el soporte de unicode)?

Para establecer LANG, simplemente agrega uno de los siguientes a tu ~/.xinitrc

[[ -z "$LANG" ]] && LANG= # solo establece LANG si LANG está vacío
LANG= # establece LANG independientemente de si está vacío o no

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X