xmodmap: impossibile aprire display ''


9

Ho la seguente riga nel mio .bashrc

xmodmap -e "keycode 116 = slash"

quando SSH su quella macchina, ottengo

xmodmap:  unable to open display ''

e inutile dirlo, lo voglio fuori di lì. Qualcuno può farmi sapere come eliminare questo errore?

OpenSSH_4.7p1 Debian-8ubuntu1.2, OpenSSL 0.9.8g 19 ott 2007

Grazie per l'aiuto.


1
con entrambe le risposte fornite puoi curare il sintomo, ma il problema principale è che la chiamata xmodmap non appartiene a .bashrc. è qualcosa che dovrebbe essere impostato una volta per l'attuale sessione X11 .. e non ogni volta che viene aperta una shell. quindi imho la chiamata xmodmap appartiene a .xinitrc o .xsession, prima di chiamare il gestore delle finestre.
Akira,

Buon punto, Akira. Non ci ho nemmeno pensato quando ho risposto. Dervin: Hai provato qualcosa del genere? help.ubuntu.com/community/MultimediaKeys
innaM,

Risposte:


9

È possibile modificare l' .bashrcesecuzione per eseguire solo xmodmapse è disponibile un display:

if [ -n "${DISPLAY+x}" ]; then
    xmodmap -e "keycode 116 = slash"
fi

xmodmap, non xmodpmap, ma ha funzionato meravigliosamente. accettato.
Dervin Thunk,

Sono corretto.
innaM

Non correlato, ma [ -n "${DISPLAY+x}" ]può essere sostituito con un semplice [ "$DISPLAY" ]o [[ $DISPLAY ]].
user1686

Stranamente, ricevo ancora il messaggio di errore quando ho questa istruzione if.
byxor,

1

Questo errore è probabilmente dovuto al fatto che non hai abilitato l'inoltro X11. Basta eseguire ssh con l'opzione -X (es

ssh -X -l user server.tld

oppure in putty fai clic sull'opzione vai a SSH -> X11 -> Abilita inoltro X11.

Ovviamente devi eseguire un Xserver prima di entrare in SSH, Linux lo ha di default, dove se usi Windows puoi usare Xming.

Se non usi una sessione X11 ogni volta che entri in SSH, usa semplicemente la soluzione di Manni.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.