Emacs服务器可以编辑Emacs客户端指定的远程文件吗?

我正在寻找设置emacs服务器,以便emacsclients指定的文件

是相对于emacsclients的文件系统而不是服务器的文件系统.例如,如果我设置了一个

机器上的emacs服务器“darkstar”,我通过emacsclient连接到这个服务器

在命令“brightstar”上

emacsclient -nw '~/fantastic'

emacs服务器将尝试在暗星上编辑文件〜/ fantastic,而不是
明亮的星星.我喜欢这样的反面.我对各种各样的建议持开放态度.

*背景说明:
我想要一个emacs进程来跟踪我打开各种各样的缓冲区
机器,跟踪我的颜色设置,绑定等.我想要所有这些
使用emacs在任意机器上可用和复制. emacs服务器
似乎这样做但没有能力编辑客户端的本地文件!

最佳答案 你应该能够设置一个使用tramp的shell函数,比如

edit-local() {
    emacsclient -e "(find-file (expand-file-name \"$1\" \"/ssh:$USER@$(hostname):$PWD\"))"
}

当然,您可能必须将tramp协议更改为您设置的任何内容.

点赞