- battery: when state or icon change, update with _p9k_set_prompt. make sure icons can be sent with `typset -p` in zsh 5.1. - ram: reduce precision to 2 digits. check if it makes sense for all segments that use the same function. - to avoid resetting prompt too often (e.g., when battery remaining time changes by 1 minute), can do the following: send the current state from master to worker; worker sends new state if it's different but it only triggers prompt reset if it's sufficiently different. this requires disabling implicit reset on every eval in _p9k_worker_receive. - implement fake gitstatus api on top of vcs_info (or plain git?) + worker and use it if there is no gitstatus. - add _SHOW_SYSTEM to all *env segments. - support states in SHOW_ON_COMMAND: POWERLEVEL9K_SEGMENT_STATE_SHOW_ON_COMMAND='...' - add generic POWERLEVEL9K_SEGMENT_STATE_UPGLOB. if POWERLEVEL9K_SEGMENT_UPGLOB is defined but no POWERLEVEL9K_SEGMENT_*_UPGLOB are, upglob can be checked from _p9k_set_prompt. otherwise it has to be checked from `p10k segment` (or its internal equivalent). how to make it work with static segments that have multiple states? for example, prompt_char.