summaryrefslogtreecommitdiff
path: root/functions
diff options
context:
space:
mode:
Diffstat (limited to 'functions')
-rwxr-xr-xfunctions/colors.zsh297
-rwxr-xr-xfunctions/icons.zsh593
-rwxr-xr-xfunctions/utilities.zsh142
-rwxr-xr-xfunctions/vcs.zsh165
4 files changed, 0 insertions, 1197 deletions
diff --git a/functions/colors.zsh b/functions/colors.zsh
deleted file mode 100755
index d8b7cbe8..00000000
--- a/functions/colors.zsh
+++ /dev/null
@@ -1,297 +0,0 @@
-# vim:ft=zsh ts=2 sw=2 sts=2 et fenc=utf-8
-################################################################
-# Color functions
-# This file holds some color-functions for
-# the powerlevel9k-ZSH-theme
-# https://github.com/bhilburn/powerlevel9k
-################################################################
-
-# https://jonasjacek.github.io/colors/
-# use color names by default to allow dark/light themes to adjust colors based on names
-typeset -gAh __P9K_COLORS=(
- black 000
- red 001
- green 002
- yellow 003
- blue 004
- magenta 005
- cyan 006
- white 007
- grey 008
- maroon 009
- lime 010
- olive 011
- navy 012
- fuchsia 013
- purple 013
- aqua 014
- teal 014
- silver 015
- grey0 016
- navyblue 017
- darkblue 018
- blue3 019
- blue3 020
- blue1 021
- darkgreen 022
- deepskyblue4 023
- deepskyblue4 024
- deepskyblue4 025
- dodgerblue3 026
- dodgerblue2 027
- green4 028
- springgreen4 029
- turquoise4 030
- deepskyblue3 031
- deepskyblue3 032
- dodgerblue1 033
- green3 034
- springgreen3 035
- darkcyan 036
- lightseagreen 037
- deepskyblue2 038
- deepskyblue1 039
- green3 040
- springgreen3 041
- springgreen2 042
- cyan3 043
- darkturquoise 044
- turquoise2 045
- green1 046
- springgreen2 047
- springgreen1 048
- mediumspringgreen 049
- cyan2 050
- cyan1 051
- darkred 052
- deeppink4 053
- purple4 054
- purple4 055
- purple3 056
- blueviolet 057
- orange4 058
- grey37 059
- mediumpurple4 060
- slateblue3 061
- slateblue3 062
- royalblue1 063
- chartreuse4 064
- darkseagreen4 065
- paleturquoise4 066
- steelblue 067
- steelblue3 068
- cornflowerblue 069
- chartreuse3 070
- darkseagreen4 071
- cadetblue 072
- cadetblue 073
- skyblue3 074
- steelblue1 075
- chartreuse3 076
- palegreen3 077
- seagreen3 078
- aquamarine3 079
- mediumturquoise 080
- steelblue1 081
- chartreuse2 082
- seagreen2 083
- seagreen1 084
- seagreen1 085
- aquamarine1 086
- darkslategray2 087
- darkred 088
- deeppink4 089
- darkmagenta 090
- darkmagenta 091
- darkviolet 092
- purple 093
- orange4 094
- lightpink4 095
- plum4 096
- mediumpurple3 097
- mediumpurple3 098
- slateblue1 099
- yellow4 100
- wheat4 101
- grey53 102
- lightslategrey 103
- mediumpurple 104
- lightslateblue 105
- yellow4 106
- darkolivegreen3 107
- darkseagreen 108
- lightskyblue3 109
- lightskyblue3 110
- skyblue2 111
- chartreuse2 112
- darkolivegreen3 113
- palegreen3 114
- darkseagreen3 115
- darkslategray3 116
- skyblue1 117
- chartreuse1 118
- lightgreen 119
- lightgreen 120
- palegreen1 121
- aquamarine1 122
- darkslategray1 123
- red3 124
- deeppink4 125
- mediumvioletred 126
- magenta3 127
- darkviolet 128
- purple 129
- darkorange3 130
- indianred 131
- hotpink3 132
- mediumorchid3 133
- mediumorchid 134
- mediumpurple2 135
- darkgoldenrod 136
- lightsalmon3 137
- rosybrown 138
- grey63 139
- mediumpurple2 140
- mediumpurple1 141
- gold3 142
- darkkhaki 143
- navajowhite3 144
- grey69 145
- lightsteelblue3 146
- lightsteelblue 147
- yellow3 148
- darkolivegreen3 149
- darkseagreen3 150
- darkseagreen2 151
- lightcyan3 152
- lightskyblue1 153
- greenyellow 154
- darkolivegreen2 155
- palegreen1 156
- darkseagreen2 157
- darkseagreen1 158
- paleturquoise1 159
- red3 160
- deeppink3 161
- deeppink3 162
- magenta3 163
- magenta3 164
- magenta2 165
- darkorange3 166
- indianred 167
- hotpink3 168
- hotpink2 169
- orchid 170
- mediumorchid1 171
- orange3 172
- lightsalmon3 173
- lightpink3 174
- pink3 175
- plum3 176
- violet 177
- gold3 178
- lightgoldenrod3 179
- tan 180
- mistyrose3 181
- thistle3 182
- plum2 183
- yellow3 184
- khaki3 185
- lightgoldenrod2 186
- lightyellow3 187
- grey84 188
- lightsteelblue1 189
- yellow2 190
- darkolivegreen1 191
- darkolivegreen1 192
- darkseagreen1 193
- honeydew2 194
- lightcyan1 195
- red1 196
- deeppink2 197
- deeppink1 198
- deeppink1 199
- magenta2 200
- magenta1 201
- orangered1 202
- indianred1 203
- indianred1 204
- hotpink 205
- hotpink 206
- mediumorchid1 207
- darkorange 208
- salmon1 209
- lightcoral 210
- palevioletred1 211
- orchid2 212
- orchid1 213
- orange1 214
- sandybrown 215
- lightsalmon1 216
- lightpink1 217
- pink1 218
- plum1 219
- gold1 220
- lightgoldenrod2 221
- lightgoldenrod2 222
- navajowhite1 223
- mistyrose1 224
- thistle1 225
- yellow1 226
- lightgoldenrod1 227
- khaki1 228
- wheat1 229
- cornsilk1 230
- grey100 231
- grey3 232
- grey7 233
- grey11 234
- grey15 235
- grey19 236
- grey23 237
- grey27 238
- grey30 239
- grey35 240
- grey39 241
- grey42 242
- grey46 243
- grey50 244
- grey54 245
- grey58 246
- grey62 247
- grey66 248
- grey70 249
- grey74 250
- grey78 251
- grey82 252
- grey85 253
- grey89 254
- grey93 255
-)
-
-# For user convenience: type `getColorCode background` or `getColorCode foreground` to see
-# the list of predefined colors.
-function getColorCode() {
- if (( ARGC == 1 )); then
- case $1 in
- foreground)
- local k
- for k in "${(k@)__P9K_COLORS}"; do
- local v=${__P9K_COLORS[$k]}
- print -P "%F{$v}$v - $k%f"
- done
- return
- ;;
- background)
- local k
- for k in "${(k@)__P9K_COLORS}"; do
- local v=${__P9K_COLORS[$k]}
- print -P "%K{$v}$v - $k%k"
- done
- return
- ;;
- esac
- fi
- echo "Usage: getColorCode background|foreground" >&2
- return 1
-}
diff --git a/functions/icons.zsh b/functions/icons.zsh
deleted file mode 100755
index 64f6a04e..00000000
--- a/functions/icons.zsh
+++ /dev/null
@@ -1,593 +0,0 @@
-# vim:ft=zsh ts=2 sw=2 sts=2 et fenc=utf-8
-################################################################
-# icons
-# This file holds the icon definitions and
-# icon-functions for the powerlevel9k-ZSH-theme
-# https://github.com/bhilburn/powerlevel9k
-################################################################
-
-# These characters require the Powerline fonts to work properly. If you see
-# boxes or bizarre characters below, your fonts are not correctly installed. If
-# you do not want to install a special font, you can set `POWERLEVEL9K_MODE` to
-# `compatible`. This shows all icons in regular symbols.
-
-# Initialize the icon list according to the user's `POWERLEVEL9K_MODE`.
-typeset -gAH icons
-
-set_default POWERLEVEL9K_HIDE_BRANCH_ICON false
-set_default POWERLEVEL9K_MODE ""
-
-typeset -gi _P9K_ICONS_INITIALIZED=0
-
-function _p9k_init_icons() {
- (( _P9K_ICONS_INITIALIZED )) && return
- _P9K_ICONS_INITIALIZED=1
-
- case $POWERLEVEL9K_MODE in
- 'flat'|'awesome-patched')
- # Awesome-Patched Font required! See:
- # https://github.com/gabrielelana/awesome-terminal-fonts/tree/patching-strategy/patched
- # Set the right locale to protect special characters
- local LC_ALL="" LC_CTYPE="en_US.UTF-8"
- icons=(
- RULER_CHAR $'\u2500' # ─
- LEFT_SEGMENT_SEPARATOR $'\uE0B0' # 
- RIGHT_SEGMENT_SEPARATOR $'\uE0B2' # 
- LEFT_SEGMENT_END_SEPARATOR ' ' # Whitespace
- RIGHT_SEGMENT_END_SEPARATOR ''
- LEFT_SUBSEGMENT_SEPARATOR $'\uE0B1' # 
- RIGHT_SUBSEGMENT_SEPARATOR $'\uE0B3' # 
- CARRIAGE_RETURN_ICON $'\u21B5' # ↵
- ROOT_ICON $'\uE801' # 
- SUDO_ICON $'\uF09C' # 
- RUBY_ICON $'\uE847 ' # 
- AWS_ICON $'\uE895' # 
- AWS_EB_ICON $'\U1F331 ' # 🌱
- BACKGROUND_JOBS_ICON $'\uE82F ' # 
- TEST_ICON $'\uE891' # 
- TODO_ICON $'\u2611' # ☑
- BATTERY_ICON $'\uE894' # 
- DISK_ICON $'\uE1AE ' # 
- OK_ICON $'\u2714' # ✔
- FAIL_ICON $'\u2718' # ✘
- SYMFONY_ICON 'SF'
- NODE_ICON $'\u2B22' # ⬢
- MULTILINE_FIRST_PROMPT_PREFIX $'\u256D'$'\U2500' # ╭─
- MULTILINE_NEWLINE_PROMPT_PREFIX $'\u251C'$'\U2500' # ├─
- MULTILINE_LAST_PROMPT_PREFIX $'\u2570'$'\U2500 ' # ╰─
- APPLE_ICON $'\uE26E' # 
- WINDOWS_ICON $'\uE26F' # 
- FREEBSD_ICON $'\U1F608 ' # 😈
- ANDROID_ICON $'\uE270' # 
- LINUX_ICON $'\uE271' # 
- LINUX_ARCH_ICON $'\uE271' # 
- LINUX_DEBIAN_ICON $'\uE271' # 
- LINUX_RASPBIAN_ICON $'\uE271' # 
- LINUX_UBUNTU_ICON $'\uE271' # 
- LINUX_CENTOS_ICON $'\uE271' # 
- LINUX_COREOS_ICON $'\uE271' # 
- LINUX_ELEMENTARY_ICON $'\uE271' # 
- LINUX_MINT_ICON $'\uE271' # 
- LINUX_FEDORA_ICON $'\uE271' # 
- LINUX_GENTOO_ICON $'\uE271' # 
- LINUX_MAGEIA_ICON $'\uE271' # 
- LINUX_NIXOS_ICON $'\uE271' # 
- LINUX_MANJARO_ICON $'\uE271' # 
- LINUX_DEVUAN_ICON $'\uE271' # 
- LINUX_ALPINE_ICON $'\uE271' # 
- LINUX_AOSC_ICON $'\uE271' # 
- LINUX_OPENSUSE_ICON $'\uE271' # 
- LINUX_SABAYON_ICON $'\uE271' # 
- LINUX_SLACKWARE_ICON $'\uE271' # 
- SUNOS_ICON $'\U1F31E ' # 🌞
- HOME_ICON $'\uE12C' # 
- HOME_SUB_ICON $'\uE18D' # 
- FOLDER_ICON $'\uE818' # 
- NETWORK_ICON $'\uE1AD' # 
- ETC_ICON $'\uE82F' # 
- LOAD_ICON $'\uE190 ' # 
- SWAP_ICON $'\uE87D' # 
- RAM_ICON $'\uE1E2 ' # 
- SERVER_ICON $'\uE895' # 
- VCS_UNTRACKED_ICON $'\uE16C' # 
- VCS_UNSTAGED_ICON $'\uE17C' # 
- VCS_STAGED_ICON $'\uE168' # 
- VCS_STASH_ICON $'\uE133 ' # 
- #VCS_INCOMING_CHANGES_ICON $'\uE1EB ' # 
- #VCS_INCOMING_CHANGES_ICON $'\uE80D ' # 
- VCS_INCOMING_CHANGES_ICON $'\uE131 ' # 
- #VCS_OUTGOING_CHANGES_ICON $'\uE1EC ' # 
- #VCS_OUTGOING_CHANGES_ICON $'\uE80E ' # 
- VCS_OUTGOING_CHANGES_ICON $'\uE132 ' # 
- VCS_TAG_ICON $'\uE817 ' # 
- VCS_BOOKMARK_ICON $'\uE87B' # 
- VCS_COMMIT_ICON $'\uE821 ' # 
- VCS_BRANCH_ICON $'\uE220 ' # 
- VCS_REMOTE_BRANCH_ICON $'\u2192' # →
- VCS_LOADING_ICON ''
- VCS_GIT_ICON $'\uE20E ' # 
- VCS_GIT_GITHUB_ICON $'\uE20E ' #
- VCS_GIT_BITBUCKET_ICON $'\uE20E ' #
- VCS_GIT_GITLAB_ICON $'\uE20E ' #
- VCS_HG_ICON $'\uE1C3 ' # 
- VCS_SVN_ICON '(svn) '
- RUST_ICON '(rust)'
- PYTHON_ICON $'\ue63c' # 
- SWIFT_ICON ''
- GO_ICON ''
- PUBLIC_IP_ICON ''
- LOCK_ICON $'\UE138' # 
- EXECUTION_TIME_ICON $'\UE89C' # 
- SSH_ICON '(ssh)'
- VPN_ICON '(vpn)'
- KUBERNETES_ICON $'\U2388' # ⎈
- DROPBOX_ICON $'\UF16B' # 
- DATE_ICON $'\uE184' # 
- TIME_ICON $'\uE12E' # 
- JAVA_ICON $'\U2615' # ☕︎
- LARAVEL_ICON ''
- )
- ;;
- 'awesome-fontconfig')
- # fontconfig with awesome-font required! See
- # https://github.com/gabrielelana/awesome-terminal-fonts
- # Set the right locale to protect special characters
- local LC_ALL="" LC_CTYPE="en_US.UTF-8"
- icons=(
- RULER_CHAR $'\u2500' # ─
- LEFT_SEGMENT_SEPARATOR $'\uE0B0' # 
- RIGHT_SEGMENT_SEPARATOR $'\uE0B2' # 
- LEFT_SEGMENT_END_SEPARATOR ' ' # Whitespace
- RIGHT_SEGMENT_END_SEPARATOR ''
- LEFT_SUBSEGMENT_SEPARATOR $'\uE0B1' # 
- RIGHT_SUBSEGMENT_SEPARATOR $'\uE0B3' # 
- CARRIAGE_RETURN_ICON $'\u21B5' # ↵
- ROOT_ICON $'\uF201' # 
- SUDO_ICON $'\uF09C' # 
- RUBY_ICON $'\uF219 ' # 
- AWS_ICON $'\uF270' # 
- AWS_EB_ICON $'\U1F331 ' # 🌱
- BACKGROUND_JOBS_ICON $'\uF013 ' # 
- TEST_ICON $'\uF291' # 
- TODO_ICON $'\u2611' # ☑
- BATTERY_ICON $'\U1F50B' # 🔋
- DISK_ICON $'\uF0A0 ' # 
- OK_ICON $'\u2714' # ✔
- FAIL_ICON $'\u2718' # ✘
- SYMFONY_ICON 'SF'
- NODE_ICON $'\u2B22' # ⬢
- MULTILINE_FIRST_PROMPT_PREFIX $'\u256D'$'\U2500' # ╭─
- MULTILINE_NEWLINE_PROMPT_PREFIX $'\u251C'$'\U2500' # ├─
- MULTILINE_LAST_PROMPT_PREFIX $'\u2570'$'\U2500 ' # ╰─
- APPLE_ICON $'\uF179' # 
- WINDOWS_ICON $'\uF17A' # 
- FREEBSD_ICON $'\U1F608 ' # 😈
- ANDROID_ICON $'\uE17B' # 
- LINUX_ICON $'\uF17C' # 
- LINUX_ARCH_ICON $'\uF17C' # 
- LINUX_DEBIAN_ICON $'\uF17C' # 
- LINUX_RASPBIAN_ICON $'\uF17C' # 
- LINUX_UBUNTU_ICON $'\uF17C' # 
- LINUX_CENTOS_ICON $'\uF17C' # 
- LINUX_COREOS_ICON $'\uF17C' # 
- LINUX_ELEMENTARY_ICON $'\uF17C' # 
- LINUX_MINT_ICON $'\uF17C' # 
- LINUX_FEDORA_ICON $'\uF17C' # 
- LINUX_GENTOO_ICON $'\uF17C' # 
- LINUX_MAGEIA_ICON $'\uF17C' # 
- LINUX_NIXOS_ICON $'\uF17C' # 
- LINUX_MANJARO_ICON $'\uF17C' # 
- LINUX_DEVUAN_ICON $'\uF17C' # 
- LINUX_ALPINE_ICON $'\uF17C' # 
- LINUX_AOSC_ICON $'\uF17C' # 
- LINUX_OPENSUSE_ICON $'\uF17C' # 
- LINUX_SABAYON_ICON $'\uF17C' # 
- LINUX_SLACKWARE_ICON $'\uF17C' # 
- SUNOS_ICON $'\uF185 ' # 
- HOME_ICON $'\uF015' # 
- HOME_SUB_ICON $'\uF07C' # 
- FOLDER_ICON $'\uF115' # 
- ETC_ICON $'\uF013 ' # 
- NETWORK_ICON $'\uF09E' # 
- LOAD_ICON $'\uF080 ' # 
- SWAP_ICON $'\uF0E4' # 
- RAM_ICON $'\uF0E4' # 
- SERVER_ICON $'\uF233' # 
- VCS_UNTRACKED_ICON $'\uF059' # 
- VCS_UNSTAGED_ICON $'\uF06A' # 
- VCS_STAGED_ICON $'\uF055' # 
- VCS_STASH_ICON $'\uF01C ' # 
- VCS_INCOMING_CHANGES_ICON $'\uF01A ' # 
- VCS_OUTGOING_CHANGES_ICON $'\uF01B ' # 
- VCS_TAG_ICON $'\uF217 ' # 
- VCS_BOOKMARK_ICON $'\uF27B' # 
- VCS_COMMIT_ICON $'\uF221 ' # 
- VCS_BRANCH_ICON $'\uF126 ' # 
- VCS_REMOTE_BRANCH_ICON $'\u2192' # →
- VCS_LOADING_ICON ''
- VCS_GIT_ICON $'\uF1D3 ' # 
- VCS_GIT_GITHUB_ICON $'\uF113 ' # 
- VCS_GIT_BITBUCKET_ICON $'\uF171 ' # 
- VCS_GIT_GITLAB_ICON $'\uF296 ' # 
- VCS_HG_ICON $'\uF0C3 ' # 
- VCS_SVN_ICON '(svn) '
- RUST_ICON $'\uE6A8' # 
- PYTHON_ICON $'\ue63c' # 
- SWIFT_ICON ''
- GO_ICON ''
- PUBLIC_IP_ICON ''
- LOCK_ICON $'\UF023' # 
- EXECUTION_TIME_ICON $'\uF253'
- SSH_ICON '(ssh)'
- VPN_ICON $'\uF023'
- KUBERNETES_ICON $'\U2388' # ⎈
- DROPBOX_ICON $'\UF16B' # 
- DATE_ICON $'\uF073 ' # 
- TIME_ICON $'\uF017 ' # 
- JAVA_ICON $'\U2615' # ☕︎
- LARAVEL_ICON ''
- )
- ;;
- 'awesome-mapped-fontconfig')
- # mapped fontconfig with awesome-font required! See
- # https://github.com/gabrielelana/awesome-terminal-fonts
- # don't forget to source the font maps in your startup script
- # Set the right locale to protect special characters
- local LC_ALL="" LC_CTYPE="en_US.UTF-8"
-
- if [ -z "$AWESOME_GLYPHS_LOADED" ]; then
- echo "Powerlevel9k warning: Awesome-Font mappings have not been loaded.
- Source a font mapping in your shell config, per the Awesome-Font docs
- (https://github.com/gabrielelana/awesome-terminal-fonts),
- Or use a different Powerlevel9k font configuration.";
- fi
-
- icons=(
- RULER_CHAR $'\u2500' # ─
- LEFT_SEGMENT_SEPARATOR $'\uE0B0' # 
- RIGHT_SEGMENT_SEPARATOR $'\uE0B2' # 
- LEFT_SEGMENT_END_SEPARATOR ' ' # Whitespace
- RIGHT_SEGMENT_END_SEPARATOR ''
- LEFT_SUBSEGMENT_SEPARATOR $'\uE0B1' # 
- RIGHT_SUBSEGMENT_SEPARATOR $'\uE0B3' # 
- CARRIAGE_RETURN_ICON $'\u21B5' # ↵
- ROOT_ICON '\u'$CODEPOINT_OF_OCTICONS_ZAP # 
- SUDO_ICON '\u'$CODEPOINT_OF_AWESOME_UNLOCK # 
- RUBY_ICON '\u'$CODEPOINT_OF_OCTICONS_RUBY' ' # 
- AWS_ICON '\u'$CODEPOINT_OF_AWESOME_SERVER # 
- AWS_EB_ICON $'\U1F331 ' # 🌱
- BACKGROUND_JOBS_ICON '\u'$CODEPOINT_OF_AWESOME_COG' ' # 
- TEST_ICON '\u'$CODEPOINT_OF_AWESOME_BUG # 
- TODO_ICON '\u'$CODEPOINT_OF_AWESOME_CHECK_SQUARE_O # 
- BATTERY_ICON '\U'$CODEPOINT_OF_AWESOME_BATTERY_FULL # 
- DISK_ICON '\u'$CODEPOINT_OF_AWESOME_HDD_O' ' # 
- OK_ICON '\u'$CODEPOINT_OF_AWESOME_CHECK # 
- FAIL_ICON '\u'$CODEPOINT_OF_AWESOME_TIMES # 
- SYMFONY_ICON 'SF'
- NODE_ICON $'\u2B22' # ⬢
- MULTILINE_FIRST_PROMPT_PREFIX $'\u256D'$'\U2500' # ╭─
- MULTILINE_SECOND_PROMPT_PREFIX $'\u2570'$'\U2500 ' # ╰─
- APPLE_ICON '\u'$CODEPOINT_OF_AWESOME_APPLE # 
- FREEBSD_ICON $'\U1F608 ' # 😈
- LINUX_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_ARCH_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_DEBIAN_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_RASPBIAN_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_UBUNTU_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_CENTOS_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_COREOS_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_ELEMENTARY_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_MINT_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_FEDORA_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_GENTOO_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_MAGEIA_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_NIXOS_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_MANJARO_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_DEVUAN_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_ALPINE_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_AOSC_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_OPENSUSE_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_SABAYON_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- LINUX_SLACKWARE_ICON '\u'$CODEPOINT_OF_AWESOME_LINUX # 
- SUNOS_ICON '\u'$CODEPOINT_OF_AWESOME_SUN_O' ' # 
- HOME_ICON '\u'$CODEPOINT_OF_AWESOME_HOME # 
- HOME_SUB_ICON '\u'$CODEPOINT_OF_AWESOME_FOLDER_OPEN # 
- FOLDER_ICON '\u'$CODEPOINT_OF_AWESOME_FOLDER_O # 
- ETC_ICON '\u'$CODEPOINT_OF_AWESOME_COG' ' # 
- NETWORK_ICON '\u'$CODEPOINT_OF_AWESOME_RSS # 
- LOAD_ICON '\u'$CODEPOINT_OF_AWESOME_BAR_CHART' ' # 
- SWAP_ICON '\u'$CODEPOINT_OF_AWESOME_DASHBOARD # 
- RAM_ICON '\u'$CODEPOINT_OF_AWESOME_DASHBOARD # 
- SERVER_ICON '\u'$CODEPOINT_OF_AWESOME_SERVER # 
- VCS_UNTRACKED_ICON '\u'$CODEPOINT_OF_AWESOME_QUESTION_CIRCLE # 
- VCS_UNSTAGED_ICON '\u'$CODEPOINT_OF_AWESOME_EXCLAMATION_CIRCLE # 
- VCS_STAGED_ICON '\u'$CODEPOINT_OF_AWESOME_PLUS_CIRCLE # 
- VCS_STASH_ICON '\u'$CODEPOINT_OF_AWESOME_INBOX' ' # 
- VCS_INCOMING_CHANGES_ICON '\u'$CODEPOINT_OF_AWESOME_ARROW_CIRCLE_DOWN' ' # 
- VCS_OUTGOING_CHANGES_ICON '\u'$CODEPOINT_OF_AWESOME_ARROW_CIRCLE_UP' ' # 
- VCS_TAG_ICON '\u'$CODEPOINT_OF_AWESOME_TAG' ' # 
- VCS_BOOKMARK_ICON '\u'$CODEPOINT_OF_OCTICONS_BOOKMARK # 
- VCS_COMMIT_ICON '\u'$CODEPOINT_OF_OCTICONS_GIT_COMMIT' ' # 
- VCS_BRANCH_ICON '\u'$CODEPOINT_OF_OCTICONS_GIT_BRANCH' ' # 
- VCS_REMOTE_BRANCH_ICON '\u'$CODEPOINT_OF_OCTICONS_REPO_PUSH # 
- VCS_LOADING_ICON ''
- VCS_GIT_ICON '\u'$CODEPOINT_OF_AWESOME_GIT' ' # 
- VCS_GIT_GITHUB_ICON '\u'$CODEPOINT_OF_AWESOME_GITHUB_ALT' ' # 
- VCS_GIT_BITBUCKET_ICON '\u'$CODEPOINT_OF_AWESOME_BITBUCKET' ' # 
- VCS_GIT_GITLAB_ICON '\u'$CODEPOINT_OF_AWESOME_GITLAB' ' # 
- VCS_HG_ICON '\u'$CODEPOINT_OF_AWESOME_FLASK' ' # 
- VCS_SVN_ICON '(svn) '
- RUST_ICON $'\uE6A8' # 
- PYTHON_ICON $'\U1F40D' # 🐍
- SWIFT_ICON $'\uE655' # 
- PUBLIC_IP_ICON '\u'$CODEPOINT_OF_AWESOME_GLOBE # 
- LOCK_ICON '\u'$CODEPOINT_OF_AWESOME_LOCK # 
- EXECUTION_TIME_ICON '\u'$CODEPOINT_OF_AWESOME_HOURGLASS_END # 
- SSH_ICON '(ssh)'
- VPN_ICON '\u'$CODEPOINT_OF_AWESOME_LOCK
- KUBERNETES_ICON $'\U2388' # ⎈
- DROPBOX_ICON '\u'$CODEPOINT_OF_AWESOME_DROPBOX # 
- DATE_ICON $'\uF073 ' # 
- TIME_ICON $'\uF017 ' # 
- JAVA_ICON $'\U2615' # ☕︎
- LARAVEL_ICON ''
- )
- ;;
- 'nerdfont-complete'|'nerdfont-fontconfig')
- # nerd-font patched (complete) font required! See
- # https://github.com/ryanoasis/nerd-fonts
- # http://nerdfonts.com/#cheat-sheet
- # Set the right locale to protect special characters
- local LC_ALL="" LC_CTYPE="en_US.UTF-8"
- icons=(
- RULER_CHAR $'\u2500' # ─
- LEFT_SEGMENT_SEPARATOR $'\uE0B0' # 
- RIGHT_SEGMENT_SEPARATOR $'\uE0B2' # 
- LEFT_SEGMENT_END_SEPARATOR ' ' # Whitespace
- RIGHT_SEGMENT_END_SEPARATOR ''
- LEFT_SUBSEGMENT_SEPARATOR $'\uE0B1' # 
- RIGHT_SUBSEGMENT_SEPARATOR $'\uE0B3' # 
- CARRIAGE_RETURN_ICON $'\u21B5' # ↵
- ROOT_ICON $'\uE614 ' # 
- SUDO_ICON $'\uF09C' # 
- RUBY_ICON $'\uF219 ' # 
- AWS_ICON $'\uF270' # 
- AWS_EB_ICON $'\UF1BD ' # 
- BACKGROUND_JOBS_ICON $'\uF013 ' # 
- TEST_ICON $'\uF188' # 
- TODO_ICON $'\uF133' # 
- BATTERY_ICON $'\UF240 ' # 
- DISK_ICON $'\uF0A0' # 
- OK_ICON $'\uF00C' # 
- FAIL_ICON $'\uF00D' # 
- SYMFONY_ICON $'\uE757' # 
- NODE_ICON $'\uE617 ' # 
- MULTILINE_FIRST_PROMPT_PREFIX $'\u256D'$'\U2500' # ╭─
- MULTILINE_NEWLINE_PROMPT_PREFIX $'\u251C'$'\U2500' # ├─
- MULTILINE_LAST_PROMPT_PREFIX $'\u2570'$'\U2500 ' # ╰─
- APPLE_ICON $'\uF179' # 
- WINDOWS_ICON $'\uF17A' # 
- FREEBSD_ICON $'\UF30C ' # 
- ANDROID_ICON $'\uF17B' # 
- LINUX_ARCH_ICON $'\uF303' # 
- LINUX_CENTOS_ICON $'\uF304' # 
- LINUX_COREOS_ICON $'\uF305' # 
- LINUX_DEBIAN_ICON $'\uF306' # 
- LINUX_RASPBIAN_ICON $'\uF315' # 
- LINUX_ELEMENTARY_ICON $'\uF309' # 
- LINUX_FEDORA_ICON $'\uF30a' # 
- LINUX_GENTOO_ICON $'\uF30d' # 
- LINUX_MAGEIA_ICON $'\uF310' # 
- LINUX_MINT_ICON $'\uF30e' # 
- LINUX_NIXOS_ICON $'\uF313' # 
- LINUX_MANJARO_ICON $'\uF312' # 
- LINUX_DEVUAN_ICON $'\uF307' # 
- LINUX_ALPINE_ICON $'\uF300' # 
- LINUX_AOSC_ICON $'\uF301' # 
- LINUX_OPENSUSE_ICON $'\uF314' # 
- LINUX_SABAYON_ICON $'\uF317' # 
- LINUX_SLACKWARE_ICON $'\uF319' # 
- LINUX_UBUNTU_ICON $'\uF31b' # 
- LINUX_ICON $'\uF17C' # 
- SUNOS_ICON $'\uF185 ' # 
- HOME_ICON $'\uF015' # 
- HOME_SUB_ICON $'\uF07C' # 
- FOLDER_ICON $'\uF115' # 
- ETC_ICON $'\uF013' # 
- NETWORK_ICON $'\uF1EB' # 
- LOAD_ICON $'\uF080 ' # 
- SWAP_ICON $'\uF464' # 
- RAM_ICON $'\uF0E4' # 
- SERVER_ICON $'\uF0AE' # 
- VCS_UNTRACKED_ICON $'\uF059' # 
- VCS_UNSTAGED_ICON $'\uF06A' # 
- VCS_STAGED_ICON $'\uF055' # 
- VCS_STASH_ICON $'\uF01C ' # 
- VCS_INCOMING_CHANGES_ICON $'\uF01A ' # 
- VCS_OUTGOING_CHANGES_ICON $'\uF01B ' # 
- VCS_TAG_ICON $'\uF02B ' # 
- VCS_BOOKMARK_ICON $'\uF461 ' # 
- VCS_COMMIT_ICON $'\uE729 ' # 
- VCS_BRANCH_ICON $'\uF126 ' # 
- VCS_REMOTE_BRANCH_ICON $'\uE728 ' # 
- VCS_LOADING_ICON ''
- VCS_GIT_ICON $'\uF1D3 ' # 
- VCS_GIT_GITHUB_ICON $'\uF113 ' # 
- VCS_GIT_BITBUCKET_ICON $'\uE703 ' # 
- VCS_GIT_GITLAB_ICON $'\uF296 ' # 
- VCS_HG_ICON $'\uF0C3 ' # 
- VCS_SVN_ICON $'\uE72D ' # 
- RUST_ICON $'\uE7A8 ' # 
- PYTHON_ICON $'\UE73C ' # 
- SWIFT_ICON $'\uE755' # 
- GO_ICON $'\uE626' # 
- PUBLIC_IP_ICON $'\UF0AC' # 
- LOCK_ICON $'\UF023' # 
- EXECUTION_TIME_ICON $'\uF252' # 
- SSH_ICON $'\uF489' # 
- VPN_ICON '(vpn)'
- KUBERNETES_ICON $'\U2388' # ⎈
- DROPBOX_ICON $'\UF16B' # 
- DATE_ICON $'\uF073 ' # 
- TIME_ICON $'\uF017 ' # 
- JAVA_ICON $'\U2615' # ☕︎
- LARAVEL_ICON $'\ue73f ' # 
- )
- ;;
- *)
- # Powerline-Patched Font required!
- # See https://github.com/Lokaltog/powerline-fonts
- # Set the right locale to protect special characters
- local LC_ALL="" LC_CTYPE="en_US.UTF-8"
- icons=(
- RULER_CHAR $'\u2500' # ─
- LEFT_SEGMENT_SEPARATOR $'\uE0B0' # 
- RIGHT_SEGMENT_SEPARATOR $'\uE0B2' # 
- LEFT_SEGMENT_END_SEPARATOR ' ' # Whitespace
- RIGHT_SEGMENT_END_SEPARATOR ''
- LEFT_SUBSEGMENT_SEPARATOR $'\uE0B1' # 
- RIGHT_SUBSEGMENT_SEPARATOR $'\uE0B3' # 
- CARRIAGE_RETURN_ICON $'\u21B5' # ↵
- ROOT_ICON $'\u26A1' # ⚡
- SUDO_ICON $'\uE0A2' # 
- RUBY_ICON ''
- AWS_ICON 'AWS:'
- AWS_EB_ICON $'\U1F331 ' # 🌱
- BACKGROUND_JOBS_ICON $'\u2699' # ⚙
- TEST_ICON ''
- TODO_ICON $'\u2611' # ☑
- BATTERY_ICON $'\U1F50B' # 🔋
- DISK_ICON $'hdd '
- OK_ICON $'\u2714' # ✔
- FAIL_ICON $'\u2718' # ✘
- SYMFONY_ICON 'SF'
- NODE_ICON $'\u2B22' # ⬢
- MULTILINE_FIRST_PROMPT_PREFIX $'\u256D'$'\U2500' # ╭─
- MULTILINE_NEWLINE_PROMPT_PREFIX $'\u251C'$'\U2500' # ├─
- MULTILINE_LAST_PROMPT_PREFIX $'\u2570'$'\U2500 ' # ╰─
- APPLE_ICON 'OSX'
- WINDOWS_ICON 'WIN'
- FREEBSD_ICON 'BSD'
- ANDROID_ICON 'And'
- LINUX_ICON 'Lx'
- LINUX_ARCH_ICON 'Arc'
- LINUX_DEBIAN_ICON 'Deb'
- LINUX_RASPBIAN_ICON 'RPi'
- LINUX_UBUNTU_ICON 'Ubu'
- LINUX_CENTOS_ICON 'Cen'
- LINUX_COREOS_ICON 'Cor'
- LINUX_ELEMENTARY_ICON 'Elm'
- LINUX_MINT_ICON 'LMi'
- LINUX_FEDORA_ICON 'Fed'
- LINUX_GENTOO_ICON 'Gen'
- LINUX_MAGEIA_ICON 'Mag'
- LINUX_NIXOS_ICON 'Nix'
- LINUX_MANJARO_ICON 'Man'
- LINUX_DEVUAN_ICON 'Dev'
- LINUX_ALPINE_ICON 'Alp'
- LINUX_AOSC_ICON 'Aos'
- LINUX_OPENSUSE_ICON 'OSu'
- LINUX_SABAYON_ICON 'Sab'
- LINUX_SLACKWARE_ICON 'Sla'
- SUNOS_ICON 'Sun'
- HOME_ICON ''
- HOME_SUB_ICON ''
- FOLDER_ICON ''
- ETC_ICON $'\u2699' # ⚙
- NETWORK_ICON 'IP'
- LOAD_ICON 'L'
- SWAP_ICON 'SWP'
- RAM_ICON 'RAM'
- SERVER_ICON ''
- VCS_UNTRACKED_ICON '?'
- VCS_UNSTAGED_ICON $'\u25CF' # ●
- VCS_STAGED_ICON $'\u271A' # ✚
- VCS_STASH_ICON $'\u235F' # ⍟
- VCS_INCOMING_CHANGES_ICON $'\u2193' # ↓
- VCS_OUTGOING_CHANGES_ICON $'\u2191' # ↑
- VCS_TAG_ICON ''
- VCS_BOOKMARK_ICON $'\u263F' # ☿
- VCS_COMMIT_ICON ''
- VCS_BRANCH_ICON $'\uE0A0 ' # 
- VCS_REMOTE_BRANCH_ICON $'\u2192' # →
- VCS_LOADING_ICON ''
- VCS_GIT_ICON ''
- VCS_GIT_GITHUB_ICON ''
- VCS_GIT_BITBUCKET_ICON ''
- VCS_GIT_GITLAB_ICON ''
- VCS_HG_ICON ''
- VCS_SVN_ICON ''
- RUST_ICON 'Rust'
- PYTHON_ICON ''
- SWIFT_ICON 'Swift'
- GO_ICON 'Go'
- PUBLIC_IP_ICON ''
- LOCK_ICON $'\UE0A2'
- EXECUTION_TIME_ICON 'Dur'
- SSH_ICON '(ssh)'
- VPN_ICON '(vpn)'
- KUBERNETES_ICON $'\U2388' # ⎈
- DROPBOX_ICON 'Dropbox'
- DATE_ICON ''
- TIME_ICON ''
- JAVA_ICON $'\U2615' # ☕︎
- LARAVEL_ICON ''
- )
- ;;
- esac
-
- # Override the above icon settings with any user-defined variables.
- case $POWERLEVEL9K_MODE in
- 'flat')
- # Set the right locale to protect special characters
- local LC_ALL="" LC_CTYPE="en_US.UTF-8"
- icons[LEFT_SEGMENT_SEPARATOR]=''
- icons[RIGHT_SEGMENT_SEPARATOR]=''
- icons[LEFT_SUBSEGMENT_SEPARATOR]='|'
- icons[RIGHT_SUBSEGMENT_SEPARATOR]='|'
- ;;
- 'compatible')
- # Set the right locale to protect special characters
- local LC_ALL="" LC_CTYPE="en_US.UTF-8"
- icons[LEFT_SEGMENT_SEPARATOR]=$'\u2B80' # ⮀
- icons[RIGHT_SEGMENT_SEPARATOR]=$'\u2B82' # ⮂
- icons[VCS_BRANCH_ICON]='@'
- ;;
- esac
-
- if [[ "$POWERLEVEL9K_HIDE_BRANCH_ICON" == true ]]; then
- icons[VCS_BRANCH_ICON]=''
- fi
-}
-
-# Safety function for printing icons
-# Prints the named icon, or if that icon is undefined, the string name.
-function print_icon() {
- _p9k_init_icons
- local icon_name=$1
- local var_name=POWERLEVEL9K_${icon_name}
- if [[ -n "${(tP)var_name}" ]]; then
- echo -n "${(P)var_name}"
- else
- echo -n "${icons[$icon_name]}"
- fi
-}
-
-# Get a list of configured icons
-# * $1 string - If "original", then the original icons are printed,
-# otherwise "print_icon" is used, which takes the users
-# overrides into account.
-function get_icon_names() {
- _p9k_init_icons
- # Iterate over a ordered list of keys of the icons array
- for key in ${(@kon)icons}; do
- echo -n "POWERLEVEL9K_$key: "
- if [[ "${1}" == "original" ]]; then
- # print the original icons as they are defined in the array above
- echo "${icons[$key]}"
- else
- # print the icons as they are configured by the user
- echo "$(print_icon "$key")"
- fi
- done
-}
diff --git a/functions/utilities.zsh b/functions/utilities.zsh
deleted file mode 100755
index 5d32370c..00000000
--- a/functions/utilities.zsh
+++ /dev/null
@@ -1,142 +0,0 @@
-# vim:ft=zsh ts=2 sw=2 sts=2 et fenc=utf-8
-################################################################
-# Utility functions
-# This file holds some utility-functions for
-# the powerlevel9k-ZSH-theme
-# https://github.com/bhilburn/powerlevel9k
-################################################################
-
-# Usage: set_default [OPTION]... NAME [VALUE]...
-#
-# Options are the same as in `typeset`.
-function set_default() {
- emulate -L zsh
- local -a flags=(-g)
- while true; do
- case $1 in
- --) shift; break;;
- -*) flags+=$1; shift;;
- *) break;
- esac
- done
-
- local varname=$1
- shift
- if [[ -n ${(tP)varname} ]]; then
- typeset $flags $varname
- elif [[ "$flags" == *[aA]* ]]; then
- eval "typeset ${(@q)flags} ${(q)varname}=(${(qq)@})"
- else
- typeset $flags $varname="$*"
- fi
-}
-
-function _p9k_g_expand() {
- (( $+parameters[$1] )) || return
- local -a ts=("${=$(typeset -p $1)}")
- shift ts
- local x
- for x in "${ts[@]}"; do
- [[ $x == -* ]] || break
- # Don't change readonly variables. Ideally, we shouldn't modify any variables at all,
- # but for now this will do.
- [[ $x == -*r* ]] && return
- done
- typeset -g $1=${(g::)${(P)1}}
-}
-
-# If we execute `print -P $1`, how many characters will be printed on the last line?
-# Assumes that `%{%}` and `%G` don't lie.
-#
-# _p9k_prompt_length '' => 0
-# _p9k_prompt_length 'abc' => 3
-# _p9k_prompt_length $'abc\nxy' => 2
-# _p9k_prompt_length $'\t' => 8
-# _p9k_prompt_length '%F{red}abc' => 3
-# _p9k_prompt_length $'%{a\b%Gb%}' => 1
-function _p9k_prompt_length() {
- emulate -L zsh
- local COLUMNS=1024
- local -i x y=$#1 m
- if (( y )); then
- while (( ${${(%):-$1%$y(l.1.0)}[-1]} )); do
- x=y
- (( y *= 2 ));
- done
- local xy
- while (( y > x + 1 )); do
- m=$(( x + (y - x) / 2 ))
- typeset ${${(%):-$1%$m(l.x.y)}[-1]}=$m
- done
- fi
- _P9K_RETVAL=$x
-}
-
-typeset -g _P9K_BYTE_SUFFIX=('B' 'K' 'M' 'G' 'T' 'P' 'E' 'Z' 'Y')
-
-# 42 => 42B
-# 1536 => 1.5K
-function _p9k_human_readable_bytes() {
- typeset -F 2 n=$1
- local suf
- for suf in $_P9K_BYTE_SUFFIX; do
- (( n < 100 )) && break
- (( n /= 1024 ))
- done
- _P9K_RETVAL=$n$suf
-}
-
-# Determine if the passed segment is used in the prompt
-#
-# Pass the name of the segment to this function to test for its presence in
-# either the LEFT or RIGHT prompt arrays.
-# * $1: The segment to be tested.
-segment_in_use() {
- local key=$1
- [[ -n "${POWERLEVEL9K_LEFT_PROMPT_ELEMENTS[(r)${key}]}" ||
- -n "${POWERLEVEL9K_LEFT_PROMPT_ELEMENTS[(r)${key}_joined]}" ||
- -n "${POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS[(r)${key}]}" ||
- -n "${POWERLEVEL9K_RIGHT_PROMPT_ELEMENTS[(r)${key}_joined]}" ]]
-}
-
-function _p9k_parse_ip() {
- local desiredInterface=${1:-'^[^ ]+'}
-
- if [[ $OS == OSX ]]; then
- [[ -x /sbin/ifconfig ]] || return
- local rawInterfaces && rawInterfaces="$(/sbin/ifconfig -l 2>/dev/null)" || return
- local -a interfaces=(${(A)=rawInterfaces})
- local pattern="${desiredInterface}[^ ]?"
- local -a relevantInterfaces
- for rawInterface in $interfaces; do
- [[ "$rawInterface" =~ $pattern ]] && relevantInterfaces+=$MATCH
- done
- local newline=$'\n'
- local interfaceName interface
- for interfaceName in $relevantInterfaces; do
- interface="$(/sbin/ifconfig $interfaceName 2>/dev/null)" || continue
- [[ "${interface}" =~ "lo[0-9]*" ]] && continue
- if [[ "${interface//${newline}/}" =~ "<([^>]*)>(.*)inet[ ]+([^ ]*)" ]]; then
- local ipFound="${match[3]}"
- local -a interfaceStates=(${(s:,:)match[1]})
- if (( ${interfaceStates[(I)UP]} )); then
- _P9K_RETVAL=$ipFound
- return
- fi
- fi
- done
- else
- [[ -x /sbin/ip ]] || return
- local -a interfaces=( "${(f)$(/sbin/ip -brief -4 a show 2>/dev/null)}" )
- local pattern="^${desiredInterface}[[:space:]]+UP[[:space:]]+([^/ ]+)"
- local interface
- for interface in "${(@)interfaces}"; do
- if [[ "$interface" =~ $pattern ]]; then
- _P9K_RETVAL=$match[1]
- return
- fi
- done
- fi
-
- return 1
-}
diff --git a/functions/vcs.zsh b/functions/vcs.zsh
deleted file mode 100755
index d89525fd..00000000
--- a/functions/vcs.zsh
+++ /dev/null
@@ -1,165 +0,0 @@
-# vim:ft=zsh ts=2 sw=2 sts=2 et fenc=utf-8
-################################################################
-# vcs
-# This file holds supplemental VCS functions
-# for the powerlevel9k-ZSH-theme
-# https://github.com/bhilburn/powerlevel9k
-################################################################
-
-set_default POWERLEVEL9K_VCS_SHOW_SUBMODULE_DIRTY false
-function +vi-git-untracked() {
- [[ -z "${vcs_comm[gitdir]}" || "${vcs_comm[gitdir]}" == "." ]] && return
-
- # get the root for the current repo or submodule
- local repoTopLevel="$(command git rev-parse --show-toplevel 2> /dev/null)"
- # dump out if we're outside a git repository (which includes being in the .git folder)
- [[ $? != 0 || -z $repoTopLevel ]] && return
-
- local untrackedFiles=$(command git ls-files --others --exclude-standard "${repoTopLevel}" 2> /dev/null)
-
- if [[ -z $untrackedFiles && "$POWERLEVEL9K_VCS_SHOW_SUBMODULE_DIRTY" == "true" ]]; then
- untrackedFiles+=$(command git submodule foreach --quiet --recursive 'command git ls-files --others --exclude-standard' 2> /dev/null)
- fi
-
- [[ -z $untrackedFiles ]] && return
-
- hook_com[unstaged]+=" $(print_icon 'VCS_UNTRACKED_ICON')"
- VCS_WORKDIR_HALF_DIRTY=true
-}
-
-function +vi-git-aheadbehind() {
- local ahead behind
- local -a gitstatus
-
- # for git prior to 1.7
- # ahead=$(command git rev-list origin/${hook_com[branch]}..HEAD | wc -l)
- ahead=$(command git rev-list --count "${hook_com[branch]}"@{upstream}..HEAD 2>/dev/null)
- (( ahead )) && gitstatus+=( " $(print_icon 'VCS_OUTGOING_CHANGES_ICON')${ahead// /}" )
-
- # for git prior to 1.7
- # behind=$(command git rev-list HEAD..origin/${hook_com[branch]} | wc -l)
- behind=$(command git rev-list --count HEAD.."${hook_com[branch]}"@{upstream} 2>/dev/null)
- (( behind )) && gitstatus+=( " $(print_icon 'VCS_INCOMING_CHANGES_ICON')${behind// /}" )
-
- hook_com[misc]+=${(j::)gitstatus}
-}
-
-function +vi-git-remotebranch() {
- local remote
- local branch_name="${hook_com[branch]}"
-
- # Are we on a remote-tracking branch?
- remote=${$(command git rev-parse --verify HEAD@{upstream} --symbolic-full-name 2>/dev/null)/refs\/(remotes|heads)\/}
-
- if [[ -n "$POWERLEVEL9K_VCS_SHORTEN_LENGTH" ]] && [[ -n "$POWERLEVEL9K_VCS_SHORTEN_MIN_LENGTH" ]]; then
- if [ ${#hook_com[branch]} -gt ${POWERLEVEL9K_VCS_SHORTEN_MIN_LENGTH} ] && [ ${#hook_com[branch]} -gt ${POWERLEVEL9K_VCS_SHORTEN_LENGTH} ]; then
- case "$POWERLEVEL9K_VCS_SHORTEN_STRATEGY" in
- truncate_middle)
- hook_com[branch]="${branch_name:0:$POWERLEVEL9K_VCS_SHORTEN_LENGTH}${POWERLEVEL9K_VCS_SHORTEN_DELIMITER}${branch_name: -$POWERLEVEL9K_VCS_SHORTEN_LENGTH}"
- ;;
- truncate_from_right)
- hook_com[branch]="${branch_name:0:$POWERLEVEL9K_VCS_SHORTEN_LENGTH}${POWERLEVEL9K_VCS_SHORTEN_DELIMITER}"
- ;;
- esac
- fi
- fi
-
- hook_com[branch]="$(print_icon 'VCS_BRANCH_ICON')${hook_com[branch]}"
- # Always show the remote
- #if [[ -n ${remote} ]] ; then
- # Only show the remote if it differs from the local
- if [[ -n ${remote} ]] && [[ "${remote#*/}" != "${branch_name}" ]] ; then
- hook_com[branch]+="$(print_icon 'VCS_REMOTE_BRANCH_ICON')${remote// /}"
- fi
-}
-
-set_default POWERLEVEL9K_VCS_HIDE_TAGS false
-function +vi-git-tagname() {
- if [[ "$POWERLEVEL9K_VCS_HIDE_TAGS" == "false" ]]; then
- # If we are on a tag, append the tagname to the current branch string.
- local tag
- tag=$(command git describe --tags --exact-match HEAD 2>/dev/null)
-
- if [[ -n "${tag}" ]] ; then
- # There is a tag that points to our current commit. Need to determine if we
- # are also on a branch, or are in a DETACHED_HEAD state.
- if [[ -z $(command git symbolic-ref HEAD 2>/dev/null) ]]; then
- # DETACHED_HEAD state. We want to append the tag name to the commit hash
- # and print it. Unfortunately, `vcs_info` blows away the hash when a tag
- # exists, so we have to manually retrieve it and clobber the branch
- # string.
- local revision
- revision=$(command git rev-list -n 1 --abbrev-commit --abbrev=${POWERLEVEL9K_VCS_INTERNAL_HASH_LENGTH} HEAD)
- hook_com[branch]="$(print_icon 'VCS_BRANCH_ICON')${revision} $(print_icon 'VCS_TAG_ICON')${tag}"
- else
- # We are on both a tag and a branch; print both by appending the tag name.
- hook_com[branch]+=" $(print_icon 'VCS_TAG_ICON')${tag}"
- fi
- fi
- fi
-}
-
-# Show count of stashed changes
-# Port from https://github.com/whiteinge/dotfiles/blob/5dfd08d30f7f2749cfc60bc55564c6ea239624d9/.zsh_shouse_prompt#L268
-function +vi-git-stash() {
- if [[ -s "${vcs_comm[gitdir]}/logs/refs/stash" ]] ; then
- local -a stashes=( "${(@f)"$(<${vcs_comm[gitdir]}/logs/refs/stash)"}" )
- hook_com[misc]+=" $(print_icon 'VCS_STASH_ICON')${#stashes}"
- fi
-}
-
-function +vi-hg-bookmarks() {
- if [[ -n "${hgbmarks[@]}" ]]; then
- hook_com[hg-bookmark-string]=" $(print_icon 'VCS_BOOKMARK_ICON')${hgbmarks[@]}"
-
- # To signal that we want to use the sting we just generated, set the special
- # variable `ret' to something other than the default zero:
- ret=1
- return 0
- fi
-}
-
-function +vi-vcs-detect-changes() {
- if [[ "${hook_com[vcs]}" == "git" ]]; then
-
- local remote=$(command git ls-remote --get-url 2> /dev/null)
- if [[ "$remote" =~ "github" ]] then
- vcs_visual_identifier='VCS_GIT_GITHUB_ICON'
- elif [[ "$remote" =~ "bitbucket" ]] then
- vcs_visual_identifier='VCS_GIT_BITBUCKET_ICON'
- elif [[ "$remote" =~ "stash" ]] then
- vcs_visual_identifier='VCS_GIT_BITBUCKET_ICON'
- elif [[ "$remote" =~ "gitlab" ]] then
- vcs_visual_identifier='VCS_GIT_GITLAB_ICON'
- else
- vcs_visual_identifier='VCS_GIT_ICON'
- fi
-
- elif [[ "${hook_com[vcs]}" == "hg" ]]; then
- vcs_visual_identifier='VCS_HG_ICON'
- elif [[ "${hook_com[vcs]}" == "svn" ]]; then
- vcs_visual_identifier='VCS_SVN_ICON'
- fi
-
- if [[ -n "${hook_com[staged]}" ]] || [[ -n "${hook_com[unstaged]}" ]]; then
- VCS_WORKDIR_DIRTY=true
- else
- VCS_WORKDIR_DIRTY=false
- fi
-}
-
-function +vi-svn-detect-changes() {
- local svn_status="$(svn status)"
- if [[ -n "$(echo "$svn_status" | \grep \^\?)" ]]; then
- hook_com[unstaged]+=" $(print_icon 'VCS_UNTRACKED_ICON')"
- VCS_WORKDIR_HALF_DIRTY=true
- fi
- if [[ -n "$(echo "$svn_status" | \grep \^\M)" ]]; then
- hook_com[unstaged]+=" $(print_icon 'VCS_UNSTAGED_ICON')"
- VCS_WORKDIR_DIRTY=true
- fi
- if [[ -n "$(echo "$svn_status" | \grep \^\A)" ]]; then
- hook_com[staged]+=" $(print_icon 'VCS_STAGED_ICON')"
- VCS_WORKDIR_DIRTY=true
- fi
-}