- battery: use the same technique as in vpn_ip to avoid reset=2.
- implement fake gitstatus api on top of vcs_info (or plain git?) + worker and use it if there is no
  gitstatus.
- call vcs_info on worker. the tricky question is what to display while "loading".
- add _SHOW_SYSTEM to all *env segments.
- support states in SHOW_ON_COMMAND: POWERLEVEL9K_SEGMENT_STATE_SHOW_ON_COMMAND='...'
- add POWERLEVEL9K_${SEGMENT}_${STATE}_SHOW_IN_DIR='pwd_pattern'; implement the same way as
  SHOW_ON_UPGLOB. how should it interact with POWERLEVEL9K_${SEGMENT}_DISABLED_DIR_PATTERN?
- add `p10k upglob`; returns 0 on match and sets REPLY to the directory where match was found.
- when directory cannot be shortened any further, start chopping off segments from the left and
  replacing the chopped off part with `…`. e.g., `…/x/anchor/y/anchor`. the shortest dir
  representation is thus `…/last` or `…/last` depending on whether the last segment is an anchor.
  the replacement parameter's value is `…/` (with a slash) to allow for `x/anchor/y/anchor`.
- add to faq: how do i display an environment variable in prompt? link it from "extensible"
- add to faq: how do i display an icon in prompt? link it from "extensible"
- add root_indicator to config templates
- test chruby and add it to config templates
- add ssh to config templates
- add swift version to config templates; see if there is a good pattern for PROJECT_ONLY
- add swiftenv
- add faq: how to customize directory shortening? mention POWERLEVEL9K_DIR_TRUNCATE_BEFORE_MARKER,
  POWERLEVEL9K_DIR_MAX_LENGTH and co., and truncate_to_last.
- fix a bug in zsh: https://github.com/romkatv/powerlevel10k/issues/502. to reproduce:
    emulate zsh -o prompt_percent -c 'print -P "%F{#ff0000}red%F{green}%B bold green"'
- bug: open a new tab and hit ctrl-p. an empty line will appear before prompt.
- take a look at https://github.com/skywind3000/z.lua. it claims to have fzf support. would be nice
  if alt-down showed two groups -- one for subdirs and another for directory history (sorted by
  frequency of use? by last use? three sections? more key bindings?).
- add `p10k explain` that prints something like this:

    segment     icons meaning
    --------------------------
    status      ✔  ✘  exit code of the last command

  implement it the hard way: for every enabled segment go over all its {state,icon} pairs, resolve
  the icon (if not absolute), apply VISUAL_IDENTIFIER_EXPANSION, remove leading and trailing
  whitespace and print without formatting (sort of like `print -P | cat`); print segment names in
  green and icons in bold; battery can have an unlimited number of icons, so `...` would be needed
  (based on total length of concatenated icons rather than the number of icons); user-defined
  segments would have "unknown" icons by default (yellow and not bold); can allow them to
  participate by defining `explainprompt_foo` that populates array `reply` with strings like this:
  '-s STATE -i LOCK_ICON +r'; the first element must be segment description.
- add `docker_context` prompt segment; similar to `kubecontext`; the data should come from
  `currentContext` field in `~/.docker/config.json` (according to
  https://github.com/starship/starship/issues/995); there is also `DOCKER_CONTEXT`; more info:
  https://docs.docker.com/engine/reference/commandline/context_use; also
  https://github.com/starship/starship/pull/996.
- support `env` precommand in parser.zsh.
