Породите редактирование удаленного файла с помощью emacs бродягу от ssh сессии

Это - вероятно, вопрос несколько из ненормального. Я использую бродягу для редактирования удаленных файлов, но я также открываю несколько ssh-лугов терминалов для той удаленной машины также для других работ (у меня были проблемы при выполнении ssh оболочки внутри emacs).

Часто времена во время терминальной работы, я хотел бы отредактировать некоторый файл и мою текущую процедуру, должны скопировать имя файла и затем использовать бродягу emacs для открытия того файла (после того, как, бездельничая всем с получением пути к файлу в формате бродяги). Это - слишком много работы для быстрого редактирования и довольно подверженный ошибкам в части обработки пути.

Вопрос: я могу выполнить некоторую команду на удаленной ssh сессии, которая берет имя файла, преобразуйте это для топтания формата (это - легкая часть), и выполните локальную команду (как emacsclient blahblahblah) так, чтобы я мог отредактировать удаленный файл с помощью бродяги в моем локальном emacs?

Я не уверен, достаточно ли я ясен. Я не хочу выполнять emacs на удаленной машине (или на терминале или через x сессию), но я действительно хочу отправить файл в свой локальный emacs от удаленной подсказки, как это:

user@remote-machien ~/ $ run_local_emacs somefile
# then the file "/ssh:user@remote-machine/:/home/user/somefile" shows up 
# in my local emacs
12
задан polyglot 9 February 2010 в 19:32
поделиться

2 ответа

Вы можете настроить свой emacs-сервер на использование TCP-соединения (а не только локального сокета), а затем на удаленной стороне сообщить emacsclient о подключении к этому TCP-соединению:

В вашем.emacs

(setq server-use-tcp t)
(setq server-host "name_of_local_machine")
(server-start)

И затем на удаленной стороне:

emacsclient -f ~/.emacs.d/server/server /`hostname`:/path/to/local/file

Вышеупомянутый вызов emacsclient вызывает файл, локальный для «удаленной» машины в вашем Emacs, запущенном на «локальной» машине. Очевидно, вы можете заключить вызов emacsclient в любой сценарий, который вам нужен, чтобы упростить задачу.

Если ваш домашний каталог не отображается на удаленном компьютере, вам потребуется , чтобы настроить переменную server-auth-dir следующим образом:

(setq server-auth-dir "/some/path/visible/on/both/machines")

Дополнительную документацию см. В Параметры Emacsclient .

12
ответ дан 2 December 2019 в 21:23
поделиться
typedef double (*PtrFunc)(double); 

PtrFunc ptrBipolar = get_bipolar;


OR


typedef double (Func)(double); 

Func *ptrBipolar = get_bipolar;

, которые когда-либо вам удобно использовать.

-121--3286646-

Это обычная ошибка, когда вы начинаете, эта ссылка имеет очень техническое обсуждение причин. http://docs.sun.com/source/806-3568/ncg_goldberg.html

Но в простейшей форме, в том же пути, что мы не можем точно представить 1/3 в десятичной системе, есть значения, которые не могут быть представлены точно в двоичной системе

-121--3279116-

Для этого можно использовать urxvt (отличный эмулятор терминала) и написать расширение perl, даже если emacsclient не установлен на удаленном компьютере.

0
ответ дан 2 December 2019 в 21:23
поделиться
Другие вопросы по тегам:

Похожие вопросы: