powerlevel10k/notes.txt
2020-01-24 13:34:23 +01:00

45 lines
1.4 KiB
Text

- declare local _p9k_worker_reset in _p9k_worker_receive. it can be set when replies from worker
are eval'd. initial value 0. 1 means reset-prompt is needed. 2 for _p9k_set_prompt + reset-prompt.
- 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.
zmodload zsh/system
() {
emulate -L zsh
unsetopt monitor
setopt monitor
[[ -o monitor ]] && echo monitor on
typeset -gi fd
(( fd )) && exec {fd}>&-
sysopen -r -o cloexec -u fd <(
local pid=$sysparams[pid]
(
echo $sysparams[pid] $sysparams[ppid] $pid >>/tmp/log
echo $pid
sleep 2 &
: <(sleep 3)
sleep 4
sleep 5
) &)
sleep 1
ps axjf
local pid
IFS= read -r -u $fd pid
kill -- -$pid
ps axjf
exec {fd}>&-
fd=0
}
_p9k_worker_await <(...) callback
callback gets access to REPLY and STATUS; no prev