You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm using this code to load zinit (not sure where I got it from, it's ages since I installed zinit).
if [[ !-f$HOME/.local/share/zinit/zinit.git/zinit.zsh ]];then
print -P "%F{33}▓▒░ %F{220}Installing %F{33}ZDHARMA-CONTINUUM%F{220} Initiative Plugin Manager (%F{33}zdharma-continuum/zinit%F{220})…%f"command mkdir -p "$HOME/.local/share/zinit"&&command chmod g-rwX "$HOME/.local/share/zinit"command git clone https://github.com/zdharma-continuum/zinit "$HOME/.local/share/zinit/zinit.git"&& \
print -P "%F{33}▓▒░ %F{34}Installation successful.%f%b"|| \
print -P "%F{160}▓▒░ The clone has failed.%f%b"fisource"$HOME/.local/share/zinit/zinit.git/zinit.zsh"
autoload -Uz _zinit
((${+_comps}))&& _comps[zinit]=_zinit
# This shows it's not there: compdef not found
which compdef
.zinit-tmp-subst-on
# And now it's there
which compdef &&echo"compdef found"
Interestingly, it's also gone after my zinit calls, so I have to set it explicitly around souring the aliases:
# For some reason, comdef is not defined here and this makes it available, so aliases can use it
.zinit-tmp-subst-on
if [ -f~/.zsh_aliases ];thensource~/.zsh_aliases
fiif [ -f~/.zsh_aliases_local ];thensource~/.zsh_aliases_local
fi
.zinit-tmp-subst-off
... in the last place of the file ...
# Load the real completion system# Last to let aliases also define completions
autoload -Uz compinit
compinit
# Load completions which were intercepted by zinits fake compdef function
zinit cdreplay -q
What happened?
I try to call
compdef
in an sourced alias file. According to https://github.com/zdharma-continuum/zinit?tab=readme-ov-file#calling-compinit-without-turbo-mode, compdef should be defined after sourcing zinit, but it isn't:I'm using this code to load zinit (not sure where I got it from, it's ages since I installed zinit).
Interestingly, it's also gone after my zinit calls, so I have to set it explicitly around souring the aliases:
Steps to reproduce
See zshrc code above
Relevant output
Screenshots and recordings
No response
Operating System & Version
OS: darwin21.3.0 | Vendor: apple | Machine: x86_64 | CPU: x86_64 | Processor: i386 | Hardware: x86_64
Zsh version
zsh 5.9 (x86_64-apple-darwin21.3.0)
Terminal emulator
xterm-256color (wezterm, nightly)
If using WSL on Windows, which version of WSL
None
Additional context
Code of Conduct
The text was updated successfully, but these errors were encountered: