设置和使用 Sublime Text 2 作为 git 编辑器不会在 tmux 会话中正确等待。
$ tmux
$ export EDITOR="subl -w"
$ git rebase HEAD^ -i (close file, terminal hangs)
如果在EDITOR
没有等待的情况下设置了,那么文件会像以前一样在 ST2 中打开,但是当然 rebase 会立即在 shell 中应用。
设置和使用 Sublime Text 2 作为 git 编辑器不会在 tmux 会话中正确等待。
$ tmux
$ export EDITOR="subl -w"
$ git rebase HEAD^ -i (close file, terminal hangs)
如果在EDITOR
没有等待的情况下设置了,那么文件会像以前一样在 ST2 中打开,但是当然 rebase 会立即在 shell 中应用。
我不使用Sublime Text,但我读过一个关于 Super User 的问题,似乎是关于同样的问题。
解决方案涉及使用我制作的“包装器”程序,以允许在tmux中访问粘贴板。“修复”并非特定于粘贴板访问,因此该程序还可以缓解与剪切/复制/粘贴操作无关的其他几个领域的问题。Sublime Text用来实现调用的“等待”特性的方法似乎subl -w
是这些“其他领域”之一。
您可以通过 MacPorts 从他们的tmux-pasteboard port或通过 Homebrew 从他们的reattach-to-user-namespace formula获得包装器,或者从我在 GitHub的 tmux-MacOSX-pasteboard存储库中自己编译它。
一旦你安装了它,你可能想要在你的中配置(根据自述文件)a default-command
,.tmux.conf
以便在tmux中生成的 shell将自动“重新附加”。或者,您可以在 EDITOR 值中使用包装器:
EDITOR='reattach-to-user-namespace subl -w'