For non-trailing path components, we show only the first character. So, as in Fish proper, we convert ~/some/really/really/really/long/path/name to ~/s/r/r/r/l/p/name.
The git status indicators were taken from sorin.zsh-theme and changed to
use ASCII symbols instead of Unicode ones because my preferred terminal
font, DejaVu Sans Mono, renders Unicode symbols poorly and also because
Unicode rendering is not available in standard Linux virtual terminals.