Ubuntu服务器上的Emacs GUI

时间:2017-05-27 19:22:15

标签: ubuntu emacs server

有没有办法在Ubuntu Server上运行Emacs GUI(默认安装没有安装X Window System)?我使用

安装了emacs
apt-get install emacs

但是当我用

打开文件时
emacs <filename>

我只获得基于文本的版本

2 个答案:

答案 0 :(得分:1)

您需要使用X支持构建 Emacs ,但您不需要运行Emacs的主机安装X服务器;你只需要在提供X显示器的主机上使用它。

当您通过apt-get安装Emacs时(只要它不是您安装的-nox(无X)软件包),这些依赖项应该已经处理好了。

假设您使用ssh连接到运行Emacs的服务器,传统(最简单)的方法是使用ssh -Xssh -Y启用X转发。请阅读这些ssh手册页,因为有安全注意事项。

为ssh连接启用X转发后,您只需从远程shell运行emacs,即可使用本地X显示器。

请注意,如果您与远程主机的网络连接不佳,那么性能将糟糕。在终端中运行远程emacs的效率要高出几个数量级。

如果性能低于理想值,则启用压缩ssh连接可能是值得的。

如果已禁用X转发或其他方式不可接受,则可以选择其他方式。我最后一次看,xpra看起来像一条值得追求的途径,但我还没有用过它。 1

还有https://en.wikipedia.org/wiki/NX_technology各种实现,如FreeNX,OpenNX,NeatX,X2Go。同样,我没有使用过任何这些,所以我无法发表评论。

最后请注意,您始终可以运行本地GUI Emacs并通过Tramp访问远程文件。对于扩展用例,我总是直接安装Emacs,但是为了编辑场合需要Tramp非常棒,而且在我看来很多人乐意使用它,所以YMMV。 (如果您的网络连接不可靠那么使用Tramp的本地Emacs可能会让您感到沮丧。)

1 我实际上尝试过,但客户端和服务器之间存在xpra版本不兼容。对于其他替代方案,这种问题也可能存在,而X转发协议已经建立了很久以至于我认为现在这种不兼容性不太可能发生。再次,YMMV。

答案 1 :(得分:0)

尝试从ppa安装emacs:

sudo add-apt-repository ppa:ubuntu-elisp/ppa
sudo apt-get update
sudo apt-get install emacs-snapshot emacs-snapshot-el

然后使用您想要的文件参数运行它:

emacs-snapshot your_file