2017-05-27 71 views
1

有沒有辦法在Ubuntu服務器上運行Emacs GUI(默認安裝時沒有安裝X Window系統)?我安裝使用Ubuntu服務器上的Emacs GUI

apt-get install emacs 

emacs的,但是當我打開一個文件,

emacs <filename> 

我只得到了基於文本的版本

+0

安裝X窗口系統?將DISPLAY設置爲運行X的遠程系統?通過SSH進行X轉發是一個解決的問題,正如使用遠程顯示器(這是X內置的一種)。 –

回答

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 
+0

試過這個,但仍然得到相同的結果。如果沒有安裝X,我認爲沒有辦法做到這一點。 – Jeremy

+0

有沒有你不想安裝它的原因?你可以做到這一點,如果這是你需要的......或尋找另一種選擇? –

+0

只是不想使用完整的gui來捆綁服務器資源 – Jeremy

1

您需要Emacs使用X支持構建,但您不需要運行Emacs的主機安裝X服務器;你只需要提供X顯示的主機。

由於您已經通過apt-get安裝了Emacs(只要它不是您安裝的-nox(無X)包),這些依賴關係應該已經被處理了。

假設您使用ssh連接到運行Emacs的服務器,傳統(最簡單的)方法是使用ssh -Xssh -Y啓用X轉發。由於存在安全考慮因素,請閱讀ssh手冊頁。

隨着你的ssh連接啓用X轉發,你可以從遠程shell中運行emacs,和當地的X顯示將被使用。

請注意,如果您的網絡連接到遠程主機很差,那麼性能會很差。在終端中運行遠程emacs的效率要高出幾個數量級。

設置SSH連接的壓縮可能是值得做的,如果效果不理想。

如果X轉發已被禁用或以其他方式不能接受的,有替代品。我最後一次看,xpra看起來像一個值得追求的大道,但我還沒有使用它。

還有https://en.wikipedia.org/wiki/NX_technology與各種實現,如FreeNX,OpenNX,NeatX,X2Go。再次,我沒有使用任何這些,所以我無法發表評論。

最後請注意,您始終可以運行本地GUI Emacs並通過Tramp訪問遠程文件。對於擴展用例,我總是直接安裝Emacs,但對於場合編輯需要Tramp非常棒,在我看來,很多人都樂於使用它,所以YMMV。 (如果您的網絡連接是不可靠然後用流浪漢本地的Emacs可能會節省一些挫折。)


其實我試過,但有問題的客戶端和服務器之間xpra版本不兼容。這種問題也可能存在於其他替代方案中,而X轉發協議的建立時間很長,我認爲現在不太可能出現這種不兼容問題。再次,YMMV。