Zsh is a good upgrade path from Bash because it has more features but similar syntax, so knowledge can be transferred.
Key interactive features of Zsh:
- auto-change directory
- named directories
cd
path (Bash also has that)- auto-hiding right hand side prompt
- friendly custom prompt syntax
Key non-interactive features:
- curses module!
Sample config (to be added at the end of .zshrc
):
# This won't work if promptinit is enabled. PS1='%B%F{yellow}%n@%m%f%b %# ' RPS1='%B%F{magenta}%~%f%b' setopt autocd # Note: Bash also supports $CDPATH (except as a string). cdpath=(. ~ ~/Projects/ ~/Projects/web/homepage/) homepage=~/Projects/web/homepage : ~homepage alias ls='ls --color=auto' alias grep='grep --color=auto' alias -s py=python3 # These paths are valid for plugins installed from Debian repos. source /usr/share/zsh-syntax-highlighting/zsh-syntax-highlighting.zsh source /usr/share/zsh-autosuggestions/zsh-autosuggestions.zsh
More to follow; see more notes on various other topics.