From 1cbec9f423420f64a5895333d61538cd8847a8ef Mon Sep 17 00:00:00 2001 From: markbull Date: Fri, 29 Jul 2022 21:48:24 +0800 Subject: [PATCH] Add: Untracked and Gone branch color. --- src/GitPrompt.ps1 | 11 ++++++++++- src/PoshGitTypes.ps1 | 2 +- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/src/GitPrompt.ps1 b/src/GitPrompt.ps1 index 2a752b93c..f2abcd942 100644 --- a/src/GitPrompt.ps1 +++ b/src/GitPrompt.ps1 @@ -345,6 +345,14 @@ function Get-GitBranchStatusColor { # We are ahead of remote $branchStatusTextSpan = [PoshGitTextSpan]::new($s.BranchAheadStatusSymbol) } + elseif ($Status.UpstreamGone -eq $true) { + # Upstream branch is gone + $branchStatusTextSpan = [PoshGitTextSpan]::new($s.BranchGoneStatusSymbol) + } + elseif (!$Status.Upstream) { + # Untracked branch + $branchStatusTextSpan = [PoshGitTextSpan]::new($s.BranchUntrackedStatusSymbol) + } $branchStatusTextSpan.Text = '' $branchStatusTextSpan @@ -457,7 +465,8 @@ function Write-GitBranchStatus { $branchStatusTextSpan = Get-GitBranchStatusColor $Status if (!$Status.Upstream) { - $branchStatusTextSpan.Text = $s.BranchUntrackedText + # Untracked branch + $branchStatusTextSpan.Text = $s.BranchUntrackedStatusSymbol.Text } elseif ($Status.UpstreamGone -eq $true) { # Upstream branch is gone diff --git a/src/PoshGitTypes.ps1 b/src/PoshGitTypes.ps1 index bd33a7d6c..19b4c74a8 100644 --- a/src/PoshGitTypes.ps1 +++ b/src/PoshGitTypes.ps1 @@ -250,6 +250,7 @@ class PoshGitPromptSettings { [PoshGitTextSpan]$LocalWorkingStatusSymbol = [PoshGitTextSpan]::new('!', [ConsoleColor]::DarkRed) [PoshGitTextSpan]$LocalStagedStatusSymbol = [PoshGitTextSpan]::new('~', [ConsoleColor]::Cyan) + [PoshGitTextSpan]$BranchUntrackedStatusSymbol = [PoshGitTextSpan]::new('', [ConsoleColor]::DarkCyan) # [PoshGitTextSpan]$BranchGoneStatusSymbol = [PoshGitTextSpan]::new([char]0x00D7, [ConsoleColor]::DarkCyan) # × Multiplication sign [PoshGitTextSpan]$BranchIdenticalStatusSymbol = [PoshGitTextSpan]::new([char]0x2261, [ConsoleColor]::Cyan) # ≡ Three horizontal lines [PoshGitTextSpan]$BranchAheadStatusSymbol = [PoshGitTextSpan]::new([char]0x2191, [ConsoleColor]::Green) # ↑ Up arrow @@ -262,7 +263,6 @@ class PoshGitPromptSettings { [string]$FileModifiedText = '~' [string]$FileRemovedText = '-' [string]$FileConflictedText = '!' - [string]$BranchUntrackedText = '' [bool]$EnableStashStatus = $false [bool]$ShowStatusWhenZero = $true