Starship:适用于任何 Shell 的开源可定制提示

简介:如果您太在意终端的外观,可以轻松自定义和配置 Linux 终端提示的跨 shell 提示。

虽然我已经介绍了一些技巧来帮助您自定义终端的外观,但我还发现了有关有趣的跨 shell 提示的建议。

Starship:轻松调整 Linux Shell 提示

星舰 是一个开源项目,写在 帮助您设置最小、快速且可自定义的 shell 提示。

不管你是否使用 bash、fish、Windows 上的 PowerShell 或任何其他 shell,您可以利用 Starship 自定义外观。

请注意,您必须通过它 官方文件 能够为您喜欢的所有内容执行高级配置,但在这里我将包含一个简单的示例配置,以获取有关 Startship 的一些关键信息的先机。

Starship 专注于在默认情况下为您提供最小、快速且有用的 shell 提示。 它甚至还记录并显示执行命令所花费的时间。 例如,这是一个屏幕截图:

不仅限于此,根据自己的喜好自定义提示也相当容易。 这是一个官方 GIF,显示了它的实际效果:

让我帮你设置吧。 我在用 bash Ubuntu 上的 shell 来测试这一点。 你可以参考我提到的步骤,或者你可以看一下 官方安装说明 有关在系统上安装它的更多选项。

Starship 的主要亮点

  • 跨平台
  • 跨壳支持
  • 能够添加自定义命令
  • 自定义 git 体验
  • 在使用特定编程语言时自定义体验
  • 轻松自定义提示的各个方面,而不会以有意义的方式影响性能

在 Linux 上安装 Starship

笔记

安装 Starship 需要下载一个 bash 脚本,然后使用 root 访问权限运行脚本。|
如果您对此不满意,可以在此处使用 snap:
sudo snap install starship

笔记: 你需要有 书呆子字体 安装以获得完整的体验。

要开始,请确保您有 curl 安装。 您可以通过键入以下内容轻松安装它:

sudo apt install curl

完成后,输入以下内容以安装 Starship:

curl -fsSL https://starship.rs/install.sh | bash

这应该安装 Starship 用户/本地/bin 作为根。 可能会提示您输入密码。 这是它的外观:

将飞船添加到 bash

如屏幕截图所示,您将获得在终端中进行设置的说明。 但是,在这种情况下,我们需要在我们的末尾添加以下行 bashrc 用户文件:

eval "$(starship init bash)"

要轻松添加它,只需输入:

nano .bashrc

现在,通过向下滚动导航到文件末尾,并在文件末尾添加如下图所示的行:

完成后,只需重新启动终端或重新启动会话即可查看最小提示。 对于您的 shell,它可能看起来有点不同,但默认情况下它或多或少应该是相同的。

设置完成后,您可以继续自定义和配置提示。 让我向您展示我所做的示例配置:

配置 Starship Shell 提示:基础知识

要开始,您只需要制作一个配置文件(TOML文件) 在 .config 目录中。 如果您已经有了,您只需导航到该目录并创建配置文件即可。

以下是您必须键入以创建目录和配置文件的内容:

mkdir -p ~/.config && touch ~/.config/starship.toml

请注意,这是一个隐藏目录。 因此,当您尝试使用文件管理器从主目录访问它时,请确保在继续之前启用查看隐藏文件。

从现在开始,如果你想探索你喜欢的东西,你应该参考配置文档。

例如,我配置了一个简单的自定义提示,如下所示:

星舰风俗

为此,我的配置文件如下所示:

星舰自定义配置

根据他们的官方文档,这是一种基本的自定义格式。 但是,如果您不想要自定义格式,而只想使用颜色或不同符号自定义默认提示,则如下所示:

星舰不同的符号

而且,上述自定义的配置文件如下所示:

当然,这不是一个人能做出的最好看的提示,但我希望你能理解。

您可以通过包含图标/表情符号来自定义目录的外观,您可以调整变量、格式化字符串 git 提交,或者在使用特定的编程语言时。

不仅限于此,您还可以创建自定义命令以在您的 shell 中使用,以使您自己更轻松或舒适。

你应该在他们的 官方网站 和它的 GitHub 页面.

总结性思考

如果您只是想要一些小的调整,那么文档可能会被证明过于繁重。 但是,即便如此,它也可以让您轻松实现自定义提示或最小提示,您可以将其应用于任何常见的 shell 和您正在使用的任何系统。

Perosnally,我认为它不是很有用,但一些读者建议它,而且似乎人们确实喜欢它。 我很想知道您如何针对不同的用途定制 Linux 终端。

随意分享您对它的看法,如果您喜欢它,请在下面的评论中分享。