默认的 Linux 终端可以完成你的工作,但它看起来很无聊。
无聊并不代表不好。只是……无聊。
想给事情增添趣味吗?有几种方法可以做到这一点:
是的!第三个选项也给你一个完全不同的体验。
Zsh 就是这样一种流行的 shell。您可以从它已成为 macOS 中的默认 shell 的事实中想象它的流行。
ZSH (Z Shell) 允许您添加插件和主题,通过它们您可以调整整个终端体验。这是一个例子。

很酷。正确的?
在本教程中,我将分享如何设置 Zsh 以使您的终端看起来像上面屏幕截图中的那样。
我在本教程中使用的是 Ubuntu,但除了需要安装包的步骤外,您可以在其他 Linux 发行版上随意使用它。
在 Ubuntu 上安装 ZSH
首先,让我们安装 Zsh,并在后面的部分中使用一些先决条件:
sudo apt install zsh git fonts-font-awesome
完成安装后,您可以使用以下命令启动 Zsh:
zsh
它会给你各种选项来处理 Zsh 配置文件。
我将从头开始配置所有内容,因此我将使用option 0
一个空的 .zshrc 文件:

当我使用空配置文件时,您将收到以下提示:

我知道它看起来很乏味(比 bash 更糟糕)。但是等一下。我们才刚刚开始!
在 Ubuntu 上自定义 ZSH
对于 Zsh 的定制,我将介绍:
- 安装Oh my Zsh(一个管理 Zsh 的框架)
- 自动提示
- 语法高亮
- Powerlevel10k(Zsh 的主题)
那么让我们从 Oh My Zsh 开始吧。
1. 在 Ubuntu 上安装 Oh My Zsh
使用 Oh My Zsh 是管理 Zsh 插件和主题的最简单方法。
因此,它将作为我稍后要分享的插件和主题的基础。
要安装 Oh My Zsh,您只需执行一个简单的脚本:
sh -c "$(wget https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh -O -)"
它会询问您是否要将默认 shell 更改为 Zsh。我建议你不要改变它:

一旦你按下n
,它会让你进入基本的 Oh My zsh 外观:

默认情况下非常小。不是吗?
2. 在 zsh 上启用自动建议
自动建议插件将根据您的 Zsh 命令历史记录向您建议命令。
每个人每天都使用一些命令,例如更新存储库、列出目录内容等命令。
要添加自动建议插件,首先,使用给定的命令克隆存储库:
git clone https://github.com/zsh-users/zsh-autosuggestions ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-autosuggestions
现在,要激活自动建议插件,请打开 zshrc 文件:
nano ~/.zshrc
并添加zsh-autosuggestions
插件:

保存更改并退出 nano文本编辑器。
现在,重新启动终端并启动 Zsh:
zsh
它将启用自动建议:

当您键入命令并获得正确的建议时,您可以使用向右箭头键自动完成该部分。
3. 在 Zsh 上启用语法高亮
使用语法高亮的最好的部分是你知道你正在写的命令是否正确。
但除了命令之外,它在编程时也很有帮助。
要在 Zsh 上添加语法高亮显示,首先,您必须使用给定命令克隆存储库:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git ${ZSH_CUSTOM:-~/.oh-my-zsh/custom}/plugins/zsh-syntax-highlighting
接下来,打开 zshrc 文件:
nano ~/.zshrc
并添加zsh-syntax-highlighting
到插件中,如图所示:

现在,按 保存更改Ctrl + O
,按回车键,然后按Ctrl + X
退出 nano 文本编辑器。
接下来,重新启动终端并启动 Zsh 以启用语法高亮:
zsh
语法高亮应该给你以下效果:

4.使用Powerlevek10k主题自定义Zsh
从这里,您将看到终端的主要视觉变化。
所以第一步是克隆 Powerlevel10k 存储库:
git clone --depth=1 https://github.com/romkatv/powerlevel10k.git ${ZSH_CUSTOM:-$HOME/.oh-my-zsh/custom}/themes/powerlevel10k
现在,您必须更改默认主题(Oh My Zsh 随附)。要更改它,首先,打开 zshrc 文件:
nano ~/.zshrc
您将在以以下开头的行中找到当前应用的主题ZSH_THEME
在这里,将命名robbyrussell
需要更改的默认主题powerlevel10k/powerlevel10k
:

保存更改并重新启动终端。
启动 Zsh 实例,您将看到 powerlevel10k 主题的配置向导:
zsh
在这里,它会问你一些问题。它将以 Does this looks like a diamond (rotated square)? 开头?对我来说它没有:

接下来,它会问同样的问题,但不是锁。对我来说,它看起来像一个所以我会选择是(y):

接下来,它会询问图标是否适合十字之间。对我来说,它没有,所以我选择 No (n):

一旦你回答了所有问题,它会让你进入提示样式选择,你必须在其中选择你希望终端的外观:

从这里开始,它将为您提供多种选择。根据您的喜好选择。
一旦您完成了提示样式的选择,它就会让您进入即时提示模式。
在这里,我建议使用该Verbose
选项,因为它将创建一个备份配置文件:

最后,按y
将更改应用到 zshrc 文件:

应用更改后,它将显示新的和备份配置文件的位置:

对您所做的选择不满意?您可以使用以下命令从一开始就配置 powerlevel10k 主题:
p10k configure
在 Ubuntu 上将默认 shell 更改为 Zsh
一旦您对自定义感到满意,就可以将 Zsh 设置为默认 shell。
要更改您的默认登录 shell,首先,执行给定的命令:
chsh
要更改默认 shell,请输入 Zsh 的以下路径并按回车键:
/bin/zsh

但是如果你还记得的话,这将作为一个基本设置,所以如果你想尝试其他东西,你可以从 GitHub 的各种 zsh 主题中进行选择。
如果我遗漏了什么或想让我介绍其他内容,请告诉我。