summaryrefslogtreecommitdiff
path: root/Functions
diff options
context:
space:
mode:
authorAxel Beckert <abe@deuxchevaux.org>2012-12-17 19:50:31 +0100
committerAxel Beckert <abe@deuxchevaux.org>2012-12-17 19:51:41 +0100
commit049f4be0b89188e1bc3e19e75c0675dd2356d3ef (patch)
tree7b6cc1a6611683b28888f8f7172ce8ceba773c30 /Functions
parent015e05572733aafd2a005edd507d16e2310653a0 (diff)
parent7152094541a54c92ff937413f850e09412585b7b (diff)
downloadzsh-049f4be0b89188e1bc3e19e75c0675dd2356d3ef.tar.gz
zsh-049f4be0b89188e1bc3e19e75c0675dd2356d3ef.zip
New upstream test release
Diffstat (limited to 'Functions')
-rw-r--r--Functions/Misc/zmv2
-rw-r--r--Functions/VCS_Info/Backends/VCS_INFO_detect_fossil2
-rw-r--r--Functions/VCS_Info/Backends/VCS_INFO_get_data_git7
-rw-r--r--Functions/VCS_Info/Backends/VCS_INFO_get_data_hg13
-rw-r--r--Functions/VCS_Info/VCS_INFO_quilt8
5 files changed, 19 insertions, 13 deletions
diff --git a/Functions/Misc/zmv b/Functions/Misc/zmv
index 86a8fce9c..4ba664e6d 100644
--- a/Functions/Misc/zmv
+++ b/Functions/Misc/zmv
@@ -279,7 +279,7 @@ fi
for f in $files; do
[[ -z $to[$f] ]] && continue
exec=($action ${=opt_o} $opt_s -- $f $to[$f])
- [[ -n $opt_i$opt_n$opt_v ]] && print -r -- ${(q)exec}
+ [[ -n $opt_i$opt_n$opt_v ]] && print -r -- ${(q-)exec}
if [[ -n $opt_i ]]; then
read -q 'opt?Execute? ' || continue
fi
diff --git a/Functions/VCS_Info/Backends/VCS_INFO_detect_fossil b/Functions/VCS_Info/Backends/VCS_INFO_detect_fossil
index 551528361..a44b33eb5 100644
--- a/Functions/VCS_Info/Backends/VCS_INFO_detect_fossil
+++ b/Functions/VCS_Info/Backends/VCS_INFO_detect_fossil
@@ -7,7 +7,7 @@ setopt localoptions NO_shwordsplit
[[ $1 == '--flavours' ]] && return 1
VCS_INFO_check_com ${vcs_comm[cmd]} || return 1
-vcs_comm[detect_need_file]=_FOSSIL_
+vcs_comm[detect_need_file]="_FOSSIL_ .fslckout"
VCS_INFO_bydir_detect . || return 1
return 0
diff --git a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
index 9364fd021..e40571a0e 100644
--- a/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
+++ b/Functions/VCS_Info/Backends/VCS_INFO_get_data_git
@@ -129,12 +129,13 @@ rrn=${gitbase:t}
local patchdir=${gitdir}/patches/${gitbranch}
if [[ -d $patchdir ]] ; then
- local -a stgit_applied stgit_unapplied
+ local -a stgit_applied stgit_unapplied stgit_all
stgit_applied=(${(f)"$(< "${patchdir}/applied")"})
stgit_applied=( ${(Oa)stgit_applied} )
stgit_unapplied=(${(f)"$(< "${patchdir}/unapplied")"})
stgit_unapplied=( ${(oa)stgit_unapplied} )
+ stgit_all=( ${(Oa)stgit_applied} ${stgit_unapplied} )
if VCS_INFO_hook 'gen-applied-string' "${stgit_applied[@]}"; then
if (( ${#stgit_applied} )); then
@@ -158,10 +159,10 @@ if [[ -d $patchdir ]] ; then
zstyle -s ":vcs_info:${vcs}:${usercontext}:${rrn}" nopatch-format stgitmsg || stgitmsg="no patch applied"
fi
hook_com=( applied "${stgitpatch}" unapplied "${stgitunapplied}"
- applied-n ${#stgit_applied} unapplied-n ${#stgit_unapplied} )
+ applied-n ${#stgit_applied} unapplied-n ${#stgit_unapplied} all-n ${#stgit_all} )
if VCS_INFO_hook 'set-patch-format' "${stgitmsg}"; then
zformat -f stgitmsg "${stgitmsg}" "p:${hook_com[applied]}" "u:${hook_com[unapplied]}" \
- "n:${#stgit_applied}" "c:${#stgit_unapplied}"
+ "n:${#stgit_applied}" "c:${#stgit_unapplied}" "a:${#stgit_all}"
else
stgitmsg=${hook_com[patch-replace]}
fi
diff --git a/Functions/VCS_Info/Backends/VCS_INFO_get_data_hg b/Functions/VCS_Info/Backends/VCS_INFO_get_data_hg
index a1b87f59e..cedaf5676 100644
--- a/Functions/VCS_Info/Backends/VCS_INFO_get_data_hg
+++ b/Functions/VCS_Info/Backends/VCS_INFO_get_data_hg
@@ -37,12 +37,15 @@ VCS_INFO_adjust
# Calling the 'hg' program is quite a bit too slow for prompts.
# Disabled by default anyway, so no harm done.
if zstyle -t ":vcs_info:${vcs}:${usercontext}:${rrn}" get-revision ; then
- # Calling hexdump is (much) faster than hg but doesn't get the local rev
if zstyle -t ":vcs_info:${vcs}:${usercontext}:${rrn}" use-simple \
&& ( VCS_INFO_check_com hexdump ) && [[ -r ${dirstatefile} ]] ; then
+ # Calling hexdump is (much) faster than hg but doesn't get the local rev
r_csetid=$(hexdump -n 20 -e '1/1 "%02x"' ${dirstatefile})
else
- hgid_args=( --debug id -i -n -b )
+ # Settling for a short (but unique!) hash because getting the full
+ # 40-char hash in addition to all the other info we want isn't
+ # available in a single hg invocation
+ hgid_args=( id -i -n -b )
# Looking for changes is a tad bit slower since the dirstate cache must
# first be refreshed before being read
@@ -119,7 +122,7 @@ if zstyle -t ":vcs_info:${vcs}:${usercontext}:${rrn}" get-bookmarks \
&& [[ -r "${bmfile}" ]] && [[ -n "$r_csetid" ]] ; then
while read -r i_bmhash i_bmname ; do
# Compare hash in bookmarks file with changeset id
- [[ $r_csetid == $i_bmhash ]] && hgbmarks+=( $i_bmname )
+ [[ $i_bmhash == $r_csetid* ]] && hgbmarks+=( $i_bmname )
done < ${bmfile}
if VCS_INFO_hook 'gen-hg-bookmark-string' "${hgbmarks[@]}"; then
@@ -213,13 +216,13 @@ if zstyle -T ":vcs_info:${vcs}:${usercontext}:${rrn}" get-mq \
fi
hook_com=( applied "${applied_string}" unapplied "${unapplied_string}"
- applied-n ${#mqpatches} unapplied-n ${#mqunapplied}
+ applied-n ${#mqpatches} unapplied-n ${#mqunapplied} all-n ${#mqseries}
guards "${guards_string}" guards-n ${#mqguards} )
if VCS_INFO_hook 'set-patch-format' ${qstring}; then
zformat -f hgmqstring "${hgmqstring}" \
"p:${hook_com[applied]}" "u:${hook_com[unapplied]}" \
- "n:${#mqpatches}" "c:${#mqunapplied}" \
+ "n:${#mqpatches}" "c:${#mqunapplied}" "a:${#mqseries}" \
"g:${hook_com[guards]}" "G:${#mqguards}"
else
hgmqstring=${hook_com[patch-replace]}
diff --git a/Functions/VCS_Info/VCS_INFO_quilt b/Functions/VCS_Info/VCS_INFO_quilt
index fc127c23b..7001eca07 100644
--- a/Functions/VCS_Info/VCS_INFO_quilt
+++ b/Functions/VCS_Info/VCS_INFO_quilt
@@ -89,7 +89,7 @@ function VCS_INFO_quilt() {
local patches pc tmp qstring root
local -i ret
local -x context
- local -a applied unapplied applied_string unapplied_string quiltcommand
+ local -a applied unapplied all applied_string unapplied_string quiltcommand
local -Ax hook_com
context=":vcs_info:${vcs}.quilt-${mode}:${usercontext}:${rrn}"
@@ -142,6 +142,8 @@ function VCS_INFO_quilt() {
unapplied=()
fi
+ all=( ${(Oa)applied} ${unapplied} )
+
if VCS_INFO_hook 'gen-applied-string' "${applied[@]}"; then
if (( ${#applied} )); then
applied_string=${applied[1]}
@@ -164,10 +166,10 @@ function VCS_INFO_quilt() {
zstyle -s "${context}" nopatch-format qstring || qstring="no patch applied"
fi
hook_com=( applied "${applied_string}" unapplied "${unapplied_string}"
- applied-n ${#applied} unapplied-n ${#unapplied} )
+ applied-n ${#applied} unapplied-n ${#unapplied} all-n ${#all} )
if VCS_INFO_hook 'set-patch-format' ${qstring}; then
zformat -f qstring "${qstring}" "p:${hook_com[applied]}" "u:${hook_com[unapplied]}" \
- "n:${#applied}" "c:${#unapplied}"
+ "n:${#applied}" "c:${#unapplied}" "a:${#all}"
else
qstring=${hook_com[patch-replace]}
fi