nintendo switch

From oh my zsh to oh my fish

Why two articles today? Probably to commemorate the once-every-four-years 2.29 day, haha.


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


But the actual result is:

j ~
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...


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.


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 | 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:

  1. pure (use with caution)

    This theme is the one I used on zsh and has been ported to fish. 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.



  2. clearance

    Another minimalist theme, with a similar effect to pure, but the screenshot looks a bit ugly.


  3. 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)



  4. nai

    If the previous themes are minimalist, this one is extremely minimalist. But despite its simplicity, it has a unique charm.


Ownership of this post data is guaranteed by blockchain and smart contracts to the creator alone.