summaryrefslogtreecommitdiff
path: root/zshfunc/vcs-info/VCS_INFO_set
diff options
context:
space:
mode:
Diffstat (limited to 'zshfunc/vcs-info/VCS_INFO_set')
-rw-r--r--zshfunc/vcs-info/VCS_INFO_set24
1 files changed, 24 insertions, 0 deletions
diff --git a/zshfunc/vcs-info/VCS_INFO_set b/zshfunc/vcs-info/VCS_INFO_set
new file mode 100644
index 0000000..4cd2999
--- /dev/null
+++ b/zshfunc/vcs-info/VCS_INFO_set
@@ -0,0 +1,24 @@
+VCS_INFO_set () { #{{{
+ setopt localoptions noksharrays
+ local -i i j
+
+ if [[ $1 == '--clear' ]] ; then
+ for i in {0..9} ; do
+ unset VCS_INFO_message_${i}_
+ done
+ fi
+ if [[ $1 == '--nvcs' ]] ; then
+ [[ $2 == 'preinit' ]] && (( maxexports == 0 )) && (( maxexports = 1 ))
+ for i in {0..$((maxexports - 1))} ; do
+ typeset -gx VCS_INFO_message_${i}_=
+ done
+ VCS_INFO_nvcsformats $2
+ fi
+
+ (( ${#msgs} - 1 < 0 )) && return 0
+ for i in {0..$(( ${#msgs} - 1 ))} ; do
+ (( j = i + 1 ))
+ typeset -gx VCS_INFO_message_${i}_=${msgs[$j]}
+ done
+ return 0
+}