科普并推荐一下 iTerm 的 tmux 绑定功能 - V2EX
2019-08-07 20:31:01 Author: www.v2ex.com(查看原文) 阅读量:674 收藏

iTerm 的 tmux 绑定

好像很少有人使用(发现)iTerm的 tmux 绑定这个强大的功能

iTerm2 相对于内置的 Terminal 更好用的是⌘D⌘⇧D的分屏功能,但除开各种其它花哨的功能外最强大的功能当属 tmux 绑定了

tmux 和 screen 一样但它最方便的地方在于断开重连,对于 ssh 网络连接不稳定的服务器维护尤其重要,但这类终端管理器也有不好用的地方,比如蹩脚的鼠标支持,比如很难记忆的快捷键,比如反人类的复制粘贴、回滚查看日志等操作,iTerm2 完美解决了这些问题,让你能像使用本地终端一样使用 tmux,同时无缝重连

使用方法:关键是-CC这个参数,如果不支持-CC 这个参数,更新下 tmux 吧(至少两年前的版本就已经支持了)

本地使用

  • 新建窗口: tmux -CC

  • 断开重连(attach): tmux -CC attach

  • 断开连接(dettach): 在连接的窗口按 esc,或者直接关掉连接的 tab 吧

  • 关掉 session(destroy): 关闭当前 session 的所有 tab 即可

远程服务器使用

  • 先 ssh 登录ssh serverssh 层数不限

  • 再使用同样的方法连接 tmux -CC 或者重连 tmux -CC attach

映射后就跟本地终端操作无二了

tmux 的 session 对应窗口,tab 对应标签,panel 对应分割面板

关联以后新建窗口、分割面板、回滚日志、复制粘贴完全和本地终端一样使用了,使用 iterm 原生所有快捷键或者纯鼠标操作,不需要记忆 tmux 任何快捷键

iTerm 提供与 tmux 相关的设置

  • 在偏好设置 General 里就有个 tmux 的设置页,一般习惯选择 Open tmux windows as: Native tabs in a new window,这样容易保证连接的独立性,每个 tmux 会话一个窗口
  • tmux 可以使用单独名叫 tmux 的主题

1

liwufan   1 天前 via iPhone

第一次听说,谢谢分享

3

fantasticfears   1 天前 via iPhone

用一个 Mac 上的软件替换都能跑的 tmux,不太好用。这样 tmux 配置就麻烦了。

6

unidentifiedme   1 天前

我记得这个功能就是把 iTerm 的 keymap 映射到了 tmux 上,然后把 tmux 的 window 和 pane 绑定到了 iTerm 自己的实现吧。对于习惯 iTerm 的人来说可能很方便,不过对于已经习惯了 tmux 的人来说就没必要了。(你们真的不觉得 iTerm 实在是太慢了吗,即使开启了 GPU 加速,试试 Alacritty 吧(

8

quaack   1 天前

prefix 一般是组合键,按起来比 iterm 还是慢一点啊(例如 iterm cmd+1 = tmux C-b, 1>

当然你可以各种重新映射键位

9

xdays   1 天前

有没有办法让 tmux -CC 不占用前台?我找了一圈没找到

10

bookit   23 小时 38 分钟前

@xdays 在 iterm2 的 profiles-General 里面设置 send text:

tmux new-session \; split-window -h \;

这样启动的时候直接开了两个 tmux 的 panel

11

yangg   23 小时 30 分钟前

以前试过,感觉没啥用,今天又试下,还是感觉没啥用,原来是为了不用 tmux 的快捷键

12

ahjsrhj   2 小时 40 分钟前

试了一下,感觉没啥卵用,还有点乱


文章来源: https://www.v2ex.com/t/589453#reply13
如有侵权请联系:admin#unsafe.sh