Hasty Briefsbeta

Bilingual

Life is too short for a slow terminal

6 hours ago
  • #dotfiles
  • #productivity
  • #shell-optimization
  • The author prioritizes shell speed, with shell starting in about 30 milliseconds including completions, syntax highlighting, autosuggestions, fzf, and direnv.
  • Key optimization is avoiding frameworks like oh-my-zsh and plugin managers to reduce overhead; instead, directly source three specific plugins from disk.
  • Cache completions by running compinit fully only once per day using a .zcompdump cache check to minimize startup time.
  • Lazy-load heavy tools like nvm and kubectl completions by wrapping them in functions that load on first use, avoiding eager sourcing.
  • Use an asynchronous prompt (like pure) to prevent lag from synchronous git status operations, especially in large repositories.
  • Employ a low-latency terminal emulator (Ghostty) and maintain fast input latency, using tmux for seamless session management.
  • Measure shell performance with tools like time, hyperfine, zprof, and timestamp tracing to identify and optimize slow components.
  • Overall philosophy emphasizes minimalism, intentional tool selection, and removing unused components to maintain instant shell responsiveness.