- New feature: Instant Prompt.
- Zsh starts instantly even if zshrc loads dozens of plugins.
- Must be explicitly enabled via `p10k configure`.
- New prompt segment: azure.
- New styles: Pure and Rainbow.
- 6 times faster loading (independent of instant prompt).
- New prompt segment: terraform.
- Configuration wizard:
- Offer to install Meslo Nerd Font (only on iTerm2 and Termux).
- Offer to enable `time` prompt segment.
- New style options: round separators, heads and tails.
- Reduce the minimum required terminal width to 55 columns.
- Several bug fixes. Most notable:
- Fix network interface and ip parsing on Linux and WSL.
- Disregard auto_name_dirs if it's set.
- Several bug fixes. Most notable:
- Don't hide command execution time on reset-prompt.
- Support prezto with zsh 5.1.
- Don't hide nvm prompt when there is no nvm command.
- New prompt: ranger.
- Add an option to hide rust version when outside of rust project tree.
- Add an option to show rvm gemset.
A dozen bug fixes. Most important:
- rbenv and a few other segments didn't work if IFS was set
to something unusual.
- vcs segment couldn't properly apply subsegment style if
color overrides used mnemonic names.
- the check for .p10k.zsh already being sourced was too strict.
This is a new variable that will need to be set on all new prompts and
is not backwards compatible with custom prompts that are not prezto
managed, but use prezto's editor-info functionality. Updated the
README.md with additional information for themes.
For the submodules that have some kind of release (tags), they were
updated up to the most recent release. Otherwise, the submodule was
updated to the latest commit.
This updates the submodules for autosuggestions, completion,
syntax-highlighting and the prompts async, powerlevel9k and pure.
All submodules that have TAGs/Releases were updated to their latest
TAG/release, except for syntax-highlighting because it's latest
release/TAG is from more than one year ago, and the project seems to be
well maintained but without releases.
This reverts commit 6d00fdf8c8.
As unfortunate as it is, this workaround was a hack and doesn't take
into account prompts like spaceship which don't use $editor_info but
rely on $KEYMAP directly. We'll need to find a more consistent solution
to fix this.
This was a change in zsh 5.4.1 where prompt_sp is now reset on calls to
prompt, unlike previous behavior where it was set by default. This
restores the previous default behavior.
Refs #1423, but is not a complete fix because we need to wait for
external prompts to update as well.
This includes some improvements by @indrajitr in addition to the main migration.
The first step was to avoid PROMPT and RPROMPT modification when possible (which may help resolve some other issues as well relating to zsh crashes with the sorin prompt) then update the displayed git information in a separate variable rather than a command.
We use zsh-async for creating and running background tasks. The sorin prompt uses it to update git info without blocking the prompt from displaying (because of how long it can take). In the future it may be worth moving more tasks and more prompts to using this.
The move to zsh-async does make the git prompt slower in some circumstances (most noticeable in large repos), but this is a worthwhile tradeoff to avoid the cache file which had a number of potential security holes.
We have also switched to adding zsh-async as an external submodule (rather than the version bundled with pure) which may cause some migration headaches, but it will be worth it in the long run.