Why two articles today? Probably to commemorate the once-every-four-years
2.29
day, haha.
Cause#
As we all know, there are many types of shells, with the most commonly used being bash
and zsh
. oh my zsh
is an extension toolkit based on zsh
. Since I started using linux
, I have been using zsh & oh my zsh
. It is easy to use and extend, but it also has a major drawback: it's too slow!
Imagine that you need to open the terminal
and switch to the blog
path. As soon as you run the terminal
, you start typing the command and expect to see the following result:
~
⟩ j blog
/home/jeasonlau/File/blog
~/File/blog
⟩
But the actual result is:
j ~
⟩ blog
unknown command : blog
~
⟩
Surprised? Not surprised?
After encountering this situation multiple times, I couldn't bear it anymore and started the journey of changing the shell
...
Change#
I have also heard of another famous shell: fish
. When complaining about the slowness of zsh
in the NEU lug
group, I accidentally discovered that several group members were using fish
, so I decided to switch.
Searching the fish
documentation, I found that it can be directly installed on arch
-based distributions, so I ran the following command:
sudo pacman -S fish
After successful installation, I used the following command to change the default shell to fish
:
chsh -s /usr/local/bin/fish
After experiencing it, I felt that it was indeed much faster than zsh
. It also has built-in support for command highlighting, command suggestions, and other features, so there is no need to manually configure it. It can be used out of the box.
Theme#
After the successful change, the more important task is to change the theme! Adhering to the basic principle of (how can the command line be plain!), I started searching for recommended themes for fish
. Although I didn't find any results, I discovered something else: oh my fish
.
It is a tool similar to oh my zsh
, which extends the functionality of the fish shell
, including plugins and themes. So I followed the documentation to install it:
curl -L https://get.oh-my.fish | fish
After installation, you can choose from the available themes. Once you find the desired theme, simply execute the following command to install it:
omf install <theme name>
Let's take a look at all the themes and make some theme recommendations.
I personally like four themes:
-
pure (use with caution)
This theme is the one I used on
zsh
and has been ported tofish
. However, after trying it, I found that it is not very compatible and always has some strange issues. But because of my long-term attachment to it, I still put it in the first place. -
clearance
Another minimalist theme, with a similar effect to
pure
, but the screenshot looks a bit ugly. -
tomita
The screenshot looks great, but the default colors are slightly different from the screenshot. Also, the color of the fish logo is set to light yellow by default, which is not very friendly for light backgrounds. (Of course, you can modify the configuration file to change the colors)
-
nai
If the previous themes are minimalist, this one is extremely minimalist. But despite its simplicity, it has a unique charm.