summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimothy Earley <timmy@earley.de>2017-10-01 18:53:07 +0300
committerTimothy Earley <timmy@earley.de>2017-10-01 18:53:07 +0300
commit81cbd65142609da34f463046abec8ad456440056 (patch)
tree287195914f500ad52bec9e4336b9fd721dc7ee0f
parente9e60324cde4279e5724d94905d61986ed9c4b3b (diff)
Added dropbox segment
-rw-r--r--README.md1
-rw-r--r--functions/icons.zsh4
-rwxr-xr-xpowerlevel9k.zsh-theme17
3 files changed, 22 insertions, 0 deletions
diff --git a/README.md b/README.md
index 4b0c2791..c4ff1c1f 100644
--- a/README.md
+++ b/README.md
@@ -140,6 +140,7 @@ The segments that are currently available are:
* `aws_eb_env` - The current Elastic Beanstalk Environment.
* `docker_machine` - The current Docker Machine.
* `kubecontext` - The current context of your `kubectl` configuration.
+* `dropbox` - Indicates Dropbox directory and syncing status using `dropbox-cli`
**Other:**
* [`custom_command`](#custom_command) - Create a custom segment to display the
diff --git a/functions/icons.zsh b/functions/icons.zsh
index a20cef2c..3fc6d3b0 100644
--- a/functions/icons.zsh
+++ b/functions/icons.zsh
@@ -87,6 +87,7 @@ case $POWERLEVEL9K_MODE in
SSH_ICON '(ssh)'
VPN_ICON '(vpn)'
KUBERNETES_ICON $'\U2388' # ⎈
+ DROPBOX_ICON $'\UF16B' # 
)
;;
'awesome-fontconfig')
@@ -158,6 +159,7 @@ case $POWERLEVEL9K_MODE in
SSH_ICON '(ssh)'
VPN_ICON $'\uF023'
KUBERNETES_ICON $'\U2388' # ⎈
+ DROPBOX_ICON $'\UF16B' # 
)
;;
'awesome-mapped-fontconfig')
@@ -303,6 +305,7 @@ case $POWERLEVEL9K_MODE in
SSH_ICON $'\uF489' # 
VPN_ICON '(vpn)'
KUBERNETES_ICON $'\U2388' # ⎈
+ DROPBOX_ICON $'\UF16B' # 
)
;;
*)
@@ -374,6 +377,7 @@ case $POWERLEVEL9K_MODE in
SSH_ICON '(ssh)'
VPN_ICON '(vpn)'
KUBERNETES_ICON $'\U2388' # ⎈
+ DROPBOX_ICON $'\UF16B' # 
)
;;
esac
diff --git a/powerlevel9k.zsh-theme b/powerlevel9k.zsh-theme
index 9a146fa8..792771ac 100755
--- a/powerlevel9k.zsh-theme
+++ b/powerlevel9k.zsh-theme
@@ -1423,6 +1423,23 @@ prompt_kubecontext() {
fi
}
+# Dropbox status
+prompt_dropbox() {
+ # The first column is just the directory, so cut it
+ local dropbox_status="$(dropbox-cli filestatus . | cut -d\ -f2-)"
+
+ # Only show if the folder is tracked
+ if [[ "$dropbox_status" != 'unwatched' ]]; then
+ # If "up to date", only show the icon
+ if [[ "$dropbox_status" =~ 'up to date' ]]; then
+ dropbox_status=""
+ fi
+
+ "$1_prompt_segment" "$0" "$2" "white" "blue" "$dropbox_status" "DROPBOX_ICON"
+ fi
+
+}
+
################################################################
# Prompt processing and drawing