Async completion support

This commit is contained in:
David Tomaschik
2025-06-09 13:21:50 -07:00
parent ee7f78e99c
commit 5057ab890b
2 changed files with 17 additions and 0 deletions

View File

@@ -130,6 +130,10 @@ source_first_existing() {
return 1 return 1
} }
have_command() {
command -v "${1}" &>/dev/null
}
# Source extras and aliases if interactive # Source extras and aliases if interactive
if [[ $- == *i* ]] ; then if [[ $- == *i* ]] ; then
source_if_existing $HOME/.aliases source_if_existing $HOME/.aliases

View File

@@ -0,0 +1,13 @@
# Build some completions if they don't exist
# We run in the background to reduce shell startup time
{
COMPDIR=${HOME}/.zshrc.completions
function missing_comp() {
test ! -f "$COMPDIR/$1"
}
have_command rustup && {
missing_comp _rustup && rustup completions zsh > $COMPDIR/_rustup
missing_comp _cargo && rustup completions zsh cargo > $COMPDIR/_cargo
} || true
} &>/dev/null &!