一些简单的tmux设置

概述

如果使用Linux作为服务器的操作系统,通过ssh操作时,会出现一个困难的选择:是否需要打开n个终端窗口?

如果服务器可以直接ssh的话,那么通过复用会话的方式似乎还算是个好选择,或者编写一个expect登陆脚本完成自动登陆操作。

当然,如果有如下需求:

  • 回家之后继续在公司的工作
  • 防止偶发的网络断开引起的重新连接
  • 运行时同时使用监控软件查看运行状态

那么这时候就需要使用终端复用软件了。

问题

tmux这个终端复用软件的强大无需多说,众多复杂的设置似乎对我来说并没有必要。而在使用中,自己曾经遇到过这些问题:

  • 默认的前缀按键Ctrl+b比较难按
  • 部分管理的快捷键并不方便(如关闭window,Ctrl+b -> Shift+7 -> y)或者并不形象(比如分割窗口)

需求

针对上面的问题,需求就变成了:

  • 能快速创建、切换pane(充分利用屏幕空间)
  • 快速切换window(可以直接通过组合数字键等方式切换)
  • 按键要便捷

细化一下,就变成了:

  • 能够通过数字键切换window
  • 能够顾通过方向键切换相邻window
  • 通过两次按键的组合键完成创建、切换、关闭window的操作
  • 通过两次按键的组合键完成创建、切换、关闭pane的操作
  • 通过-完成纵向切分window的操作
  • 通过\完成横向切分window的操作(\与|在一个按键上)
  • 快捷键前缀由C-b变为C-x

tmux-multi-pane-effect

配置

其中M表示键盘上的option/alt键S表示Shift键

如果不想增加关闭前的确认步骤,只需去掉指令中的confirm-before

还有一步

使用iTerm2时,为了能够让M键(即键盘上的option/alt键)能够完成上述工作,还需要进行设定:

tmux-iterm2-config

键盘上的两个option/alt键只需使用一个即可。

发表评论

电子邮件地址不会被公开。 必填项已用*标注

*

您可以使用这些HTML标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">