【问题标题】:Shared emacs session without shared user accounts没有共享用户帐户的共享 emacs 会话
【发布时间】:2014-02-04 15:04:55
【问题描述】:

我目前在一个小组中工作,正在编辑要提交的乳胶文件。多人编辑同一个文件,并且有许多不相关的语法或措辞更改,使用存储库是行不通的,因为每次拉取都需要手动合并更改。由于我们都熟悉 emacs,因此我们希望有一个共享会话,我们都可以在其中编辑文件。

我知道,如果我们使用同一用户帐户(通过M-x make-frame-on-display 或使用emacs --daemonemacsclient),这是可能的。但是,据我所知,这需要我们无权创建的共享用户帐户,或者我们中的一个人提供对我们个人帐户的访问权限,这不是一个好的做法。

有没有办法在不共享用户帐户的情况下共享 emacs 会话?

【问题讨论】:

  • 略有不同的方法:使用FloobitsRudel 之类的collaborative editing
  • 考虑使用tmux
  • 我曾考虑过 tmux,但我的印象是,虽然我们可以共享 emacs 会话,但我们无法同时编辑同一个文件,因为只有一个人可以成为“推动”会议。

标签: emacs multi-user


【解决方案1】:

请注意,由于 Emacs 的强大功能,授予某人 Emacs 的访问权限实际上就是授予他访问某人帐户的权限。

还有几种方法(假设你在一些unix或linux下):

  • 要让 M-x make-frame-on-display 工作,你只需要授权其他主机访问你的显示器

    • xauth list 将列出您显示器的 MIT-MAGIC-COOKIE,然后您可以将其提供给您的朋友,让他们使用make-frame-on-display 在您的显示器上向您发送帧。您无法解除 COOKIE,但如果您注销然后登录,则会生成一个新的。
    • xhost + 将删除所有访问控制。所以如果你在一个不可信的地方,你可以暂时做xhost +接受框架,然后xhost -将添加访问控制。 xhost +fooxhost -foo 只会对主机 foo 执行相同的操作
  • 您可以使用变量 emacs-use-tcp 将您的 emacs 服务器配置为接受通过 tcp 的连接。

话虽如此,所有这些的安全含义都很复杂。在我看来,像克里斯提议的那样使用 Floobits 或 Rudel 似乎是一个更好的解决方案。

【讨论】:

    猜你喜欢
    • 2019-10-15
    • 1970-01-01
    • 2019-01-31
    • 2012-07-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多