summaryrefslogtreecommitdiff
path: root/Completion
diff options
context:
space:
mode:
Diffstat (limited to 'Completion')
-rw-r--r--Completion/Base/Utility/_store_cache11
1 files changed, 2 insertions, 9 deletions
diff --git a/Completion/Base/Utility/_store_cache b/Completion/Base/Utility/_store_cache
index 8feaee6f7..86e72e9a9 100644
--- a/Completion/Base/Utility/_store_cache
+++ b/Completion/Base/Utility/_store_cache
@@ -46,15 +46,8 @@ if zstyle -t ":completion:${curcontext}:" use-cache; then
for var; do
case ${(Pt)var} in
(*readonly*) ;;
- (*(association|array)*)
- # Dump the array as a here-document to reduce parsing overhead
- # when reloading the cache with "source" from _retrieve_cache
- print -r "$var=( "'"${(zQ)$(<<\EO:'"$var"
- print -r "${(kv@Pqq)^^var}"
- print -r "EO:$var"
- print -r ')}" )'
- ;;
- (*) print -r "$var=${(Pqq)^^var}";;
+ (*(association|array)*) print -r "$var=( ${(kv@Pqq)^^var} )";;
+ (*) print -r "$var=${(Pqq)^^var}";;
esac
done >! "$_cache_dir/$_cache_ident"
else