簡體   English   中英

如何在Emacs中使用make-frame-on-display和multi-tty?

[英]How to use make-frame-on-display and multi-tty in Emacs?

Emacs手冊中的此頁面描述了一個名為make-frame-on-display ,允許您訪問遠程Emacs會話。 我對這個功能的興趣是用它來與同事遠程共享緩沖區進行配對編程。

從頁面:

甚至可以使用此功能讓兩個或多個用戶在同一個Emacs作業中同時在兩個顯示器上鍵入。 然而,在實踐中,如果他們不小心,不同的用戶可以容易地干擾彼此的編輯。

我該如何設置? 我需要什么? 我的伴侶需要什么? 細節沒有說明,但我不太了解Emacs知道從哪里開始。

有沒有其他方法來獲得共享的Emacs會話? 來自Emacs Wiki的這個頁面引用了一個名為multi-tty東西。 我上面提到的問題也適用於此。

哪個更好: multi-tty make-frame-on-displaymake-frame-on-display

我沒有嘗試過multi-tty,但是make-frame-on-display非常簡單。 您鍵入Mx make-frame-on-display,點擊返回,然后鍵入您希望幀顯示的顯示。 例如:

我有我的本地主機(thor)運行emacs,我想在一台名為zeus的機器上彈出一個框架,在它的唯一X顯示器(0.0)上。 所以我會輸入Mx make-frame-on-display <ret> zeus:0.0 <ret>

搞定!

您可能需要將遠程計算機的X服務器配置為使用“xhost + thor”接受來自計算機的傳入連接。 您可能還需要配置其防火牆以允許X11端口(即6000)上的傳入連接。請記住,X轉發未加密,因此如果您不與LAN上的某個人合作,您可能需要通過VPN以保持私密性。

編輯修復括號。

你也可以ssh -X thor emacsclient -c在zeus類型ssh -X thor emacsclient -c

您是否曾考慮在共享帳戶上使用GNU屏幕進行結對編程? 它很容易讓它工作,你可以選擇任何基於控制台的編輯器你和你的伴侶(emacs,vim,joe,nano,zile,......)。 但是,這當然不適用於無法在終端內運行的編輯器。

要進行設置,請在運行ssh的計算機上創建共享帳戶。 然后兩者都登錄到該帳戶。 其中一個合作伙伴開始使用

screen

而另一個與它連接

screen -x

其中-x表示“附加到未分離的屏幕會話”。 用戶可以從他們的會話中分離出“Ca d”。

老問題,任何人的新解決方案從2016年起登陸此頁面。

我在Ubuntu 14.04中設置它並且它完美地工作:

假設我想和我的同事Joe在世界的另一端共同編輯或演示emacs上的一些很酷的東西。

  1. 確保在任一端安裝了帶有emacs的ssh服務器。 也就是說,MyPC或JoePC必須是SSH服務器並安裝了Emacs。 從現在開始,假設我讓Joe在他的計算機上安裝SSH服務器和Emacs。
  2. 確保byobu上安裝JoePC。 Byobu支持tmuxscreen作為后端(我更喜歡tmux用於更現代和功能豐富)。
  3. 我用ssh remoteuser@joepc連接到ssh remoteuser@joepc 不需要X-forwarding。
  4. 打開來自byobu-ssh終端的emacs: TERM=xterm-256color && emacsclient --alternate-editor="" -t 可以為此命令創建別名。 我推薦這個長命令,因為它可以在終端中提供更好的顏色支持,並在守護進程模式下運行Emacs。 daemon mode可以快速關閉並重新打開幀。
  5. 現在魔術展開:讓Joe登錄我登錄的同一個remoteuser用戶; 如果沒有他,打開終端並啟動byobu
  6. 開始黑客或摸索:-)

評論:

  • 因為byobu工作的方式。 這種方法適用於byobu終端內的任何其他程序。
  • 此設置比Teamviewer或任何其他GUI遠程桌面解決方案執行得更好。
  • 因為連接是通過ssh直接連接到遠程服務器,所以它與ssh conenction可以提供的一樣安全。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM