Day 06:萤幕切八段!多开神器 tmux

更新
我把从第一天到现在每天的 Home 目录都放上 GitHub 了,README.md 里面有说明
这是今天的 Release https://github.com/simba-fs/2021-ironman-example/releases/tag/day06


今天起要介绍的是 tmux,这是一个终端机的 session 管理器,什麽是 session 呢?你可以把 session 理解为一个终端机(画面)和主机 (你的电脑)的连线,tmux 做的事就是把一个终端机切分成多个终端机,白话说就是多开神器啦!这样你就可以左边编辑程序、右边看执行结果(如图)。而且一切操作都在一个终端机视窗里面,这意味着即使你在没有图形界面的纯文字模式(像是 single user mode、ssh 连线)也可以享受如同图形界面的便利!

tmux demo
tmux demo

安装

debian/ubuntu

$ apt install tmux

macOS

$ brew install tmux

其他 or 自己编译

其他可以参考 https://github.com/tmux/tmux/wiki/Installing 的说明

config

tmux 启动时会去读取 ~/.tmux.conf 这个档案,所以的设定档都放在这,在这里,我推荐一个我用很多年的设定档,点击这里下载,或是执行以下命令

curl https://gist.githubusercontent.com/simba-fs/e06a1763c1967ce3f4b5ef643db5e0b3/raw/2f28c62d01f419a390bfc0e66a974985bacdefa5/.tmux.conf > ~/.tmux.conf

这个档案是我从网路上找到的,後来有加一些自己的东西,把档案下载下来并存到 ~/.tmux.conf 里面,关於每一行的用途都有用注解标示,主要几个改变有以下几点:

  • 把前置按键(prefix)从 Ctrlb 改成 Ctrla (第 16 ~ 19 行,不喜欢的话可以拿掉),你也可以改成其他按键
  • 底部 status bar 变成彩色,不再是单调的绿色
  • 一些快捷键绑定

启动

暂时我们不加入开启终端机自动启动 tmux,手动启动方式是在终端机执行命令

tmux

这时候你会看到终端机最上面跳出一个错误讯息

~/.tmux/plugins/tpm/tpm' returned 127

这是因为我们还没装 tmux 的外挂管理器 tmp (是 tmux plugins mamager,不是最近 win 11 的 tpm 2.0)
tpm 安装很简单,只要一行指令就可以了

$ git clone https://github.com/tmux-plugins/tpm ~/.tmux/plugins/tpm

要安装外挂只要在 run '~/.tmux/plugins/tpm/tpm' 之後加上 set -g @plugin <repo> 就行了,在我给的 config 档中注解有说明 repo 格式
这时候启动 tmux 就不会有错误了

预告

今天安装好了 tmux 和外挂管理 tpm,明天会介绍如何在开启终端机时自动开启 tmux,你以为是直接在 ~/.zshrc 中执行 tmux 吗?嘿嘿嘿,你可以试试就知道为什麽没这麽简单了,明天的文章会好好介绍如何完美整合 zsh 和 tmux


这篇文不小心断更了,呜呜呜,这里是我新的新开的文章系列 https://ithelp.ithome.com.tw/users/20130473/ironman/4804


<<:  Day 01:前言 - 打开地图,开始我们的旅程吧!

>>:  如何申请免费 Let’s Encrypt SSL 自动更新凭证,自架 IIS 站台适用

【Day11】列举技术的实作 ─ 另外那篇

哈罗~ 昨天实作了DNS列举技术的常用指令nslookup, 今天再继续实作其他列举的工具... D...

JavaScript入门 Day10_有关数字的语法2

昨天讲了 Math.abs( ),今天来讲Math.max( ) 那他是什麽呢,来看看下面的 cod...

第 08 天 再接再厉坚持不懈( leetcode 300 347 )

https://leetcode.com/problems/longest-increasing-...

[Day07] Tableau 轻松学 - 开始画面

前言 每个软件的开始画面,或多或少会有些好用但总是被我们忽略的功能,等我们使用一段时间後才从别人那边...

实习是进入职场前的探索

现在不管是学校课程规划或是同学主动想要了解职场,对於实习其实是一个可以看清自己的能力跟业界之间的差距...