Split the packages by platform so each app stays an opt-in Stow package under common/, mac/ or kde/. KDE gets its own Fastfetch, Helium and Spectacle packages, and darwin-breeze becomes kde/theme. The READMEs document stowing a whole group as well as individual packages.
43 lines
1.8 KiB
Bash
43 lines
1.8 KiB
Bash
#!/usr/bin/env zsh
|
|
|
|
unsetopt BEEP
|
|
setopt AUTO_CD
|
|
setopt GLOB_DOTS
|
|
setopt NOMATCH
|
|
setopt MENU_COMPLETE
|
|
setopt EXTENDED_GLOB
|
|
setopt INTERACTIVE_COMMENTS
|
|
setopt APPEND_HISTORY
|
|
setopt PUSHD_IGNORE_DUPS
|
|
|
|
setopt BANG_HIST # Treat the '!' character specially during expansion.
|
|
setopt EXTENDED_HISTORY # Write the history file in the ":start:elapsed;command" format.
|
|
setopt INC_APPEND_HISTORY # Write to the history file immediately, not when the shell exits.
|
|
setopt SHARE_HISTORY # Share history between all sessions.
|
|
setopt HIST_EXPIRE_DUPS_FIRST # Expire duplicate entries first when trimming history.
|
|
setopt HIST_IGNORE_DUPS # Don't record an entry that was just recorded again.
|
|
setopt HIST_IGNORE_ALL_DUPS # Delete old recorded entry if new entry is a duplicate.
|
|
setopt HIST_FIND_NO_DUPS # Do not display a line previously found.
|
|
setopt HIST_IGNORE_SPACE # Don't record an entry starting with a space.
|
|
setopt HIST_SAVE_NO_DUPS # Don't write duplicate entries in the history file.
|
|
setopt HIST_REDUCE_BLANKS # Remove superfluous blanks before recording entry.
|
|
setopt HIST_VERIFY # Don't execute immediately upon history expansion.
|
|
|
|
HISTFILE="${ZDOTDIR:-$HOME}/.zsh_history"
|
|
HISTSIZE=5000000
|
|
SAVEHIST=5000000
|
|
|
|
zstyle ':fzf-tab:complete:cd:*' fzf-preview 'lsd -1 --color=always --icon=always $realpath'
|
|
|
|
# Starship counts every entry in jobstates, including completed jobs that zsh
|
|
# hasn't reaped yet. Run jobs before Starship's precmd hook so parallel Zinit
|
|
# updates don't leave a stale job badge in the prompt.
|
|
autoload -Uz add-zsh-hook
|
|
|
|
_zinit_reap_done_jobs() {
|
|
jobs -p >/dev/null 2>&1
|
|
}
|
|
|
|
add-zsh-hook -d precmd _zinit_reap_done_jobs 2>/dev/null || true
|
|
precmd_functions=( _zinit_reap_done_jobs ${precmd_functions:#_zinit_reap_done_jobs} )
|