2014-03-29 1 views
3

На работе я получаю выбор из двух ноутбуков для использования, Windows или Mac. Будучи парнем Linux, я думал, что MacBook Pro будет хорошо подходить.Как запустить Emacs в «ssh -X» от Linux до Mac OS X (с XForwarding)?

Итак, я приношу ноутбук MacBook Pro домой, и понимаю, что у него нет клавиши с правом Ctrl. И нижняя панель раздражает, как черт. Поэтому я говорю, что не проблема, я буду сортировать все это позже, пока я буду использовать его как сервер и удаленно ssh в него из моей хрустящей рабочей среды Xfce. Ну ...

Я потратил около дня, пытаясь выяснить:

Как SSH в макинтош с моей Fedora рабочей станции, запустить Emacs и иметь его показать (XForwarded) на моем Linux Workstation ? Вы знаете, как это:

enter image description here

Я установил XQuartz и изменил /etc/sshd_config и /private/etc/sshd_config с:

X11Forwarding yes 
XAuthLocation /opt/X11/bin/xauth 

заметь, xeyes работ, и так же xclock, яй !!!

enter image description hereenter image description here

Видимо X Перенаправление работает нормально, так как другие приложения с графическим интерфейсом обнаруживаются удаленно. Но что касается Emacs, foggetaboutit.

По умолчанию Emacs от /usr/bin/emacs запускает его только в режиме -nw. Затем я установил the latest Emacs 24.3/Applications/Emacs.app/Contents/MacOS/Emacs). На этот раз, если я физически войду в ноутбук (т. Е. С клавиатуры ноутбука), запуск Emacs из ssh появится на экране ноутбука !!! WTF? Если я выйду из ноутбука, я получу:

_RegisterApplication(), FAILED TO establish the default connection to the WindowServer, _CGSDefaultConnection() is NULL. 

Я нахожусь на своих концах. Любые идеи, по которым работают другие X-приложения? Что-то особенное в Emacs?

ответ

2

Двоичный модуль Emacs.app создан для использования оконной системы Mac OS X (здесь мы называем это «ns»), которая не имеет ничего общего с X11, поэтому вы не можете пересылать ее по сети другому хосту. Вместо этого вы хотите установить еще один Emacs на своем Mac, который построен для использования оконной системы X11 (так что вы можете использовать его локально через Xquartz (который позволяет клиентам X11 использовать собственный Mac OS X), или вы можете использовать его удаленно как и любой другой клиент X11).

Самый простой способ - это, вероятно, построить его самостоятельно: получите исходный код emacs-24.3.tar.gz и скомпилируйте его с помощью ./configure --with-x; make.

+0

Он работал, спасибо! –

+0

ps: @VelimirMlaker - вы также можете запускать emacs на любой машине и подключаться к удаленной файловой системе через SSH. путь подключения выглядит так: '/ ssh: user @ host # sshport:/remote/path/to/open' – Cheeso

0

с Mac портов x11 или вариант GTK должен быть выбран, например:

sudo port install emacs +x11 

или что:

sudo port install emacs +gtk 
Смежные вопросы