zsh-config/README.md

1.4 KiB

zsh-config

This is my personal zsh configuraton.

Requirements

  • starship - a pretty and fast prompt
  • direnv* - runs on cd, safely set enviroment
  • eza* - better ls
  • bat* - better cat, less, man, etc.

(* = optional)

Installation

  1. Clone this repo and init the submodules
git clone 'https://git.zander.im/Zander671/zsh-config.git'
git submodule init && git submodule update
  1. Create a .zshrc and fill it with something like this:
ZSH_CONFIG_DIR="path/to/this/repo" # This variable *MUST* be set
source "${ZSH_CONFIG_DIR}/init.zsh"
  1. Optionally, set some other variables (before the source line):
  • ZSH_BOOKMARK_DIR: Bookmark directory (default: ~/.cache/zsh/bookmarks)
  • ZSH_BOOKMARK_LS: If true, run ls after jumping to a bookmark (default: true)
  • ZSH_USER_DIR: Directory containing configuration files (see below, default: ~/.zsh.d)

Configuration

To configure, create ~/.zsh.d (or set ZSH_USER_DIR as described above). The create either of the option files init.zsh and early-init.zsh. The former is run in the middle of startup, after most plugins have been initialized, but before ones related to command history, auto-complete, etc. The latter is run as the first thing in the configuration file (after autoload -U compinit && compinit).