xmodmap: Anzeige '' kann nicht geöffnet werden

9

Ich habe die folgende Zeile in meiner .bashrc

xmodmap -e "keycode 116 = slash"

Wenn ich SSH zu dieser Maschine bekomme, bekomme ich

xmodmap:  unable to open display ''

und natürlich will ich es da raus. Kann mir jemand mitteilen, wie dieser Fehler behoben werden kann?

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

Danke für deine Hilfe.

Dervin Thunk
quelle
1
Mit beiden gegebenen Antworten können Sie das Symptom heilen, aber imho ist das Hauptproblem, dass der xmodmap-Aufruf nicht zu .bashrc gehört. Es sollte einmal für die aktuelle X11-Sitzung festgelegt werden. Und nicht jedes Mal, wenn eine Shell geöffnet wird. Imho gehört also der xmodmap-Aufruf zu .xinitrc oder .xsession, bevor Sie Ihren Windowmanager aufrufen.
Akira
Guter Punkt, Akira. Ich habe bei der Beantwortung nicht einmal darüber nachgedacht. Dervin: Hast du so etwas versucht? help.ubuntu.com/community/MultimediaKeys
innaM

Antworten:

9

Sie können Ihre .bashrcAusführung xmodmapso ändern , dass sie nur ausgeführt wird, wenn eine Anzeige verfügbar ist:

if [ -n "${DISPLAY+x}" ]; then
    xmodmap -e "keycode 116 = slash"
fi
innaM
quelle
xmodmap, nicht xmodpmap, aber es hat wunderbar funktioniert. akzeptiert.
Dervin Thunk
Ich stehe korrigiert.
InnaM
Nicht verwandt, [ -n "${DISPLAY+x}" ]kann aber durch eine einfachere [ "$DISPLAY" ]oder ersetzt werden [[ $DISPLAY ]].
user1686
Seltsamerweise erhalte ich immer noch die Fehlermeldung, wenn ich diese if-Anweisung habe.
bis zum
1

Dieser Fehler ist wahrscheinlich darauf zurückzuführen, dass Sie die X11-Weiterleitung nicht aktiviert haben. Führen Sie einfach ssh mit der Option -X aus (dh

ssh -X -l user server.tld

oder klicken Sie im Kitt auf die Option gehe zu SSH -> X11 -> X11-Weiterleitung aktivieren.

Natürlich müssen Sie zuerst einen Xserver ausführen, bevor Sie SSH starten. Linux hat dies standardmäßig. Wenn Sie Windows ausführen, können Sie Xming verwenden.

Wenn Sie bei jedem SSH-Vorgang keine X11-Sitzung verwenden, verwenden Sie einfach die Lösung von Manni.

Natalie Adams
quelle