当前位置: 首页 > 科技观察

使用tmux和Git自定义我的Linux终端

时间:2023-03-16 13:11:04 科技观察

设置你的控制台,这样你就知道你在哪里以及该做什么我使用GNOME终端,主要是因为它是我的发行版的默认设置。但它远非我终端内的“默认”。在我开始解释如何自定义它之前,先看看它现在的样子:MosheZadka的终端从底部开始,我使用终端多路复用技术tmux来管理我的终端体验。在上图的底部,您可以看到我的绿色tmux栏。底部的[3]表示它是第三个终端:每个终端运行自己的tmux会话。(我创建了一个新会话,使字体更大,以便在屏幕截图中更容易看到;这是它与其他终端之间的唯一区别。)提示看起来也很有趣,对吧?在提示中塞入太多信息后,我喜欢插入一个换行符,这样如果我想即兴编写shell编程或编写一个通过五次的管道,我就不会越过屏幕的界限。这是以简单的命令序列(新建、复制、移动)更快地滚出屏幕为代价的。该行的末尾是Aleph零Aleph空字符,这是最小的无限基数。我希望内容行的结尾很明显,当我意识到“alef”和下标0都是Unicode字符时,我无法抗拒使用“alef零”作为提示的一部分的诱惑。(数学极客,团结起来!)在那之前是我的用户名。由于我在具有不同用户名的多台计算机上使用相同的点文件(保存在Git中),因此工作正常。在我的用户名之前,是我所在目录的最后一部分。完整路径通常太长且无用,而当前目录对于像我这样经常忘记自己在做什么的人很有用。在此之前是机器的名称。我所有的机器都以我喜欢的电视节目命名。我的旧笔记本是mcgyver。提示中的第一位是我最喜欢的:一封让我知道目录的Git状态的字母。G如果目录“不在Git中”。K如果目录正常并且不需要任何操作。如果有Git未知的文件需要添加或忽略,是的!。如果需要提交,那么就是C,如果没有upstream,那么就是U。如果upstream存在,但是我没有推送,那么就是P。场景不是基于当前状态,而是描述下一个我要采取的行动。(要复习Git术语,请阅读本文。)终端功能是通过一个有趣的Python程序实现的。它运行python-mhowsit(在我在虚拟环境中安装howsit之后)。您可以在上图中看到渲染,但为了完整起见,这是我的PS1:[$(~/.virtualenvs/howsit/bin/python-mhowsit)]\h:\W\u??$