小编Mic*_*ael的帖子

如何确定我的Emacs会话的显示位置?

我经常将我的X会话从我的家庭服务器(Slackware)转发到我的工作桌面(Cygwin/Windows 7).即ssh -X home-server; emacs &.我想知道(以编程方式)显示我的Emacs会话的位置,但是DISPLAY环境不是很有帮助:

(getenv "DISPLAY")
"localhost:10.0"
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

更新:我应该更清楚; 我正在寻找运行X会话的主机的名称(在这种情况下,我的工作桌面).呼叫,比方说,(system-name)或者(getenv "HOSTNAME")将返回Emacs实际运行的"家庭服务器".

更新2:我一直在尝试回复下面的Tobias,但是试图让格式在评论中起作用一直让我疯狂:

谢谢,托比亚斯,但似乎xauth只处理授权数据:

Using authority file /home/mgh/.Xauthority
home-server/unix:0  MIT-MAGIC-COOKIE-1  c545124...
localhost.localdomain/unix:0  MIT-MAGIC-COOKIE-1  c5451...
home-server/unix:14  MIT-MAGIC-COOKIE-1  7b7be...
home-server/unix:13  MIT-MAGIC-COOKIE-1  96d13...
home-server/unix:12  MIT-MAGIC-COOKIE-1  8b186...
home-server/unix:11  MIT-MAGIC-COOKIE-1  28a0a...
home-server/unix:10  MIT-MAGIC-COOKIE-1  bbf6c...
Run Code Online (Sandbox Code Playgroud)

更新3:

托比亚斯,它表明了这一点:

xauth -v nlist
Using authority file /home/mgh/.Xauthority
0100 0007 4261672d456e64 0001 30 0012 4d49542d4... 0010 c5451248...
0100 0015 6c6f63616c686f73742e6... 0001 30 0012 4d4954... 0010 c545124...
...
0100 0007 4261672d456e64 0002 …
Run Code Online (Sandbox Code Playgroud)

x11 emacs ssh elisp

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

标签 统计

elisp ×1

emacs ×1

ssh ×1

x11 ×1