A fast, asynchronous Zsh prompt with color ASCII indicators of Git, exit, SSH, virtual environment, and vi mode status. Framework-agnostic and customizable.
subst-async
method, while WSL1 continues to use usr1
for reasons of speed.permission denied: /proc/version
is no longer produced in termux
on Android.The prompt no longer defaults to zsh-async
on Solaris and Solaris-derived operating systems, as I have noticed that zsh-async
's performance can be quirky on underperforming systems.
Bug fix. On ZSH v5.0.0-2, a function of the type
foo() {
setopt LOCAL_OPTIONS WARN_CREATE_GLOBAL
FOO=bar ls
}
triggers the warning
foo:2: scalar parameter FOO created globally in function
This fix prevents that sort of warning from being displayed for _agkozak_precmd
.
Also, version 1.8.0 of zsh-async
is now used.
AGKOZAK_CMD_EXEC_TIME_CHARS
and AGKOZAK_VIRTUALENV_CHARS
were being set back to default if they were set before the prompt was sourced.virtualenv
, python -m venv
, pipenv
, poetry
, and conda
.psvar
elements available to custom prompts.AGKOZAK_LEFT_PROMPT_ONLY=1
with AGKOZAK_MULTILINE=0
, although the two options together may be visually unappealing on a slow system or when working with very large Git repos.subst-async
has been tweaked to provide more stability and speed on all systems. usr1
has been made faster through the elimination of a subshell. It is now the default asynchronous method in all Windows environments.agkozak-zsh-prompt_plugin_unload
is invoked, the state of the shell before agkozak-zsh-prompt was loaded is restored.WARN_CREATE_GLOBAL
is now applied to individual functions whether or not debugging mode is enabled. On ZSH v5.4.0+ and when AGKOZAK_PROMPT_DEBUG
is set to 1
, all functions have WARN_NESTED_VAR
applied to them.KSH_ARRAYS
and SH_WORD_SPLIT
have been enabled.PROMPT
and RPROMPT
strings.AGKOZAK_SHOW_STASH=0
to turn this feature off).AGKOZAK_PRE_PROMPT_CHAR
allows you to change the space before the prompt character to any character or characters you like; setting AGKOZAK_PRE_PROMPT_CHAR=''
eliminates the space entirely.Setting AGKOZAK_USER_HOST_DISPLAY
to 0
causes the username and hostname not to be displayed.