又雙叒叕一份Tmux配置:專為遠程設(shè)計的按鍵方案

Tmux是一個終端復(fù)用器,網(wǎng)上配置要多少有多少,但是秉承“自己的才是最好的”原則捂寿,我決定照葫蘆畫瓢寫一份自己的Tmux配置牡拇。

然后發(fā)現(xiàn)魁瞪,網(wǎng)上大部分(99%)Tmux配置都沒有把遠程的情況考慮進去,例如VNC遠程快捷鍵惠呼、ssh遠程快捷鍵的傳送等問題都沒考慮進去导俘,于是幾乎重新設(shè)計了所有常用的快捷鍵。然后又使用了一段時間剔蹋,不斷改進旅薄,今天決定把它分享出來。

Tmux

特點:

  • 為遠程操作設(shè)計的快捷鍵泣崩,完美實現(xiàn)在Tmux里跑Tmux的場景少梁。
  • 自動連接上一次退出的會話洛口,無縫銜接上一次操作(防止意外退出而中斷操作)。
  • 快捷鍵合理分配凯沪,所有快捷鍵操作都不需要移動手腕(筆記本電腦而言第焰,移動手腕算我輸)。
  • 插件安裝/更新妨马、自定義外觀挺举、自定義設(shè)置均可一鍵操作(設(shè)置了快捷鍵直接編輯)。
  • 一條命令即可安裝身笤。

項目地址:https://github.com/izuolan/.tmux

Prefix

最佳:Alt-z

Prefix豹悬,這是整個Tmux能否高效使用的關(guān)鍵,因此Prefix兩個按鍵必須鍵程合適液荸,不需要移動太遠的范圍瞻佛。

Tmux默認(rèn)是Ctrl-b,大部分Tmux配置選擇改為Ctrl-a娇钱,或者Ctrl-z伤柄,老實說Ctrl-z這個方案最容易讓人接受,鍵程最短文搂,不容易誤按适刀,然而大部分Terminal都把Ctrl-z設(shè)為suspend快捷鍵,這可就尷尬了煤蹭,特別是遠程時用vim打著代碼笔喉,突然按兩下Prefix就把vim掛起了,非常影響使用硝皂。

于是嘗試不少組合之后常挚,決定把 Alt-z 設(shè)為 Prefix,超短鍵程稽物,沒有常用的快捷鍵沖突(大概)奄毡。考慮到鍵盤布局差異贝或,這兩個鍵一般都不會相隔太遠吼过。

有了Prefix,接下來就是圍繞z鍵設(shè)置快捷鍵咪奖。接下來不廢話盗忱,直接介紹快捷鍵設(shè)置,以及在解釋為何在遠程中這樣設(shè)置最科學(xué)羊赵。

會話

創(chuàng)建會話(new session售淡,所以使用快捷鍵n):

# 創(chuàng)建, tmux new -s <name-of-my-session> 創(chuàng)建一個新的會話
$ tmux new -s basic
# 在tmux中創(chuàng)建一個會話
[PREFIX-n] new -s <name-of-my-session>
新建會話

