summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBen Hilburn <bhilburn@gmail.com>2016-02-05 21:59:33 +0300
committerBen Hilburn <bhilburn@gmail.com>2016-02-05 21:59:33 +0300
commit4bbff138fbad9724cc04d164af30d08aea716e1d (patch)
tree1064665a3bb627944f1951875f1a09b6fe511a2c
parent4897c795faf557c16d0d337f5e493ba1e4071aa0 (diff)
parent177bfc96021d101ff0caa4a1ac55d8fb0f117ba7 (diff)
Merging @theminor's changes from PR #204
-rw-r--r--CHANGELOG.md24
-rw-r--r--functions/vcs.zsh4
-rwxr-xr-xpowerlevel9k.zsh-theme10
3 files changed, 33 insertions, 5 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index aa1b3aef..728f3578 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,13 +1,33 @@
## v0.4.0 (next)
+### `aws_eb_env` added
+
+This segment displays the current Elastic Beanstalk environment.
+
### `ram` changes
The `ram` segment was split up into `ram` and `swap`. The `POWERLEVEL9K_RAM_ELEMENTS`
variable is void.
-### New segment `aws_eb_env` added
+## v0.3.2
-This segment displays the current Elastic Beanstalk environment.
+### `vcs` changes
+
+A new state `UNTRACKED` was added to the `vcs` segment. So we now
+have 3 states for repositories: `UNTRACKED`, `MODIFIED`, and the
+default state. The `UNTRACKED` state is active when there are files
+in the repository directory which have not been added to the repo
+(the same as when the `+` icon appears). The default color for the
+`UNTRACKED` state is now yellow, and the default color for the
+`MODIFIED` state is now read, but those colors can be changed by
+setting these variables, for example:
+
+```zsh
+POWERLEVEL9K_VCS_MODIFIED_FOREGROUND='black'
+POWERLEVEL9K_VCS_MODIFIED_BACKGROUND='white'
+POWERLEVEL9K_VCS_UNTRACKED_FOREGROUND='green'
+POWERLEVEL9K_VCS_UNTRACKED_BACKGROUND='blue'
+```
## v0.3.1
diff --git a/functions/vcs.zsh b/functions/vcs.zsh
index 4a0a7ead..b23b8330 100644
--- a/functions/vcs.zsh
+++ b/functions/vcs.zsh
@@ -10,6 +10,9 @@ function +vi-git-untracked() {
if [[ $(git rev-parse --is-inside-work-tree 2> /dev/null) == 'true' && \
-n $(git ls-files --others --exclude-standard | sed q) ]]; then
hook_com[unstaged]+=" %F{$POWERLEVEL9K_VCS_FOREGROUND}$(print_icon 'VCS_UNTRACKED_ICON')%f"
+ VCS_WORKDIR_HALF_DIRTY=true
+ else
+ VCS_WORKDIR_HALF_DIRTY=false
fi
}
@@ -90,4 +93,3 @@ function +vi-vcs-detect-changes() {
VCS_WORKDIR_DIRTY=false
fi
}
-
diff --git a/powerlevel9k.zsh-theme b/powerlevel9k.zsh-theme
index f48f97b2..76ff5497 100755
--- a/powerlevel9k.zsh-theme
+++ b/powerlevel9k.zsh-theme
@@ -750,6 +750,8 @@ prompt_vcs() {
autoload -Uz vcs_info
VCS_WORKDIR_DIRTY=false
+ VCS_WORKDIR_HALF_DIRTY=false
+
VCS_CHANGESET_PREFIX=''
if [[ "$POWERLEVEL9K_SHOW_CHANGESET" == true ]]; then
# Default: Just display the first 12 characters of our changeset-ID.
@@ -796,9 +798,13 @@ prompt_vcs() {
if [[ "$VCS_WORKDIR_DIRTY" == true ]]; then
# $vcs_visual_identifier gets set in +vi-vcs-detect-changes in functions/vcs.zsh,
# as we have there access to vcs_info internal hooks.
- "$1_prompt_segment" "$0_MODIFIED" "$2" "yellow" "$DEFAULT_COLOR" "$vcs_prompt" "$vcs_visual_identifier"
+ "$1_prompt_segment" "$0_MODIFIED" "$2" "red" "$DEFAULT_COLOR" "$vcs_prompt" "$vcs_visual_identifier"
else
- "$1_prompt_segment" "$0" "$2" "green" "$DEFAULT_COLOR" "$vcs_prompt" "$vcs_visual_identifier"
+ if [[ "$VCS_WORKDIR_HALF_DIRTY" == true ]]; then
+ "$1_prompt_segment" "$0_UNTRACKED" "$2" "yellow" "$DEFAULT_COLOR" "$vcs_prompt" "$vcs_visual_identifier"
+ else
+ "$1_prompt_segment" "$0" "$2" "green" "$DEFAULT_COLOR" "$vcs_prompt" "$vcs_visual_identifier"
+ fi
fi
fi
}