mirror of
https://github.com/romkatv/powerlevel10k.git
synced 2024-12-18 05:40:07 +00:00
Merge pull request #473 from zikes/patch-1
Only show go_version segment if inside GOPATH
This commit is contained in:
commit
b63bf00113
2 changed files with 48 additions and 2 deletions
|
@ -754,9 +754,11 @@ prompt_docker_machine() {
|
||||||
# GO prompt
|
# GO prompt
|
||||||
prompt_go_version() {
|
prompt_go_version() {
|
||||||
local go_version
|
local go_version
|
||||||
|
local go_path
|
||||||
go_version=$(go version 2>/dev/null | sed -E "s/.*(go[0-9.]*).*/\1/")
|
go_version=$(go version 2>/dev/null | sed -E "s/.*(go[0-9.]*).*/\1/")
|
||||||
|
go_path=$(go env GOPATH 2>/dev/null)
|
||||||
|
|
||||||
if [[ -n "$go_version" ]]; then
|
if [[ -n "$go_version" && "${PWD##$go_path}" != "$PWD" ]]; then
|
||||||
"$1_prompt_segment" "$0" "$2" "green" "255" "$go_version"
|
"$1_prompt_segment" "$0" "$2" "green" "255" "$go_version"
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
|
|
|
@ -12,19 +12,63 @@ function setUp() {
|
||||||
}
|
}
|
||||||
|
|
||||||
function mockGo() {
|
function mockGo() {
|
||||||
|
case "$1" in
|
||||||
|
'version')
|
||||||
echo 'go version go1.5.3 darwin/amd64'
|
echo 'go version go1.5.3 darwin/amd64'
|
||||||
|
;;
|
||||||
|
'env')
|
||||||
|
echo "$HOME/go"
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
}
|
||||||
|
|
||||||
|
function mockGoEmptyGopath() {
|
||||||
|
case "$1" in
|
||||||
|
'version')
|
||||||
|
echo 'go version go1.5.3 darwin/amd64'
|
||||||
|
;;
|
||||||
|
'env')
|
||||||
|
echo ""
|
||||||
|
;;
|
||||||
|
esac
|
||||||
}
|
}
|
||||||
|
|
||||||
function testGo() {
|
function testGo() {
|
||||||
alias go=mockGo
|
alias go=mockGo
|
||||||
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(go_version)
|
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(go_version)
|
||||||
|
|
||||||
|
PWD="$HOME/go/src/github.com/bhilburn/powerlevel9k"
|
||||||
|
|
||||||
assertEquals "%K{green} %F{255}go1.5.3 %k%F{green}%f " "$(build_left_prompt)"
|
assertEquals "%K{green} %F{255}go1.5.3 %k%F{green}%f " "$(build_left_prompt)"
|
||||||
|
|
||||||
|
unset PWD
|
||||||
unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
|
unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
|
||||||
unalias go
|
unalias go
|
||||||
}
|
}
|
||||||
|
|
||||||
|
function testGoSegmentPrintsNothingIfEmptyGopath() {
|
||||||
|
alias go=mockGoEmptyGopath
|
||||||
|
POWERLEVEL9K_CUSTOM_WORLD='echo world'
|
||||||
|
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(custom_world go_version)
|
||||||
|
|
||||||
|
assertEquals "%K{white} %F{black}world %k%F{white}%f " "$(build_left_prompt)"
|
||||||
|
|
||||||
|
unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
|
||||||
|
unset POWERLEVEL9K_CUSTOM_WORLD
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
function testGoSegmentPrintsNothingIfNotInGopath() {
|
||||||
|
alias go=mockGo
|
||||||
|
POWERLEVEL9K_CUSTOM_WORLD='echo world'
|
||||||
|
POWERLEVEL9K_LEFT_PROMPT_ELEMENTS=(custom_world go_version)
|
||||||
|
|
||||||
|
assertEquals "%K{white} %F{black}world %k%F{white}%f " "$(build_left_prompt)"
|
||||||
|
|
||||||
|
unset POWERLEVEL9K_LEFT_PROMPT_ELEMENTS
|
||||||
|
unset POWERLEVEL9K_CUSTOM_WORLD
|
||||||
|
}
|
||||||
|
|
||||||
function testGoSegmentPrintsNothingIfGoIsNotAvailable() {
|
function testGoSegmentPrintsNothingIfGoIsNotAvailable() {
|
||||||
alias go=noGo
|
alias go=noGo
|
||||||
POWERLEVEL9K_CUSTOM_WORLD='echo world'
|
POWERLEVEL9K_CUSTOM_WORLD='echo world'
|
||||||
|
|
Loading…
Reference in a new issue