标签: emacs-server

emacs套接字的位置

我在远程服务器上使用emacs.由于我的会话通常涉及数十个文件和进程,我一直在使用emacs服务器并使用emacs客户端连接到它.这样做的好处是,如果我的ssh连接由于某种原因而中断(这种情况很常见,因为我在英格兰和服务器在加利福尼亚),我只是再次连接到emacs服务器并继续工作,就像什么也没发生一样.

但是,前段时间,服务器的管理员已更改其配置,以便定期从/ tmp目录中清除"未使用的"文件,这是默认情况下emacs套接字的位置.由于时间戳在初始创建后没有得到更新,因此清除过程假定它是一个未使用的文件,这意味着我无法连接到我的服务器,尽管它正在运行.

有人知道告诉emacs在默认目录以外的目录中创建套接字的方法吗?

顺便说一下,我也尝试使用一个定期更新套接字时间戳的脚本,但它仍然被删除.

提前致谢.

sockets linux emacs emacs-server

5
推荐指数
1
解决办法
870
查看次数

在 GDM 和 SSH 之间协调 .Xauthority

我遇到了一个问题,如果我在远程系统上以守护进程模式启动 Emacs,然后在我的本地系统中运行ssh remotehost emacsclient -c,它会失败,并且由于身份验证错误而导致 X11 连接被拒绝。 然而,诸如此类的事情ssh remotehost xterm工作正常,所以它与 ssh 连接、X 转发等无关。

有问题的两个系统都运行 Ubuntu 18.04 LTS。

可以猜到,问题是 xauth,特别是在阅读了 2010/2011 年提交的问题后,这似乎是由于 GDM 将环境XAUTHORITY变量设置为$XDG_RUNTIME_DIR/gdm/Xauthority(类似于/run/user/1000/gdm/Xauthority)的方式,而传入的 SSH 连接则不然XAUTHORITY在为 SSH 会话设置 xauth cookies 之前设置。

这意味着 ssh xauth cookie 将添加到默认$HOME/.Xauthority文件中。我的 Emacs 守护进程无法看到这些 cookie,因为它正在使用 GDM$XDG_RUNTIME_DIR/gdm/Xauthority文件。

正如我所说,这种差异似乎已经是一个已知问题 8 年多了……没有人解决它吗?疯狂的。我已经编写了一个安装 cookie 的脚本,但必须这样做是相当恶心的。

有没有办法让我的 ssh 会话使用 GDM Xauthority 文件?我已经尝试XAUTHORITY在 shell 设置中进行设置,但显然设置得太晚了,在 SSH 守护程序配置新的 Xauth cookie 之后,因为它仍然放入$HOME/.Xauthority.

ssh emacsclient x11-forwarding emacs-server gdm

5
推荐指数
1
解决办法
1571
查看次数

Emacs 客户端:Cx k 和 Cx # 之间的区别

当在带有客户端的守护进程中运行 emacs 并点击 Cx k 时,它显示:Emacs 缓冲区仍然有客户端。你确定你要退出吗?

但是当使用Cx#时,它立即退出。

我不明白其中的区别。如果 Cx k 在客户端中,为什么它一开始就不表现正常?

我发现这个片段应该使 Cx k 行为正常,但我不明白其中的区别。

此外,当 emacs 客户端启动时,它会从先前的缓冲区开始几秒钟,然后打开新的缓冲区。emacs 服务器的目的不就是加快初始启动时间吗?为什么会这样做/我该如何修复它?初始加载时,它会从头开始几秒钟。

emacs emacs24 emacs-server

2
推荐指数
1
解决办法
666
查看次数

标签 统计

emacs-server ×3

emacs ×2

emacs24 ×1

emacsclient ×1

gdm ×1

linux ×1

sockets ×1

ssh ×1

x11-forwarding ×1