aboutsummaryrefslogtreecommitdiffstats
path: root/examples/complete/complete.gnu-longopt
diff options
context:
space:
mode:
Diffstat (limited to 'examples/complete/complete.gnu-longopt')
-rw-r--r--examples/complete/complete.gnu-longopt43
1 files changed, 0 insertions, 43 deletions
diff --git a/examples/complete/complete.gnu-longopt b/examples/complete/complete.gnu-longopt
deleted file mode 100644
index c55b436..0000000
--- a/examples/complete/complete.gnu-longopt
+++ /dev/null
@@ -1,43 +0,0 @@
-#
-# Originally from:
-#
-#Message-ID: <3B13EC65.179451AE@wanadoo.fr>
-#Date: Tue, 29 May 2001 20:37:25 +0200
-#From: Manu Rouat <emmanuel.rouat@wanadoo.fr>
-#Subject: [bash] Universal command options completion?
-#
-#
-#In the recent versions of bash (after 2.04) programmable
-#completion is available. A useful completion function
-#is , for a particular command, to enumerate all flags
-#that can be used in the command. Now, most GNU unix
-#commands have so-called 'long options' for example:
-#
-#ls --color=always --no-group --size
-#
-#and these are all listed when you issue a '--help' flag.
-#So the idea is to use that, then parse the output of the
-#'--help' and reinject this to compgen. The basis of the
-#following 'universal' completion funtion was the _configure_func'
-#written by Ian McDonnald (or is it Chet Ramey ?)
-#A dedicated function will always be better, but this is quite
-#convenient. I chose to use 'long options' because they are
-#easy to parse and explicit too (it's the point I guess...)
-#Lots of room for improvement !
-
-_longopt_func ()
-{
- case "$2" in
- -*) ;;
- *) return ;;
- esac
-
- case "$1" in
- \~*) eval cmd=$1 ;;
- *) cmd="$1" ;;
- esac
- COMPREPLY=( $("$cmd" --help | sed -e '/--/!d' -e 's/.*--\([^ ]*\).*/--\1/'| \
-grep ^"$2" |sort -u) )
-}
-
-complete -o default -F _longopt_func ldd wget bash id info # some examples that work