xmodmap: не вдається відкрити дисплей ''


9

У моєму .bashrc є наступний рядок

xmodmap -e "keycode 116 = slash"

коли я SSH до цієї машини, я потрапляю

xmodmap:  unable to open display ''

і зайве говорити, я хочу його звідти. Чи може хто-небудь повідомити мені, як виправити цю помилку?

OpenSSH_4.7p1 Debian-8ubuntu1.2, OpenSSL 0.9.8g 19 жовтня 2007 р

Дякую за твою допомогу.


1
За допомогою обох наведених відповідей ви можете вилікувати симптом, але головна проблема полягає в тому, що xmodmap-call не належить до .bashrc. це щось, що має бути встановлено один раз для поточної сесії X11 .., а не кожен раз, коли оболонка відкривається. тому imho, xmodmap-call належить до .xinitrc або .xsession, перш ніж викликати менеджера вікон.
akira

Хороший момент, акіра. Я навіть не думав про це, відповідаючи. Дервін: Ви пробували щось подібне? help.ubuntu.com/community/MultimediaKeys
innaM

Відповіді:


9

Ви можете змінити свій .bashrcзапуск лише в тому xmodmapвипадку, якщо доступний дисплей:

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

xmodmap, а не xmodpmap, але він працював чудово. прийнято.
Дервін Тунк

Я стою виправлений.
innaM

Непов'язані, але [ -n "${DISPLAY+x}" ]можуть бути замінені більш простими [ "$DISPLAY" ]або [[ $DISPLAY ]].
користувач1686

Як не дивно, я все одно отримую повідомлення про помилку, коли в мене є ця операція if.
byxor

1

Ця помилка, ймовірно, тому, що ви не включили перенаправлення X11. Просто запустіть ssh за допомогою параметра -X (тобто

ssh -X -l user server.tld

або в шпаклівці натисніть опцію goto SSH -> X11 -> Увімкнути пересилання X11.

Звичайно, перш ніж запустити SSH, вам потрібно запустити Xserver, у Linux це встановлено за замовчуванням, і якщо ви працюєте з Windows, ви можете використовувати Xming.

Якщо ви не використовуєте сеанс X11 кожного разу, коли входите SSH, просто використовуйте рішення Манні.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.