about summary refs log tree commit diff
diff options
context:
space:
mode:
authorClint Adams <clint@users.sourceforge.net>2002-07-22 21:35:13 +0000
committerClint Adams <clint@users.sourceforge.net>2002-07-22 21:35:13 +0000
commit62613e6298d487f25b1b58814dabf43ee10c2d7e (patch)
tree7151dea4f2f808b0f173928485588412c9e4a5fc
parentbec76f8979d0feb4f48c7c8d14fa9f9ef4d2ea71 (diff)
downloadzsh-62613e6298d487f25b1b58814dabf43ee10c2d7e.tar.gz
zsh-62613e6298d487f25b1b58814dabf43ee10c2d7e.tar.xz
zsh-62613e6298d487f25b1b58814dabf43ee10c2d7e.zip
17476: Matt Zimmerman's completion for GNU GLOBAL.
-rw-r--r--ChangeLog5
-rw-r--r--Completion/Unix/Command/.distfiles1
-rw-r--r--Completion/Unix/Command/_global45
-rw-r--r--Completion/Unix/Command/_global_tags9
4 files changed, 60 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 83dd57dc2..38735a5d4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2002-07-22  Clint Adams  <clint@zsh.org>
 
+       * 17476: Completion/Unix/Command/.distfiles, 
+       Completion/Unix/Command/_global,
+       Completion/Unix/Command/_global_tags: Matt Zimmerman's
+       completion for GNU GLOBAL.
+
        * Akira, 17459: Completion/Unix/Command/_cvs: exclude files which have
        RCS kflags for cvs add.
 
diff --git a/Completion/Unix/Command/.distfiles b/Completion/Unix/Command/.distfiles
index 89ea955d7..0921ddaac 100644
--- a/Completion/Unix/Command/.distfiles
+++ b/Completion/Unix/Command/.distfiles
@@ -17,4 +17,5 @@ _diff         _gs           _make         _psutils      _tin	_apm  _mail
 _loadkeys     _modutils     _ruby         _samba        _sysctl       _links
 _user_admin   _rsync        _arping	  _spamassassin _mtools	      _fsh
 _chkconfig    _cdcd         _irssi	  _sccs
+_global       _global_tags
 '
diff --git a/Completion/Unix/Command/_global b/Completion/Unix/Command/_global
new file mode 100644
index 000000000..1c3bb6f41
--- /dev/null
+++ b/Completion/Unix/Command/_global
@@ -0,0 +1,45 @@
+#compdef global
+
+_arguments \
+	'(--completion)-c[completion on prefix]:prefix:' \
+	'(-c)--completion:prefix:' \
+	'(--file)-f[print function definitions in file]' \
+	'(-f)--file' \
+	'(--grep)-g[print all lines which match pattern using grep]:pattern' \
+	'(-g)--grep' \
+	'(--idutils)-I[print all lines which match pattern using id-utils]:pattern' \
+	'(-I)--idutils' \
+	'(--print-dbpath)-p[print location of GTAGS]' \
+	'(-p)--print-dbpath' \
+	'(--path)-P[print paths matching pattern]:pattern:' \
+	'(-P)--path' \
+	'(--update)-u[locate tag files and update incrementally]' \
+	'(-u)--update' \
+	'(--absolute)-a[Print absolute path names]' \
+	'(-a)--absolute' \
+	'(--ignore-case)-i[ignore case in patterns]' \
+	'(-i)--ignore-case' \
+	'(--local)-l[Print just objects which exist under the current directory]' \
+	'(-l)--local' \
+	'(--nofilter)-n[Suppress sort filter and path conversion filter]' \
+	'(-n)--nofilter' \
+	'(--other)-o[Search in other files, not just source files (with -g)]' \
+	'(-o)--other' \
+	'(--quiet)-q[Quiet mode]' \
+	'(-q)--quiet' \
+	'(--reference --rootdir)-r[Find object references instead of definitions]' \
+	'(-r --rootdir)--rereference' \
+	'(-r --reference)--rootdir' \
+	'(--symbol)-s[Find symbols instead of function names]:pattern:' \
+	'(-s)--symbol' \
+	'(--tags)-t[Output in standard ctags format]' \
+	'(-t)--tags' \
+	'(--through -s -r -l)-T[Search through all tag files in GTAGSLIBPATH]' \
+	'(-T -s -r -l)--through' \
+	'(--verbose)-v[Verbose mode]' \
+	'(-v)--verbose' \
+	'(--cxref)-x[In addition to default output, list line number and contents]' \
+	'(-x)--cxref' \
+	'--version:show version number:' \
+	'--help:show help:' \
+	':word:_global_tags'
diff --git a/Completion/Unix/Command/_global_tags b/Completion/Unix/Command/_global_tags
new file mode 100644
index 000000000..bdd01baf6
--- /dev/null
+++ b/Completion/Unix/Command/_global_tags
@@ -0,0 +1,9 @@
+#autoload
+
+local globalresults
+
+[[ -z $words[CURRENT] ]] && return 1
+
+globalresults=($(global --completion $words[CURRENT]))
+
+compadd -M 'm:{a-zA-Z}={A-Za-z}' -a "$@" - globalresults