Zsh Mailing List Archive
Messages sorted by: Reverse Date, Date, Thread, Author

Re: PATCH: _unexpand



On Sun, Jul 10, 2005 at 04:20:10PM +0000, Bart Schaefer wrote:
> Try "unset _cmd_variant" right after you change your path, to clear the
> _pick_variant cache.

Ya, that did it.  I guess the use of _pick_variant will work, but IMO
rehash should invalidate the cache that _pick_variant is hanging onto.
I've aliased rehash to `rehash && unset _cmd_variant', so I don't get
bit by that one again.

Here is a patch that uses _pick_variant instead:

--- /dev/null	Sun Jul 10 17:44:10 2005
+++ Completion/Unix/Command/_unexpand	Sun Jul 10 17:32:36 2005
@@ -0,0 +1,42 @@
+#compdef unexpand
+#
+# $Id:$
+#
+# Copyright (C) 2005 Travis L. Spencer
+# ALL RIGHTS RESERVED
+#
+# See the file LICENCE in the root of the zsh distribution for
+# licensing information.
+#
+
+local all tabs ret=1
+local -a args
+
+all="convert all whitespace, instead of just initial whitespace"
+tabs="use comma separated list of tab positions"
+args=( 
+    "(--all)-a[$all]"
+    "(--tabs)-t[$tabs]:tablist"
+    "*:file:_files"
+)
+
+if _pick_variant gnu="Free Soft" unix --version; then
+    args+=(
+        "(-a)--all[$all]"
+        "--first-only[convert only leading sequences of whitespace]"
+        "(-t)--tabs=[$tabs]:tablist"
+        "(* -)--help[display help message and exit]"
+        "(* -)--version[output version information and exit]"
+    )
+fi
+
+_arguments "$args[@]" && ret=0
+
+return ret
+
+: <<EMACS_LOCAL_VARIABLES
+Local Variables:
+mode: shell-script
+mode: flyspell-prog
+End:
+EMACS_LOCAL_VARIABLES



Messages sorted by: Reverse Date, Date, Thread, Author