socat may close pipe before they succeed to write something which results in
env: write error: Broken pipe
(according to my experience leading printf’s always succeeds to write before
socat closes pipe).
It took 2/3 of do_render call according to profiler. New variant takes only 1/6.
WARNING: This commit will break all powerline installations with running daemon
because it changes communication protocol. You must kill and restart all your
powerline daemons for powerline to function properly.
Highlight @kovidgoyal
Note: this shell script is still faster then client/powerline.py. `time` reports
0.00, 0.01, 0.02÷0.03 for powerline, powerline.sh and powerline.py
respectively (run with `./client/powerline* tmux right`).
Note: does not work in busybox as env there does not support -0 argument.
Requires sed, id (for dash as $UID is not available there), env, printf
and socat. Is not currently handled by setup.py.