Switching to fish shell
A philosopher named Luke Smith once said,
Setting fish as your default shell is like setting python as your default shell.
So.. Why not? Let's try fish.
There are many reasons I can think of for giving fish a try:
Fish loads faster compared to zsh with oh-my-zsh
Fish has many built-in functions while zsh needs extensions to use the same functions
Fish is way more user-friendly with its simple syntax and web based configuration
The web based configuration is too easy to be explained here, so let's talk about something else that might be helpful.
1. vimode
Fish has built-in vimode that allows you to edit the command input with vi keybindings. To enable vimode, simply run fish_vi_key_bindings
in fish. 'Normally' we are in insert mode, and press ESC to enter 'normal' mode, just as expected XD.
2. pywal support
Fish do not have a built-in pywal support and pywal do not have a official fish support :). But with pywal's template feature, it's not hard to achieve this.
Check this comment under a pywal issue.
vim ~/.config/wal/templates/colors.fish
Add lines in the file that look like set fish_color_normal {foreground.strip}
. Source the output file in your config.fish.
source ~/.cache/wal/colors.fish