Skip to content
Compare
Choose a tag to compare

pdksh requires non-printing characters as delimiters for color escape sequences. In the past, the Polyglot Prompt has used \021, but that is visible in Windows Terminal, so I have switched to \016.

Compare
Choose a tag to compare

dash is now recognized correctly when it is the login shell. Props to @ansimita.

Compare
Choose a tag to compare

The Polyglot Prompt will now display virtual environments created using virtualenv, venv, pipenv, poetry, and conda.

Compare
Choose a tag to compare
  • Git status calculation for untracked files may now be turned off by setting POLYGLOT_SHOW_UNTRACKED=0. Doing so has the effect of speeding up the prompt display considerably when one is working with extraordinarily large repositories.
  • dash is now correctly recognized when it is a login shell.
  • The @ sign was not displaying between the username and the hostname in ZSH. This has been corrected.
Compare
Choose a tag to compare
  • Eliminated subshell by combining the _polyglot_branch_status and _polyglot_branch_changes functions
  • Exit gracefully if there is no command command (which is occasionally the case with busybox ash)
  • zsh
    • Eliminated subshell when zsh calculates hostname string
    • Do not output warnings if WARN_CREATE_GLOBAL or WARN_NESTED_VAR has been set
    • The vi-mode indicator will not work with a dumb terminal, so it is disabled when $TERM == dumb
Compare
Choose a tag to compare
  • The Polyglot Prompt now loads in dash when it is invoked from a sh symlink
  • Support for UWIN
Compare
Choose a tag to compare
  • busybox ash was offended by bash's ${BASH_VERSINFO[0]} bracketed array syntax. Now using $BASH_VERSION instead.
Compare
Choose a tag to compare
  • v1.9.0 had a typo in one bash prompt string
  • bash v5.0+ now uses \w in its PS1 instead of _polyglot_prompt_dirtrim
Compare
Choose a tag to compare
  • Path abbreviation is now handled by a single POSIX-compliant function (_polyglot_prompt_dirtrim). awk is no longer necessary for any supported shell.
  • Setting POLYGLOT_PROMPT_DIRTRIM=0 disables path abbreviation (although $HOME is still displayed as ~).
  • Path abbreviation now works in bash for versions below 4.0 (using _polyglot_prompt_dirtrim).
  • $HOME is not displayed as ~ when the user is root and $HOME is /.
  • git is run with GIT_OPTIONAL_LOCKS=0, which minimizes file system activity for git v2.15+.
  • basename has been replaced with a native shell function.
  • Escape sequences have been removed from the dash prompt, as they do not always display correctly.