Linux中國

使用 tmux 和 Git 自定義我的 Linux 終端

我使用 GNOME 終端,主要是因為它是我的發行版的默認設置。但是我終端內遠非「默認值」。在我開始解釋如何自定義它之前,它現在是這個樣子:

![Moshe Zadka's terminal](/data/attachment/album/202007/25/102923ak3j6pqhmkfgfhpg.png "Moshe Zadka's terminal")

從底部開始

我使用終端多路復用技術 tmux 管理我的終端體驗。

在上圖的底部,你可以看到我的綠色 tmux 欄。底部的 [3] 表示它是第三個終端:每個終端都運行自己的 tmux 會話。(我創建了一個新會話來放大字體,這樣可在截圖中更容易看到;這是它與其他終端之間的唯一區別。)

提示符看起來也很有趣,對吧?在提示符中塞入了太多信息後,我喜歡插上一個換行符,這樣一來,如果我想即興進行 shell 編程或編寫一個傳遞了五次的管道,也不會超出屏幕界限。這樣做的代價是簡單的命令序列(新建、複製、移動)會更快地滾動出我的屏幕。

行末是 阿列夫零 Aleph null 字元,它是最小的無窮基數。我希望內容行的結束很明顯,並且當我意識到「阿列夫」和下標 0 都是 Unicode 字元時,我無法抗拒使用「阿列夫零」作為提示符的一部分的誘惑。(數學極客們,團結起來!)

在此之前是我的用戶名。由於我在不同用戶名的多台計算機上使用相同的點文件(保存在 Git 中),因此這個還算有用。

在我的用戶名之前,是我所在目錄的最後一部分。完整路徑通常太長且無用,而當前目錄對於像我這樣的經常忘記在做什麼人來說是很有用的。在此之前是機器的名稱。我所有的機器都以我喜歡的電視節目命名。我的舊筆記本是 mcgyver

提示符中的第一位是我最喜歡的:一個讓我知道目錄的 Git 狀態的字母。如果目錄為「不在 Git 中」,那麼是 G。如果目錄為「沒有問題」(OK),且無需任何操作,那麼是 K。如果有 Git 未知的文件需要添加或忽略,那麼是 !。如果需要提交,那麼是 C。如果沒有上游,那麼是 U。如果存在上游,但我沒有推送,那麼是 P。該方案不是基於當前狀態,而是描述了我要做的下一個動作。(要回顧 Git 術語,請閱讀本文。)

終端功能是通過一個有趣的 Python 程序完成的。它運行 python -m howsit(在我把 howsit 安裝在虛擬環境中之後)。

你可以在上圖中看到渲染效果,但是為了完整起見,這是我的 PS1

[$(~/.virtualenvs/howsit/bin/python -m howsit)]h:W u ℵ₀  
$

via: https://opensource.com/article/20/7/tmux-git

作者:Moshe Zadka 選題:lujun9972 譯者:geekpi 校對:wxy

本文由 LCTT 原創編譯,Linux中國 榮譽推出


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國