離開會話(后臺運行,默認(rèn)d

# 分離會話 detach
[PREFIX-d]
[detached (from session basic)]
# or
$ tmux detach

查看會話列表慷垮,切換會話

# 查看已有會話列表(list-session)
$ tmux ls
basic: 1 windows (created Wed Aug  5 14:54:04 2015) [200x49]

# 在tmux中查看會話列表并切換
[PREFIX-s]

重新進入會話

# 連接會話(只有一個)
$ tmux attach
$ tmux attach -t basic
$ tmux a -t basic

關(guān)閉會話

# 退出會話
$ tmux kill-session -t <Num>
# or
[PREFIX-Alt-q]
# 殺掉全部會話
$ tmux kill-server

重命名會話

# 重命名會話
[PREFIX-$]

會話我基本沒有改動默認(rèn)配置揖闸,因為我一般不會遇到需要操作多個會話的情況。

窗口

創(chuàng)建窗口(create window料身,所以設(shè)置為c

# 創(chuàng)建一個新的窗口
[PREFIX-c]

重命名窗口(這個保留默認(rèn),

# 重命名一個窗口
[PREFIX-,] 之后輸入名字回車

切換窗口

# 切換窗口
[PREFIX-[]
[PREFIX-]]
# 設(shè)置這兩個鍵是因為不需要移動手腕汤纸,一般就在回車鍵上面,又剛好成對芹血。vi中常用的h贮泞、l后面會用到,所以這里不用幔烛。
# 切換到對應(yīng)窗口
[PREFIX-1/2/3]
# 切換到上一個窗口
[PREFIX-Tab]
# 可視化選擇切換到的窗口
[PREFIX-w]

退出窗口

# 退出窗口
exit 
# 與窗口列表快捷鍵類似啃擦,`Alt-w`就是關(guān)閉,直接`w`就是窗口列表饿悬,簡單好記令蛉。
[PREFIX-Alt-w] 會有確認(rèn)

面板

分割面板(鍵盤上唯有這兩個鍵最直觀表達分屏效果,所以就是\- 啦)

# 垂直/水平分割窗口
[PREFIX--] / [PREFIX-\]

關(guān)閉面板

# 關(guān)閉一個面板, 要確認(rèn)
[PREFIX-x]
# 或者
exit [面板里執(zhí)行]

切換面板

[PREFIX-hjkl]   pane之間移動
[PREFIX-arrow]  pane之間移動

[PREFIX-Space]  最近使用兩個窗口之間切換
[PREFIX-q]    展示窗口數(shù)字并選擇跳轉(zhuǎn)

為了統(tǒng)一遠程與本地的快捷鍵狡恬,即便是Pane操作我也設(shè)置了需要Prefix才能觸發(fā)珠叔,不喜歡的話可以改為直接觸發(fā),但這樣本地與遠程快捷鍵不統(tǒng)一弟劲,反而有些麻煩祷安。

移動面板

[PREFIX-<] 當(dāng)前pane移到左邊
[PREFIX->] 當(dāng)前pane移到右邊

調(diào)整面板

[PREFIX-HJKL]      pane大小調(diào)整
[PREFIX-Alt-arrow] pane大小調(diào)整
# 此處的Pane調(diào)整算是我最不滿意的一個地方,因為Alt-h剛好是man命令的快捷鍵兔乞,避免沖突只能放棄Alt-hjkl的方式汇鞭,改為PREFIX-HJKL,這里手指要多移動一次到Shift鍵上面真是讓人不爽庸追。因此補充一組快捷鍵霍骄,使用方向鍵調(diào)整。
[PREFIX-z]    暫時把窗口變大

其他

[PREFIX-!]     當(dāng)前面板在新的窗口中打開
[PREFIX-space] 會自動切換依次使用這些布局(幾種窗口布局輪流切換)

復(fù)制粘貼

[PREFIX-[]      進入復(fù)制模式
[PREFIX-Enter]  進入復(fù)制模式

=> 可以進行的操作
space/v    開始選擇
Ctrl-v     整塊選擇
hjkl       方向鍵移動
w/b        向前向后移動一個單詞
fx/Fx      行內(nèi)移動到下一個字符位置
ctrl-b/f   在緩沖區(qū)里面翻頁
g/G        到緩沖區(qū)最頂/底端
/ ?        向下, 向上查找
n/N        查找后下一個, 上一個
Enter/y    復(fù)制
[PREFIX-]] 粘貼

# 其他增強:

# 復(fù)制整個pane可見區(qū)域
[PREFIX-:] capture-pane

# 查看緩沖區(qū)內(nèi)容
[PREFIX-:] show-buffer

# 列出緩沖區(qū)列表
[PREFIX-:] list-buffers

# 從緩沖區(qū)列表選擇并插入到當(dāng)期面板
[PREFIX-:] choose-buffer => 回車

其他

顯示全部快捷鍵

[PREFIX-?]  查看所有快捷鍵
[PREFIX-e]  編輯Tmux配置
[PREFIX-E]  編輯主題
[PREFIX-`]  同步Pane操作
[PREFIX-~]  取消同步操作

命令模式

[PREFIX-:]

# 一些命令模式下的命令
# 新建窗口
new-window -n console

# 新建并執(zhí)行命令
new-window -n processes "top"

增強

1. Tmuxinator

Tmuxinator 是一個 Ruby 的 gem 包锚国,可用于創(chuàng)建 Tmux 的會話腕巡。它的工作方式是先在配置文件中定義會話中的細節(jié),然后用 1 條命令創(chuàng)建出這些會話

gem install tmuxinator
tmuxinator new project_a => ~/.tmuxinator/project_a.yml => 配置

啟動: tmuxinator start project_a
可以別名: mux start project_a

2. vim 插件

christoomey/vim-tmux-navigator, 安裝更便捷的導(dǎo)航跳轉(zhuǎn)


參考鏈接:

Tmux

gpakosz/.tmux

jbnicolai/tmux

tmux-plugins

Arch Wiki

tmuxifier

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末血筑,一起剝皮案震驚了整個濱河市绘沉,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌豺总,老刑警劉巖车伞,帶你破解...
    沈念sama閱讀 218,682評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異喻喳,居然都是意外死亡另玖,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,277評論 3 395
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來谦去,“玉大人慷丽,你說我怎么就攤上這事■蓿” “怎么了要糊?”我有些...
    開封第一講書人閱讀 165,083評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長妆丘。 經(jīng)常有香客問我锄俄,道長,這世上最難降的妖魔是什么勺拣? 我笑而不...
    開封第一講書人閱讀 58,763評論 1 295
  • 正文 為了忘掉前任奶赠,我火速辦了婚禮,結(jié)果婚禮上药有,老公的妹妹穿的比我還像新娘毅戈。我一直安慰自己,他們只是感情好塑猖,可當(dāng)我...
    茶點故事閱讀 67,785評論 6 392
  • 文/花漫 我一把揭開白布竹祷。 她就那樣靜靜地躺著,像睡著了一般羊苟。 火紅的嫁衣襯著肌膚如雪塑陵。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,624評論 1 305
  • 那天蜡励,我揣著相機與錄音令花,去河邊找鬼。 笑死凉倚,一個胖子當(dāng)著我的面吹牛兼都,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播稽寒,決...
    沈念sama閱讀 40,358評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼扮碧,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了杏糙?” 一聲冷哼從身側(cè)響起慎王,我...
    開封第一講書人閱讀 39,261評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎宏侍,沒想到半個月后赖淤,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,722評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡谅河,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,900評論 3 336
  • 正文 我和宋清朗相戀三年咱旱,在試婚紗的時候發(fā)現(xiàn)自己被綠了确丢。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,030評論 1 350
  • 序言:一個原本活蹦亂跳的男人離奇死亡吐限,死狀恐怖鲜侥,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情毯盈,我是刑警寧澤剃毒,帶...
    沈念sama閱讀 35,737評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站搂赋,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏益缠。R本人自食惡果不足惜脑奠,卻給世界環(huán)境...
    茶點故事閱讀 41,360評論 3 330
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望幅慌。 院中可真熱鬧宋欺,春花似錦、人聲如沸胰伍。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,941評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽骂租。三九已至祷杈,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間渗饮,已是汗流浹背但汞。 一陣腳步聲響...
    開封第一講書人閱讀 33,057評論 1 270
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留互站,地道東北人私蕾。 一個月前我還...
    沈念sama閱讀 48,237評論 3 371
  • 正文 我出身青樓,卻偏偏與公主長得像胡桃,于是被迫代替她去往敵國和親踩叭。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,976評論 2 355

推薦閱讀更多精彩內(nèi)容