git bash tmux
我使用GNOME Terminal,主要是因为它是我的发行版的默认设置。 但是终端内部发生的事情远非“默认值”。 在开始自定义它之前,这是它的样子:
从底部开始
我使用终端多路复用器技术tmux来管理我的终端体验。
在上图的底部,您可以看到我的绿色tmux栏。 底部的[3]
表示该终端是第三个终端:每个终端都运行自己的tmux会话。 (我创建了一个新字体来放大字体,因此在此屏幕截图中更容易看到;这是该终端与我的终端之间的唯一区别。)
提示看起来也很有趣,对吧? 在提示中塞入了太多信息后,我喜欢停留在换行符中,这样,如果我想进行即兴的shell编程或编写五步管道,就可以做到,而不会万事大吉。 折衷方案是简单的命令序列(触摸,复制,移动)可以更快地滚动到我的屏幕之外。
Aleph空 ,最小的无限基数 。 当内容行结束时很明显,并且当我意识到Aleph和下标0都是Unicode字符时,我喜欢它,我忍不住要使Aleph null成为提示的一部分的诱惑。 (数学书呆子,团结起来!)在此之前是我的用户名; 这是适度有用的,因为我在具有不同用户名的多台计算机上使用相同的点文件 (存储在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 ℵ₀
$
git bash tmux