Add configuration for zsh

- Add ~/.zshrc
  + Configure on how the `history` works
  + Enable nicer `cd` and globbing behavior
  + Enable tab completion, and make them feel nicer
  + Enable VI mode and add some VI-like key bindings
- Add ~/.zlogout clearing the screen
- Add ~/.config/zsh/.zshrc and make it dispatch to ~/.zshrc
  to make `zsh` use the same configuration even on more
  recent Debian/Ubuntu machines that do not look for
  ~/.zshrc any more
- Ensure ~/.local/state/zsh/ exists
This commit is contained in:
Alexander Hess 2026-06-11 18:28:02 +02:00
commit 3abcdabf31
Signed by: alexander
GPG key ID: B46EDB4DFC26805D
11 changed files with 209 additions and 0 deletions

11
.config/zsh/.zshenv Normal file
View file

@ -0,0 +1,11 @@
#!/bin/zsh
# Failsafe: Dispatch to the real `zsh` env file in ~/
#
# See ~/.config/zsh/.zshrc for the details
#
# Without this, a set `$ZDOTDIR` would silently skip ~/.zshenv
# and lose `skip_global_compinit=1`
[ -f "$HOME/.zshenv" ] && . "$HOME/.zshenv"