Changes since the last release
New and changed parameters
POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER can now be set to last (equivalent to true from older versions) or first (new feature).
Bug fixes
gitstatus once again works on 32-bit ARM Linux (armv6l and armv7l).
Changes since the last release
Bug fixes
Configuration wizard no longer redraws screen every second
Configuration wizard no longer prints spurious errors before the charset screen
Configuration wizard once again honors prompt frame selection
Changes since the last release
Wizard
Configuration wizard now reacts to terminal size changes in real time and can function at much smaller terminal dimensions.
Configs with prompt_char now have vi_mode disabled by default.
Generated configs now unset DEFAULT_USER.
Classic and Rainbow configs now set POWERLEVEL9K_MULTILINE_NEWLINE_PROMPT_GAP_BACKGROUND. This makes it easier to define 3-line prompt.
New parameters
If POWERLEVEL9K_CONFIG_FILE is set, configuration wizard will write configs to the specified location instead of the default ${ZDOTDIR:-~}/.p10k.zsh.
gitstatus
Support older macOS versions (at least El Capitan; even older versions might work).
Support Linux on armv6, i386 and i686.
Support cygwin and msys2 on i686.
macOS builds now use iconv from Homebrew.
gitstatusd binaries are now being built with https://github.com/romkatv/gitstatus/blob/release/mbuild.
Misc
The default icon for proxy segment is now ↔ instead of ⮂. The old icon is missing in many fonts.
Bug fixes
gitstatus once again works on 64-bit Linux without glibc.
Instant prompt no longer gets gradually slower over time when XDG_HOME_CACHE is on a slow filesystem.
Instant prompt no longer prints spurious erros when XDG_HOME_CACHE is on NTFS.
The old-style (and discouraged) custom prompts now work on zsh 5.3.1.
Configuration wizard once again presents "extra icons" and "fluent prompt" options when using 12-hour time format.
Changes since the last release
New and changed parameters:
Two additional parameters are available in gcloud: P9K_GCLOUD_CONFIGURATION and P9K_GCLOUD_PROJECT_NAME.
gcloud segment can now be in two states: PARTIAL and COMPLETE. See documentation.
Wizard:
The screen asking whether to display current time now offers a choice between two formats: 24-hour and 12-hour.
os_icon is no longer bold.
Slanted and flat separators are now using glyphs from Box Drawing Unicode block. They should look much better in fonts with correctly sized Box Drawing glyphs.
gcloud now displays project name instead of project id whenever possible.
Bug fixes:
Powerlevel10k no longer resolves symbolic links when calling commands that might act differently depending on argv[0].
java_version now works properly when using AdoptOpenJDK.
Misc:
Arch Linux users can now install Powerlevel10k with pacman. See instructions.
There is a new version of MesloLGS NF (the recommended font) with better alignment of powerline glyphs and 44% larger icons (by area). iTerm2 users can upgrade by typing p10k configure. Users of other terminals can follow manual installation instructions.
Changes since the last release
New prompt segments:
package: shows npm name and version from package.json (disabled by default).
New and changed parameters:
P9K_OS_ICON: set by Powerlevel10k on initialization; can be used in user-defined prompt segments and *_EXPANSION parameters.
POWERLEVEL9K_ICON_PADDING: when set to moderate, some icons will have an extra space after them. This is meant to avoid icon overlap when using non-monospace fonts. When set to none, spaces are not added.
Performance improvement:
detect_virt prompt segment is now 50% faster.
Bug fixes:
Many terminal escape sequences are now terminated with BEL instead of ST. BEL is the standard terminator according to ECMA-48 §8.3.89 but Konsole doesn't understand it. Thankfully, all terminals appear to understand BEL as extension.
Superfluous spaces have been removed from vcs segment when using a monospace font and not using my_git_formatter.
Wizard:
Generated configs now set POWERLEVEL9K_ICON_PADDING in favor of *_VISUAL_IDENTIFIER_EXPANSION. The value of this parameters depends on the answers to the first few questions that concern terminal font capabilities.
Generated configs no longer attempt to work around misconfigured locale. The workarounds in Powerlevel10k proper are sufficient.
gitstatus:
Fix a regression on Linux systems where uname doesn't understand -o.
Fix a regression on Cygwin and MinGW when running on older versions of Windows.
Fix a bug that can result in occasional gitstatus initialization failure on WSL when using Powerlevel10k with Instant Prompt.
Changes since the last release
New prompt segments:
haskell_stack: haskell version from stack.
New and changed parameters:
POWERLEVEL9K_MODE can now be set to ascii for ASCII prompt.
The default value of POWERLEVEL9K_VIRTUALENV_GENERIC_NAMES now contains env.
New parameter: POWERLEVEL9K_JAVA_VERSION_PROJECT_ONLY. Display java_version only in java project (sub)directories.
POWERLEVEL9K_KUBECONTEXT_SHOW_ON_COMMAND now contains istioctl and kogito in all config templates. Thanks, @errantepiphany!
All *env segments now respect POWERLEVEL9K_*ENV_SHOW_SYSTEM. If set to false, the segment will be hidden if its content is "system". The default value is true.
nodenv now understand POWERLEVEL9K_NODENV_SOURCES, just like all other *env segments.
POWERLEVEL9K_DIR_OMIT_FIRST_CHARACTER now has useful semantics (incompatible with powerleve9k, where it was useless). If set to true, it'll remove the leading slash from the current directory if it's absolute. It no longer does anything if the directory is not absolute or if the leading character has been removed or changed by the shortener. This is meant for users who override POWERLEVEL9K_DIR_PATH_SEPARATOR.
Robustness improvements:
Powerlevel10k now works when there are no utf-8 locales on the machine.
Configuration wizard:
Lean, Classic and Rainbow styles now have an option to restrict prompt character set to ASCII.
Styles that require 256 colors are not offered when terminal cannot display 256 colors.
Rainbow and Classic styles now have an option to use flat heads. This option is offered in ASCII mode and when powerline glyphs are unavailable.
Configuration wizard now restores screen upon exit.
New segments in config templates: haskell_stack (enabled by default) and java_version (disabled by default).
Bug fixes:
Visual mode indicator now correctly switches back to command mode indicator after pressing d and similar when using Zsh >= 5.3. Visual mode indicator no longer gets displayed in Zsh prior to 5.3. Please upgrade Zsh if this matters to you.
*ENV_DIR parameters are now handled the same way as in the underlying *env projects.
Misc:
There is no longer an empty line at the top of the screen after hitting Ctrl-L or typing clear or reset, even with POWERLEVEL9K_PROMPT_ADD_NEWLINE=true and POWERLEVEL9K_TRANSIENT_PROMPT=always.
It's now possible to install powerlevel10k with Homebrew.
Subseparators are now displayed with the foreground color of the previous/next segment in left/right prompt. Used to be the other way around. Thanks, @ahaasler!
gitstatus:
make now produces usrbin/gitstatusd instead of ./gitstatusd.
build.zsh now puts the binary in usrbin subdirectory. If you place it in the same subdirectory of your gitstatus installation without changing the file name, gitstatus will pick it up automatically.