增加功能
命令外壳
大多数发行版都内置了Bash。使用插件可以使您想要的东西变得更简单,但是使用Zsh可以轻松得多。为什么?
- 通过按<Tab>或<Arrow Up>可以完成自动完成命令的高级机制。与Bash不同,您无需进行配置,所有功能都可以在最高级别上直接使用。
- 许多现成的主题,模块,插件等等。通过框架(oh-my-zsh,prezto等)的可定制性,这极大地扩展了定制和改进终端的可能性。同样,所有这些都可以在Bash中实现,但是Zsh有大量现成的材料。对于Bash而言,它们的数量明显减少,而有些则根本没有。
这些是我从Bash切换到Zsh的主要原因。除此之外,Zsh还有许多其他优点。
设置Zsh
首先,安装Zsh(例如,如果已安装,例如在Manjaro中,则可以跳过此步骤):
sudo apt install zsh
当提示您将Zsh设置为默认外壳程序时,单击
Y
以确认。
Oh-My-Zsh是一种流行且积极开发的Zsh框架,它允许灵活定制终端外壳。让我们安装它:
sh -c "$(curl -fsSL https://raw.github.com/ohmyzsh/ohmyzsh/master/tools/install.sh)"
zsh:找不到命令:curl
curl
:
sudo apt install curl
语法突出显示。当命令的不同部分以不同的颜色突出显示时,浏览终端的内容要容易得多。例如,目录将带有下划线,命令将以普通文本以外的其他颜色突出显示。安装插件
zsh-syntax-highlighting
:
git clone https://github.com/zsh-users/zsh-syntax-highlighting.git $ZSH_CUSTOM/plugins/zsh-syntax-highlighting
zsh:找不到命令:git
git:
sudo apt install git
为了使插件正常工作,您需要连接它。
在文件中,
~/.zshrc
将行从更改为plugins=
:
plugins=(git zsh-syntax-highlighting)
如果没有这样的行,请添加它。
做完了!我们得到了一个方便实用的终端。现在让我们在视觉上令人愉悦。
自定义外观
安装PowerLevel10K主题:
git clone https://github.com/romkatv/powerlevel10k.git $ZSH_CUSTOM/themes/powerlevel10k
下载并添加字体
JetBrains Mono Nerd
(带有图标)至系统:
从列表中选择一种,在文件夹中
/complete
选择一种不带“ Windows Compatible”且后缀为“ Mono”的字体。
我们连接字体和主题。
编辑
~/.zshrc
。
如果文件已包含这些行,请替换它们。
ZSH_THEME="powerlevel10k/powerlevel10k"
POWERLEVEL9K_MODE="nerdfont-complete"
颜色。终端设计的重要组成部分是配色方案。我经历了许多不同的方案,对其进行了编辑,然后选择了Monokai Dark。不会伤害眼睛,但同时又令人愉悦而明亮。颜色清单:
[colors]
# special
foreground = #e6e6e6
foreground_bold = #e6e6e6
cursor = #fff
background = #000
# black
color0 = #75715e
color8 = #272822
# red
color1 = #f92672
color9 = #f92672
# green
color2 = #a6e22e
color10 = #a6e22e
# yellow
color3 = #434648
color11 = #7ea35f
# blue
color4 = #66d9ef
color12 = #66d9ef
# magenta
color5 = #ae81ff
color13 = #ae81ff
# cyan
color6 = #adb3b9
color14 = #62ab9d
# white
color7 = #2AA198
color15 = #2AA198
在不同的终端中,配色方案会有不同的变化(通常是通过终端设置完成的),但是各处的颜色顺序是相同的。您可以将该模板导入为Termite格式,然后通过terminal.sexy将其导出到您的终端。
运行配置主题:
p10k configure
。
通过选择最喜欢的显示选项来自定义主题。
最后一步是更改主题配置并替换内置颜色。
编辑文件
~/.p10k.zsh
。
如果文件已包含这些行,请替换它们。可以通过以下命令获得颜色代码
for i in {0..255}; do print -Pn \"%K{$i} %k%F{$i}${(l:3::0:)i}%f \" ${${(M)$((i%6)):#3}:+$'\n'}; done
- 仅显示当前目录:
typeset -g POWERLEVEL9K_SHORTEN_STRATEGY=truncate_to_last
- 目录块背景:
typeset -g POWERLEVEL9K_DIR_BACKGROUND=33
- 箭头颜色:
typeset -g POWERLEVEL9K_PROMPT_CHAR_OK_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=2
和
typeset -g POWERLEVEL9K_PROMPT_CHAR_ERROR_{VIINS,VICMD,VIVIS,VIOWR}_FOREGROUND=1
- Git分支背景:
typeset -g POWERLEVEL9K_VCS_CLEAN_BACKGROUND=15
结果
错误:
GIT:
资料来源
PowerLevel10K文档
在线终端颜色方案设计器
Bash和Zsh之间的区别