Open tlrdstd opened 5 years ago
Believe this is the root cause of #1101
I have this problem and the correction works for me. Thx
@tlrdstd @Turiok What's the output of echo $ZSH_VERSION
on your system?
@romkatv 5.0.7
:-/ I have a weird mix of Zsh versions, and hadn't realized when I filed this ticket that my work system is actually launching the older one. If you need to close this due to lack of support for old versions, I understand.
It's not my call (I'm not a Powerlevel9k dev) but https://github.com/bhilburn/powerlevel9k/wiki/Minimum-System-Requirements says the minimum supported version is 5.1.
To the devs: In Powerlevel10k, to avoid confusion when people have multiple versions of zsh installed, I have this piece of code at the top:
if ! autoload -U is-at-least || ! is-at-least 5.1; then
() {
>&2 echo -E "You are using ZSH version $ZSH_VERSION. The minimum required version for Powerlevel10k is 5.1."
>&2 echo -E "Type 'echo \$ZSH_VERSION' to see your current zsh version."
local def=${SHELL:c:A}
local cur=${${ZSH_ARGZERO#-}:c:A}
local cur_v=$($cur -c 'echo -E $ZSH_VERSION' 2>/dev/null)
if [[ $cur_v == $ZSH_VERSION && $cur != $def ]]; then
>&2 echo -E "The shell you are currently running is likely $cur."
fi
local other=${${:-zsh}:c}
if [[ -n $other ]] && $other -c 'autoload -U is-at-least && is-at-least 5.1' &>/dev/null; then
local other_v=$($other -c 'echo -E $ZSH_VERSION' 2>/dev/null)
if [[ -n $other_v && $other_v != $ZSH_VERSION ]]; then
>&2 echo -E "You have $other with version $other_v but this is not what you are using."
if [[ -n $def && $def != ${other:A} ]]; then
>&2 echo -E "To change your user shell, type the following command:"
>&2 echo -E ""
if [[ $(grep -F $other /etc/shells 2>/dev/null) != $other ]]; then
>&2 echo -E " echo ${(q-)other} | sudo tee -a /etc/shells"
fi
>&2 echo -E " chsh -s ${(q-)other}"
fi
fi
fi
}
return 1
fi
Consider adding something like this.
My version on centos is 5.0.2 and i cant upgrade from it. any leads on what i can do?
@tlrdstd @Turiok What's the output of
echo $ZSH_VERSION
on your system?
Sorry @romkatv I didn't see your comment. My version of ZSH is 5.7.1
@tlrdstd @Turiok What's the output of
echo $ZSH_VERSION
on your system?Sorry @romkatv I didn't see your comment. My version of ZSH is 5.7.1
Did you get it from zsh --version
or from echo $ZSH_VERSION
?
My version on centos is 5.0.2 and i cant upgrade from it. any leads on what i can do?
Hi @chandrahas-abburi,
For my case I compiled zsh with the version 5.7.1
@tlrdstd @Turiok What's the output of
echo $ZSH_VERSION
on your system?Sorry @romkatv I didn't see your comment. My version of ZSH is 5.7.1
Did you get it from
zsh --version
or fromecho $ZSH_VERSION
?
It was echo $ZSH_VERSION.
echo $ZSH_VERSION
5.7.1
zsh --version
zsh 5.7.1 (x86_64-pc-linux-gnu)
@Turiok
You get an error on vi-git-untracked:local:8
when using zsh 5.7.1? This is surprising because that error is caused by a bug in ZSH that was fixed in 5.1.
Perhaps you can try adding echo $ZSH_VERSION
to vi-git-untracked
to make sure it's indeed zsh 5.7.1 that executes the function and produces the error?
@chandrahas-abburi
My version on centos is 5.0.2 and i cant upgrade from it. any leads on what i can do?
There are a few options.
https://github.com/bhilburn/powerlevel9k/blob/master/functions/vcs.zsh#L18 is:
and should be:
per https://unix.stackexchange.com/a/208622 about Zsh word-splitting.
Simple repro:
Impact:
vi-git-untracked:local:8: not valid in this context: <file>
printed after every execution in this repo