-
https://docs.microsoft.com/ru-ru/windows/terminal/tutorials/powerline-setup - основная статья
-
https://docs.microsoft.com/en-us/windows/terminal/custom-terminal-gallery/powerline-in-powershell
-
https://www.ricalo.com/blog/install-powerline-windows/#install-and-configure-powerline-fonts ставим шрифты в wsl
-
Ставим импдементаци. powerline
- https://github.com/justjanne/powerline-go - go-powerline
- https://github.com/powerline/powerline - powerline
- В случае долгого отклика, изменитe
gitмодуль наgitlight. Здесь список модулей по умолчанию с заменой (см.powerline-go -help):
PS1="$($GOPATH/bin/powerline-go -error $? -modules venv,user,host,ssh,cwd,perms,gitlite,hg,jobs,exit,root)"- Можно убрать модуль host, или оставить его только для ssh:
-hostname-only-if-ssh - модули
docker,docker-contextне работают как надоdockerне понятно как пользоваться. Видны изменения, если написать export DOCKER_MACHINE_NAME=xyzdocker-contextпод wsl docker работает из под соседней vm/mnt/wsl/docker-desktop/cli-tools/usr/bin/docker. Иdocker context lsне читает ничего из под конфигов~/.docker. А это дополнение только парсит конфиги и по сокетам в хостовый докер не идет.
INTERACTIVE_BASHPID_TIMER="/tmp/${USER}.START.$$"
PS0='$(echo $SECONDS > "$INTERACTIVE_BASHPID_TIMER")'
function _update_ps1() {
local __ERRCODE=$?
local __DURATION=0
if [ -e $INTERACTIVE_BASHPID_TIMER ]; then
local __END=$SECONDS
local __START=$(cat "$INTERACTIVE_BASHPID_TIMER")
__DURATION="$(($__END - ${__START:-__END}))"
rm -f "$INTERACTIVE_BASHPID_TIMER"
fi
# default + gitlite + -hostname-only-if-ssh + duration + no-user + max-width
PS1="$($GOPATH/bin/powerline-go -error $__ERRCODE -modules duration,venv,host,ssh,cwd,perms,gitlite,exit,root -max-width 50 -duration $__DURATION -hostname-only-if-ssh -priority git-branch,git-status,root,cwd,user,host,ssh,perms,jobs,exit,cwd-path)"
}
if [ "$TERM" != "linux" ] && [ -f "$GOPATH/bin/powerline-go" ]; then
PROMPT_COMMAND="_update_ps1; $PROMPT_COMMAND"
fi
Описать первоначальный рпоцесс https://www.youtube.com/watch?v=PWu3-9GSs-8
С поправками Биндиги тут:
# load powerline
if [ -f `which powerline-daemon` ]; then
powerline-daemon -q
POWERLINE_BASH_CONTINUATION=1
POWERLINE_BASH_SELECT=1
fi
if [ -f /usr/share/powerline/bindings/bash/powerline.sh ]; then
source /usr/share/powerline/bindings/bash/powerline.sh
fi
- https://www.youtube.com/watch?v=PWu3-9GSs-8 - как ставить
- https://microhobby.com.br/blog/2020/05/23/linux-wsl-powershell-windows-terminal-script-to-display-random-emojis-for-commands-that-return-errors/
- https://microhobby.com.br/blog/2020/05/23/how-to-install-powerline-for-bash-wsl-and-native-linux/
- https://microhobby.com.br/blog/2020/05/23/how-to-install-powerline-for-windows-terminal/
- https://github.com/adrianmo/powerline-docker