Agkozak Zsh Prompt Versions Save

A fast, asynchronous Zsh prompt with color ASCII indicators of Git, exit, SSH, virtual environment, and vi mode status. Framework-agnostic and customizable.

v3.8.1

3 years ago
  • WSL2 now uses the subst-async method, while WSL1 continues to use usr1 for reasons of speed.
  • The error message permission denied: /proc/version is no longer produced in termux on Android.
  • zsh-async v1.8.5 is included.

v3.8.0

3 years ago

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.

v3.7.3

4 years ago

v3.7.2

4 years ago

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.

v3.7.1

4 years ago
  • AGKOZAK_CMD_EXEC_TIME_CHARS and AGKOZAK_VIRTUALENV_CHARS were being set back to default if they were set before the prompt was sourced.

v3.7.0

4 years ago
  • The agkozak ZSH Prompt now includes an indicator for Python virtual environments created with virtualenv, python -m venv, pipenv, poetry, and conda.
  • I have moved the command execution time indicator back towards the beginning of the prompt, right after the exit status indicator.

v3.6.0

4 years ago
  • There is now a command execution time indicator.
  • There are more psvar elements available to custom prompts.
  • By popular demand, it is now possible to use 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.
  • Asynchronous method improvements: 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.
  • I have provided the code for my own "Zenburn" custom prompt.

v3.5.0

4 years ago
  • The prompt now supports the zdharma ZSH plugin unload function standard, which is currently implemented by the zplugin framework. When the function agkozak-zsh-prompt_plugin_unload is invoked, the state of the shell before agkozak-zsh-prompt was loaded is restored.
  • For debugging purposes, 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.
  • Measures have been taken to avoid problems when the shell options KSH_ARRAYS and SH_WORD_SPLIT have been enabled.
  • When loaded on terminals without color, the prompt avoids using subshells when eliminating color codes from the PROMPT and RPROMPT strings.

v3.4.0

4 years ago
  • Stashed changes are now displayed by default (set AGKOZAK_SHOW_STASH=0 to turn this feature off).
  • In a single-line prompt, 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.

v3.3.0

4 years ago

Setting AGKOZAK_USER_HOST_DISPLAY to 0 causes the username and hostname not to be displayed.