about summary refs log tree commit diff
path: root/Completion/Core/compdump
diff options
context:
space:
mode:
Diffstat (limited to 'Completion/Core/compdump')
-rw-r--r--Completion/Core/compdump13
1 files changed, 6 insertions, 7 deletions
diff --git a/Completion/Core/compdump b/Completion/Core/compdump
index f2729acc5..b7682bd50 100644
--- a/Completion/Core/compdump
+++ b/Completion/Core/compdump
@@ -1,4 +1,4 @@
-# This is a function to dump the definitions for new-style
+# This is a file to be sourced to dump the definitions for new-style
 # completion defined by 'compinit' in the same directory.  The output
 # should be directed into the "compinit.dump" in the same directory as
 # compinit. If you rename init, just stick .dump onto the end of whatever
@@ -9,14 +9,12 @@
 # To do this, simply remove the .dump file, start a new shell, and
 # create the .dump file as before.  Again, compinit -d handles this
 # automatically.
+#
+# It relies on KSH_ARRAYS not being set.
 
 # Print the number of files used for completion. This is used in compinit
 # to see if auto-dump should re-dump the dump-file.
 
-emulate -L zsh
-
-typeset _d_file _d_f _d_bks _d_line _d_als
-
 _d_file=${compconfig[dumpfile]-${0:h}/compinit.dump}
 
 typeset -U _d_files
@@ -24,6 +22,8 @@ _d_files=( ${^~fpath}/_(|*[^~])(N:t) )
 
 print "#files: $#_d_files" > $_d_file
 
+unset _d_files
+
 # First dump the arrays _comps and _patcomps.  The quoting hieroglyphyics
 # ensure that a single quote inside a variable is itself correctly quoted.
 
@@ -88,5 +88,4 @@ done >> $_d_file
 
 print >> $_d_file
 
-unfunction compdump
-autoload -U compdump
+unset _d_line _d_zle _d_bks _d_als _d_f _f_file