2 # $tcsh: complete.tcsh,v 1.55 2014/09/27 07:08:45 kim Exp $
3 # example file using the new completion code
6 # /usr/share/doc/tcsh/examples/complete.gz
8 # This file may be read from user's ~/.cshrc or ~/.tcshrc file by
9 # decompressing it into the home directory as ~/.complete and
10 # then adding the line "source ~/.complete" and maybe defining
11 # some of the shell variables described below.
13 # Added two Debian-specific completions: dpkg and dpkg-deb (who
14 # wrote them?). Changed completions of several commands. The ones
15 # are evaluated if the `traditional_complete' shell variable is
18 # Debian enhancements by Vadim Vygonets <vadik@cs.huji.ac.il>.
19 # Bugfixes and apt completions by Miklos Quartus <miklos.quartus@nokia.com>.
20 # Cleanup by Martin A. Godisch <martin@godisch.de>.
23 if ( ! $?prompt ) goto end
26 if ( $tcsh != 1 ) then
29 if ( $rev > 6 ||
( $rev > 5 && $rel > 1 ) ) then
36 if ( ! $?_has_complete ) goto end
38 if ( ! $?noglob ) set noglob _unset_noglob
40 # Old TCSH versions don't define OSTYPE.
41 # Use a close approximation instead.
43 if ( ! $?OSTYPE ) then
44 setenv OSTYPE `echo
"$HOSTTYPE" | sed -e 's/^(i[3456]86|(amd|x86_)64)-//'`
47 if ( ! $?hosts ) set hosts
49 foreach f ( "$HOME/."{,r,ssh/known_}hosts* \
50 /usr
/local
/etc
/csh.hosts
/etc
/hosts.equiv
)
52 set hosts=($hosts `sed \
56 -e 's/[[:space:]].*//' \
58 | sed
-e
'/^[.:[:xdigit:][:space:]]*$/d'`)
63 if ( -r "$HOME/.netrc" ) then
64 set hosts=($hosts `awk '$1 == "machine" { print
$2 }' "$HOME/.netrc"`)
67 set hosts=(`echo $hosts | tr ' ' '\012' | sort -u`)
70 # This is just a hint for the user.
71 set hosts=(ftp.funet.fi ftp.gnu.org ftp.uu.net)
74 complete ywho n/*/\$hosts/ # argument from list in $hosts
75 complete rsh p/1/\$hosts/ c/-/"(l n)"/ n/-l/u/ N/-l/c/ n/-/c/ p/2/c/ p/*/f/
76 complete ssh p/1/\$hosts/ c/-/"(l n)"/ n/-l/u/ N/-l/c/ n/-/c/ p/2/c/ p/*/f/
77 complete xrsh p/1/\$hosts/ c/-/"(l 8 e)"/ n/-l/u/ N/-l/c/ n/-/c/ p/2/c/ p/*/f/
78 complete rlogin p/1/\$hosts/ c/-/"(l 8 e)"/ n/-l/u/
79 complete telnet p/1/\$hosts/ p/2/x:'<port
>'/ n/*/n/
81 complete cd p/1/d/ # Directories only
87 complete complete p/1/X/ # Completions only
88 complete uncomplete n/*/X/
89 complete exec p/1/c/ # Commands only
91 complete strace p/1/c/
96 complete adb c/-I/d/ n/-/c/ N/-/"(core)"/ p/1/c/ p/2/"(core)"/
98 complete dbx c/-I/d/ n/-/c/ N/-/"(core)"/ p/1/c/ p/2/"(core)"/
100 complete gdb n/-d/d/ n/*/c/
102 complete set 'c
/*=/f
/' 'p
/1/s
/=' 'n
/=/f
/'
103 complete unset n/*/s/
104 complete alias p/1/a/ # only aliases are valid
105 complete unalias n/*/a/
106 complete xdvi n/*/f:*.dvi/
107 complete dvips n/*/f:*.dvi/
108 complete tex n/*/f:*.{tex,texi}/
109 complete latex n/*/f:*.{tex,ltx}/
112 c/--/"(login fast preserve-environment command shell help version)"/ \
113 c/-/"(f l m p c s -)"/ \
114 n/{-c,--command}/c/ \
115 n@{-s,--shell}@'`cat
/etc
/shells`
'@ \
119 c@-l@'`\ls
-1 /usr
/lib
/lib
*.a | sed s
%^.\
*/lib
%%\
;s
%\\.a\
$%%`'@ \
120 c
/-/"(o l c g L I D U)"/ n
/*/f
:*.
[coasi
]/
123 c@-l
@'`\ls -1 /usr/lang/SC1.0/lib*.a | sed s%^.\*/lib%%\;s%\\.a\$%%`'@ \
124 c/-/"(o l c g L I D U)"/ n/*/f:*.[coasi]/
127 c/-f/"(caller-saves cse-follow-jumps delayed-branch elide-constructors \
128 expensive-optimizations float-store force-addr force-mem inline \
129 inline-functions keep-inline-functions memoize-lookups \
130 no-default-inline no-defer-pop no-function-cse omit-frame-pointer \
131 rerun-cse-after-loop schedule-insns schedule-insns2 strength-reduce \
132 thread-jumps unroll-all-loops unroll-loops syntax-only all-virtual \
133 cond-mismatch dollars-in-identifiers enum-int-equiv no-asm no-builtin \
134 no-strict-prototype signed-bitfields signed-char this-is-variable \
135 unsigned-bitfields unsigned-char writable-strings call-saved-reg \
136 call-used-reg fixed-reg no-common no-gnu-binutils nonnull-objects \
137 pcc-struct-return pic PIC shared-data short-enums short-double \
139 c/-W/"(all aggregate-return cast-align cast-qual comment conversion \
140 enum-clash error format id-clash-len implicit missing-prototypes \
141 no-parentheses pointer-arith return-type shadow strict-prototypes \
142 switch uninitialized unused write-strings)"/ \
143 c/-m/"(68000 68020 68881 bitfield fpa nobitfield rtd short c68000 c68020 \
144 soft-float g gnu unix fpu no-epilogue)"/ \
146 c/-/"(f W vspec v vpath ansi traditional traditional-cpp trigraphs pedantic \
147 x o l c g L I D U O O2 C E H B b V M MD MM i dynamic nodtdlib static \
150 n/*/f:*.{c,C,cc,o,a,s,i}/
151 complete g++ n/*/f:*.{C,cc,o,s,i}/
152 complete CC n/*/f:*.{C,cc,cpp,o,s,i}/
154 c/--/"(directory force interactive verbose recursive help version)"/ \
155 c/-/"(d f i v r R -)"/ \
156 n/*/f:^*.{c,cc,C,h,in}/
157 # Protect precious files
158 complete vi n/*/f:^*.[oa]/
160 N/-a/b/ N/-c/c/ n/-[ascr]/'x
:<key-sequence
>'/ \
161 n/-[svedlr]/n/ c/-[vedl]/n/ c/-/"(a s k c v e d l r)"/ \
162 n/-k/"(left right up down)"/ p/2-/b/ \
163 p/1/'x
:<key-sequence or option
>'/
166 n/-fstype/"(nfs 4.2)"/ \
168 n/-type/"(c b d f p l s)"/ \
176 c/-/"(fstype name perm prune type user nouser group nogroup size inum \
177 atime mtime ctime exec ok print ls cpio ncpio newer xdev depth \
178 daystart follow maxdepth mindepth noleaf version anewer cnewer \
179 amin cmin mmin true false uid gid ilname iname ipath iregex links \
180 lname empty path regex used xtype fprint fprint0 fprintf print0 \
181 printf not a and o or)"/ \
184 complete -%* c/%/j/ # fill in the jobs builtin
185 complete {fg,bg,stop} c/%/j/ p/1/"(%)"//
187 complete limit c/-/"(h)"/ n/*/l/
188 complete unlimit c/-/"(h)"/ n/*/l/
190 #complete -co* p/0/"(compress)"/ # make compress completion
193 # "zcat" may be linked to "compress" or "gzip"
195 zcat --version >& /dev/null
196 if ($status != 0) then
197 complete zcat n/*/f:*.Z/
199 complete zcat c/--/"(force help license quiet version)"/ \
200 c/-/"(f h L q V -)"/ \
201 n/*/f:*.{gz,Z,z,zip}/
205 complete finger c/*@/\$hosts/ n/*/u/@
206 complete ping p/1/\$hosts/
207 complete traceroute p/1/\$hosts/
209 complete {talk,ntalk,phone} \
210 p/1/'`users | tr
" " "\012" | uniq`
'/ \
211 n/*/\`who\ \|\ grep\ \$:1\ \|\ awk\ \'\{\ print\ \$2\ \}\'\`/
213 complete ftp c/-/"(d i g n v)"/ n/-/\$hosts/ p/1/\$hosts/ n/*/n/
215 # this one is simple...
216 #complete rcp c/*:/f/ C@[./\$~]*@f@ n/*/\$hosts/:
217 # From Michael Schroeder <mlschroe@immd4.informatik.uni-erlangen.de>
218 # This one will rsh to the file to fetch the list of files!
219 complete rcp 'c
%*@*:%`
set q
=$:-0;set q
="$q:s/@/ /";set q
="$q:s/:/ /";set q
=($q " ");rsh
$q[2] -l
$q[1] ls
-dp
$q[3]\*`%' 'c%*:%`set q=$:-0;set q="$q:s/:/ /";set q=($q " ");rsh $q[1] ls -dp $q[2]\*`%' 'c
%*@%$hosts%:' 'C@[./$~]*@f@' 'n
/*/$hosts/:'
222 c
/--/"(help version)"/ c
/[io
]f
=/f
/ \
223 c
/conv
=*,/"(ascii ebcdic ibm block unblock \
224 lcase notrunc ucase swab noerror sync)"/,\
225 c
/conv
=/"(ascii ebcdic ibm block unblock \
226 lcase notrunc ucase swab noerror sync)"/,\
228 n
/*/"(if of conv ibs obs bs cbs files skip file seek count)"/=
230 complete nslookup p
/1/x
:'<host>'/ p
/2/\
$hosts/
233 c
/[dmpqrtx
]/"(c l o u v a b i)"/ \
234 p
/1/"(d m p q r t x)"// \
238 # these should be merged with the MH completion hacks below - jgotts
239 complete {refile
,sprev
,snext
,scan
,pick
,rmm
,inc
,folder
,show
} \
242 # these and interrupt handling from Jaap Vermeulen <jaap@sequent.com>
243 complete {rexec,rxexec,rxterm,rmterm} \
253 'n/*/`ps -u $LOGNAME | awk '"'"'{print
$1}'"'"'`/'
255 # these from Marc Horowitz <marc@cam.ov.com>
259 'n/-type/(afs nfs rvd ufs)/' \
260 'n/-t/(afs nfs rvd ufs)/' \
263 'c/-/(verbose quiet force printpath lookup debug map nomap remap zephyr \
264 nozephyr readonly write mountpoint noexplicit explicit type \
265 mountoptions nosetuid setuid override skipfsck lock user host)/' \
270 'p/2/(passwd group uid grplist pcap pobox cluster filsys sloc service)/'
272 complete .
/configure \
273 'c@--{prefix,exec-prefix,bindir,sbindir,libexecdir,datadir,sysconfdir,sharedstatedir,localstatedir,infodir,mandir,srcdir,x-includes,x-libraries}=*@x:<directory e.g. /usr/local>'@ \
274 'c/--cachefile=*/x:<filename>/' \
275 'c/--{enable,disable,with}-*/x:<feature>//' \
276 'c/--*=/x:<directory>//' \
277 'c/--/(prefix= exec-prefix= bindir= sbindir= libexecdir= datadir= \
278 sysconfdir= sharedstatedir= localstatedir= infodir= mandir= \
279 srcdir= x-includes= x-libraries= cachefile= enable- disable- \
280 with- help no-create quiet silent version verbose )//'
283 'c/-sDEVICE=/(x11 cdjmono cdj550 epson eps9high epsonc dfaxhigh dfaxlow \
284 laserjet ljet4 sparc pbm pbmraw pgm pgmraw ppm ppmraw bit)/' \
285 'c/-sOutputFile=/f/' 'c/-s/(DEVICE OutputFile)/=' \
286 'c/-d/(NODISPLAY NOPLATFONTS NOPAUSE)/' 'n/*/f/'
287 complete perl
'n/-S/c/'
289 p
/1/"(admin cdc check clean comb deledit delget delta diffs edit enter \
290 fix get help info print prs prt rmdel sccsdiff tell unedit unget \
293 complete printenv 'n/*/e/'
294 complete setenv 'p/1/e/' 'c/*:/f/'
296 # these and method of setting hosts from Kimmo Suominen <kim@tac.nyc.ny.us>
297 if ( -f
"$HOME/.mh_profile" && -X folders ) then
298 if ( ! $?FOLDERS ) setenv FOLDERS "`folders
-fast
-recurse`
"
299 if ( ! $?MHA ) setenv MHA "`ali | sed
-e
'/^ /d' -e
's/:.*//'`
"
301 set folders = ( $FOLDERS )
305 'c/-/(alias nolist list nonormalize normalize nouser user help)/' \
309 'c/-/(component noinplace inplace nodate date text help)/' \
311 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
314 'c/-/(noinplace inplace noquiet quiet noverbose verbose help)/' \
316 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
319 'c/-/(draftfolder draftmessage nodraftfolder editor noedit file form nouse use whatnowproc nowhatnowproc help)/' \
321 'n,-whatnowproc,c,' \
324 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
327 'c/-/(noannotate annotate draftfolder draftmessage nodraftfolder editor noedit form noinplace inplace whatnowproc nowhatnowproc help)/' \
329 'n,-whatnowproc,c,' \
331 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
334 'c/-/(all nofast fast noheader header nopack pack noverbose verbose norecurse recurse nototal total noprint print nolist list push pop help)/' \
336 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
339 'c/-/(all nofast fast noheader header nopack pack noverbose verbose norecurse recurse nototal total noprint print nolist list push pop help)/' \
341 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
344 'c/-/(noannotate annotate draftfolder draftmessage nodraftfolder editor noedit filter form noformat format noinplace inplace digest issue volume whatnowproc nowhatnowproc help)/' \
346 'n,-whatnowproc,c,' \
349 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
352 'c/-/(audit file noaudit nochangecur changecur file form format nosilent silent notruncate truncate width help)/' \
358 'c/-/(add delete list sequence nopublic public nozero zero help)/' \
360 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
363 'c/-/(body cc from subject help)/' \
371 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
374 'c/-/(nodate date nonotify notify help)/'
377 'c/-/(prompt noscan scan notopcur topcur help)/'
380 'c/-/(draft form moreproc nomoreproc length width showproc noshowproc header noheader help)/' \
389 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
392 'c/-/(and or not lbrace rbrace cc date from search subject to othercomponent after before datefield sequence nopublic public nozero zero nolist list help)/' \
394 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
397 'c/-/(draft form moreproc nomoreproc length width showproc noshowproc header noheader help)/' \
404 'c/-/(erase kill noprepend prepend norapid rapid nodoteof doteof help)/'
407 'c/-/(draft nolink link nopreserve preserve src file help)/' \
410 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
413 'c/-/(nointeractive interactive help)/' \
419 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
422 'c/-/(noclear clear form format noheader header width noreverse reverse file help)/' \
426 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
429 'c/-/(alias draft draftfolder draftmessage nodraftfolder filter nofilter noformat format noforward forward nomsgid msgid nopush push noverbose verbose nowatch watch width help)/' \
434 'c/-/(draft form moreproc nomoreproc length width showproc noshowproc header noheader help)/' \
439 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
442 'c/-/(datefield textfield notextfield limit nolimit noverbose verbose help)/' \
444 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
447 'c/-/(prompt vmhproc novmhproc help)/' \
451 'c/-/(draftfolder draftmessage nodraftfolder editor noedit prompt help)/'
454 'c/-/(alias nocheck check draft draftfolder draftmessage nodraftfolder help)/' \
460 'n,*,`(mark | sed "s
/:.
*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,'
468 #from Dan Nicolaescu <dann@ics.uci.edu>
469 if ( $?MODULESHOME ) then
471 'find ${MODULEPATH:as/:/ /} -name .version -o -name .modulea\* -prune \
472 -o -print | sed `echo "-e s
@${MODULEPATH:as%:%/\*@@g -e s
@%}/\
*@@g
"`'
474 'p%1%(add load unload switch display avail use unuse update purge list \
475 clear help initadd initrm initswitch initlist initclear)%' \
476 'n%{unl*,sw*,inits*}%`echo "$LOADEDMODULES:as/:/ /"`%' \
477 'n%{lo*,di*,he*,inita*,initr*}%`eval Compl_module`%' \
478 'N%{sw*,initsw*}%`eval Compl_module`%' \
480 'n%{use,unu*,av*}%d%' \
482 'C%[^-]*%`eval Compl_module`%'
486 complete acroread 'p/*/f:*.{pdf,PDF}/'
487 complete apachectl 'c/*/(start stop restart fullstatus status graceful \
489 complete appletviewer 'p/*/f:*.class/'
490 complete bison 'c/--/(debug defines file-prefix= fixed-output-files \
491 help name-prefix= no-lines no-parser output= \
492 token-table verbose version yacc)/' \
493 'c/-/(b d h k l n o p t v y V)/' \
494 'n/-b/f/' 'n/-o/f/' 'n/-p/f/'
495 complete bzcat c/--/"(help test quiet verbose license version
)"/ \
496 c/-/"(h t L V
-)"/ n/*/f:*.{bz2,tbz}/
497 complete bunzip2 c/--/"(help keep force test stdout quiet verbose \
499 c/-/"(h k f t c q v L V
-)"/ \
501 complete bzip2 c/--/"(help decompress compress keep force test \
502 stdout quiet verbose license version small
)"/ \
503 c/-/"(h d z k f t c q v L V s
1 2 3 4 5 6 7 8 9 -)"/ \
504 n/{-d,--decompress}/f:*.{bz2,tbz}/ \
505 N/{-d,--decompress}/f:*.{bz2,tbz}/ n/*/f:^*.{bz2,tbz}/
506 complete c++ 'p/*/f:*.{c++,cxx,c,cc,C,cpp}/'
507 complete co 'p@1@`\ls -1a RCS | sed -e "s
/\
(.
*\
),v
/\
1/"`@'
508 complete crontab 'n/-u/u/'
509 complete camcontrol 'p/1/(cmd debug defects devlist eject inquiry \
510 modepage negotiate periphlist rescan reset \
511 start stop tags tur)/'
512 complete ctlinnd 'p/1/(addhist allow begin cancel changegroup \
513 checkfile drop feedinfo flush flushlogs go \
514 hangup logmode mode name newgroup param pause \
515 readers refile reject reload renumber reserve \
516 rmgroup send shutdown kill throttle trace \
518 complete cvs 'c/--/(help help-commands help-synonyms)/' \
519 'p/1/(add admin annotate checkout commit diff edit \
520 editors export history import init log login \
521 logout rdiff release remove rtag status tag \
522 unedit update watch watchers)/' \
523 'n/-a/(edit unedit commit all none)/' \
524 'n/watch/(on off add remove)/'
525 complete svn 'C@file:///@`'"${HOME}/etc/tcsh/complete.d/svn"'`@@' \
526 'n@ls@(file:/// svn+ssh:// svn://)@@' \
527 'n@help@(add blame cat checkout cleanup commit copy \
528 delete export help import info list ls \
529 lock log merge mkdir move propdel propedit \
530 propget proplist propset resolved revert \
531 status switch unlock update)@' \
532 'p@1@(add blame cat checkout cleanup commit copy \
533 delete export help import info list ls lock \
534 log merge mkdir move propdel propedit propget \
535 proplist propset resolved revert status switch \
538 complete cxx
'p/*/f:*.{c++,cxx,c,cc,C,cpp}/'
539 complete detex
'p/*/f:*.tex/'
540 complete edquota
'n/*/u/'
541 complete exec 'p/1/c/'
542 complete ghostview
'p/*/f:*.ps/'
543 complete gv
'p/*/f:*.ps/'
544 complete ifconfig
'p@1@`ifconfig -l`@' \
545 'n/*/(range phase link netmask mtu vlandev vlan \
546 metric mediaopt down delete broadcast arp debug)/'
547 complete imake
'c/-I/d/'
548 complete ipfw
'p/1/(flush add delete list show zero)/' \
549 'n/add/(allow permit accept pass deny drop reject \
550 reset count skipto num divert port tee port)/'
551 complete javac
'p/*/f:*.java/'
552 complete ldif2ldbm
'n/-i/f:*.ldif/'
553 complete libtool
'c/--mode=/(compile execute finish install link \
555 'c/--/(config debug dry-run features finish help \
556 quiet silent version mode=)/'
557 complete libtoolize
'c/--/(automake copy debug dry-run force help ltdl \
559 complete links
'c/-/(assume-codepage async-dns download-dir \
560 format-cache-size ftp-proxy help http-proxy \
561 max-connections max-connections-to-host \
562 memory-cache-size receive-timeout retries \
563 unrestartable-receive-timeout version)/'
564 complete natd c
/-/'(alias_address config deny_incoming dynamic \
565 inport interface log log_denied log_facility \
566 outport outport port pptpalias proxy_only \
567 proxy_rule redirect_address redirect_port \
568 reverse same_ports unregistered_only use_sockets \
570 'n@-interface@`ifconfig -l`@'
571 complete netstat
'n@-I@`ifconfig -l`@'
572 complete objdump
'c/--/(adjust-vma= all-headers architecture= \
573 archive-headers debugging demangle disassemble \
574 disassemble-all disassemble-zeroes dynamic-reloc \
575 dynamic-syms endian= file-headers full-contents \
576 headers help info line-numbers no-show-raw-insn \
577 prefix-addresses private-headers reloc \
578 section-headers section=source stabs \
579 start-address= stop-address= syms target= \
581 'c/-/(a h i f C d D p r R t T x s S l w)/'
582 complete xmodmap
'c/-/(display help grammar verbose quiet n e pm pk \
584 complete lynx
'c/-/(accept_all_cookies anonymous assume_charset= \
585 assume_local_charset= assume_unrec_charset= \
586 auth= base book buried_news cache= case cfg= \
587 child cookie_file= cookies core crawl \
588 debug_partial display= dump editor= emacskeys \
589 enable_scrollback error_file= force_html \
590 force_secure forms_options from ftp get_data \
591 head help hiddenlinks= historical homepage= \
592 image_links index= ismap link= localhost \
593 mime_header minimal newschunksize= \
594 newsmaxchunk= nobrowse nocc nocolor \
595 nofilereferer nolist nolog nopause noprint \
596 noredir noreferer nostatus number_links \
597 partial partial_thres pauth= popup post_data \
598 preparsed print pseudo_inlines raw realm \
599 reload restrictions= resubmit_posts rlogin \
600 selective show_cursor soft_dquotes source \
601 stack_dump startfile_ok tagsoup telnet term= \
602 tlog trace traversal underscore useragent= \
603 validate verbose version vikeys width=)/' \
604 'c/(http|ftp)/$URLS/'
605 complete gmake 'c
/{--directory
=,--include-dir
=}/d
/' \
606 'c
/{--assume-new
,--assume-old
,--makefile
,--new-file
,--what-if
,--file
}/f
/' \
607 'c
/--/(assume-new
= assume-old
= debug directory
= \
608 dry-run environment-overrides file
= help \
609 ignore-errors include-dir
= jobs[=N
] just-print \
610 keep-going load-average
[=N
] makefile
= \
611 max-load
[=N
] new-file
= no-builtin-rules \
612 no-keep-going no-print-directory old-file
= \
613 print-data-base print-directory question quiet \
614 recon silent
stop touch version \
615 warn-undefined-variables what-if
=)/' \
616 'n
@*@`cat
-s GNUMakefile Makefile makefile |
& sed
-n
-e
"/No such file/d" -e
"s/^\([A-Za-z0-9-]*\):.*/\1/p"`
@' \
619 complete mixer p/1/'(vol bass treble synth pcm speaker mic cd mix \
620 pcm2 rec igain ogain line1 line2 line3
)'/ \
621 p@2@'`mixer
$:-1 | awk \
{\ print\ \
$7\ \
}`
'@
623 complete mpg123 'c
/--/(2to1
4to1
8bit aggressive au audiodevice auth \
624 buffer cdr check doublespeed equalizer frames \
625 gain halfspeed headphones left lineout list \
626 mix mono proxy quiet random rate reopen resync \
627 right scale shuffle single0 single1 skip \
628 speaker stdout stereo test verbose wav
)/'
629 complete mysqladmin 'n
/*/(create drop extended-status flush-hosts \
630 flush-logs flush-status flush-tables \
631 flush-privileges
kill password ping \
632 processlist reload refresh shutdown status \
636 "c@-f=@F:${HOME}/Mail/@" \
640 n/-s/x:'<subject line
>'/ \
641 n/-e/x:'<command
>'/ \
642 n@-b@'`cat
"${HOME}/.muttrc-alias" | awk '"'"'{print
$2 }'"'"\`@ \
643 n@-c@'`cat "${HOME}/.muttrc-alias" | awk
'"'"'{print $2 }'"'"\`@ \
644 n@*@'`cat
"${HOME}/.muttrc-alias" | awk '"'"'{print
$2 }'"'"\`@
646 complete ndc 'n/*/(status dumpdb reload stats trace notrace \
647 querylog start stop restart )/'
650 'c/--radix=/x:<radix: _o_ctal _d_ecimal he_x_adecimal>/' \
651 'c/--target=/x:<bfdname>/' \
652 'c/--format=/(bsd sysv posix)/n/' \
653 'c/--/(debugsyms extern-only demangle dynamic print-armap \
654 print-file-name numeric-sort no-sort reverse-sort \
655 size-sort undefined-only portability target= radix= \
656 format= defined-only\ line-numbers no-demangle version \
658 'n/*/f:^*.{h,c,cc,s,S}/'
660 complete nmap 'n@-e@`ifconfig -l`@' 'p/*/$hostnames/'
661 complete perldoc 'n@*@`\ls -1 /usr/libdata/perl/5.*/pod | sed s%\\.pod.\*\$%%`@'
662 complete postfix 'n/*/(start stop reload abort flush check)/'
663 complete postmap 'n/1/(hash: regexp:)/' 'c/hash:/f/' 'c/regexp:/f/'
664 complete rcsdiff 'p@1@`\ls -1a RCS | sed -e "s
/\
(.
*\
),v
/\
1/"`@'
665 complete X 'c/-/(I a ac allowMouseOpenFail allowNonLocalModInDev \
666 allowNonLocalXvidtune ar1 ar2 audit auth bestRefresh \
667 bgamma bpp broadcast bs c cc class co core deferglyphs \
668 disableModInDev disableVidMode displayID dpi dpms f fc \
669 flipPixels fn fp gamma ggamma help indirect kb keeptty \
670 ld lf logo ls nolisten string noloadxkb nolock nopn \
671 once p pn port probeonly query quiet r rgamma s \
672 showconfig sp su t terminate to tst v verbose version \
673 weight wm x xkbdb xkbmap)/'
674 complete users 'c/--/(help version)/' 'p/1/x:"<accounting_file
>"/'
675 complete vidcontrol 'p/1/(132x25 132x30 132x43 132x50 132x60 40x25 80x25 \
676 80x30 80x43 80x50 80x60 EGA_80x25 EGA_80x43 \
677 VESA_132x25 VESA_132x30 VESA_132x43 VESA_132x50 \
678 VESA_132x60 VESA_800x600 VGA_320x200 VGA_40x25 \
679 VGA_80x25 VGA_80x30 VGA_80x50 VGA_80x60)/'
680 complete vim 'n/*/f:^*.[oa]/'
681 complete where 'n/*/c/'
682 complete which 'n/*/c/'
683 complete wmsetbg 'c/-/(display D S a b c d e m p s t u w)/' \
684 'c/--/(back-color center colors dither help match \
685 maxscale parse scale smooth tile update-domain \
686 update-wmaker version workspace)/'
687 complete xdb 'p/1/c/'
688 complete xdvi 'c/-/(allowshell debug display expert gamma hushchars \
689 hushchecksums hushspecials install interpreter keep \
690 margins nogrey noinstall nomakepk noscan paper safer \
691 shrinkbuttonn thorough topmargin underlink version)/' \
692 'n/-paper/(a4 a4r a5 a5r)/' 'p/*/f:*.dvi/'
693 complete xlock 'c/-/(allowaccess allowroot debug description \
694 echokeys enablesaver grabmouse grabserver hide inroot \
695 install inwindow mono mousemotion nolock remote \
696 resetsaver sound timeelapsed use3d usefirst verbose \
697 wireframe background batchcount bg bitmap both3d \
698 count cycles delay delta3d display dpmsoff \
699 dpmsstandby dpmssuspend endCmd erasedelay erasemode \
700 erasetime fg font foreground geometry help \
701 icongeometry info invalid left3d lockdelay logoutCmd \
702 mailCmd mailIcon message messagefile messagefont \
703 messagesfile mode name ncolors nice nomailIcon none3d \
704 parent password planfont program resources right3d \
705 saturation size startCmd timeout username validate \
706 version visual)/' 'n/-mode/(ant atlantis ball bat \
707 blot bouboule bounce braid bubble bubble3d bug cage \
708 cartoon clock coral crystal daisy dclock decay deco \
709 demon dilemma discrete drift eyes fadeplot flag flame \
710 flow forest galaxy gears goop grav helix hop hyper \
711 ico ifs image invert julia kaleid kumppa lament laser \
712 life life1d life3d lightning lisa lissie loop lyapunov \
713 mandelbrot marquee matrix maze moebius morph3d \
714 mountain munch nose pacman penrose petal pipes puzzle \
715 pyro qix roll rotor rubik shape sierpinski slip sphere \
716 spiral spline sproingies stairs star starfish strange \
717 superquadrics swarm swirl tetris thornbird triangle \
718 tube turtle vines voters wator wire world worm xjack \
720 complete xfig 'c/-/(display)/' 'p/*/f:*.fig/'
721 complete wget c/--/"(accept
= append-output
= background cache
= \
722 continue convert-links cut-dirs
= debug \
723 delete-after directory-prefix
= domains
= \
724 dont-remove-listing dot-style
= exclude-directories
= \
725 exclude-domains
= execute
= follow-ftp \
726 force-directories force-html
glob= header
= help \
727 http-passwd
= http-user
= ignore-length \
728 include-directories
= input-file
= level
= mirror \
729 no-clobber no-directories no-host-directories \
730 no-host-lookup no-parent non-verbose \
731 output-document
= output-file
= passive-ftp \
732 proxy-passwd
= proxy-user
= proxy
= quiet quota
= \
733 recursive reject
= relative retr-symlinks save-headers \
734 server-response span-hosts spider timeout
= \
735 timestamping tries
= user-agent
= verbose version
wait=)"/
737 # these from Tom Warzeka <tom@waz.cc>
739 # this one works but is slow and doesn't descend into subdirectories
740 # complete cd C@[./\$~]*@d@ \
741 # p@1@'`\ls -1F . $cdpath | grep /\$ | sort -u`'@ n@*@n@
743 if ( -r /etc/shells ) then
744 complete setenv p@1@e@ n@DISPLAY@\$hosts@: n@SHELL@'`cat /etc/shells`'@
746 complete setenv p@1@e@ n@DISPLAY@\$hosts@:
748 complete unsetenv n/*/e/
750 set _maildir = /var/mail
751 if (-r "$HOME/.mailrc") then
752 complete mail c
/-/"(e i f n s u v)"/ c
/*@/\
$hosts/ \
753 "c@+@F:$HOME/Mail@" C@[./\$~]@f@ n/-s/x:'<subject>'/ \
754 n@-u@T:$_maildir@ n/-f/f/ \
755 n@*@'`sed -n s/alias//p "$HOME/.mailrc" | \
756 tr
-s
" " " " | cut
-f
2`
'@
758 complete mail c/-/"(e i f n s u v)"/ c/*@/\$hosts/ \
759 "c@+@F:$HOME/Mail@" C@[./\$~]@f@ n/-s/x:'<subject
>'/ \
760 n@-u@T:$_maildir@ n/-f/f/ n/*/u/
764 if (! $?MANPATH) then
765 if (-r /usr/share/man) then
766 setenv MANPATH /usr/share/man:
768 setenv MANPATH /usr/man:
772 if ($?traditional_complete) then
773 # use of $MANPATH from Dan Nicolaescu <dann@ics.uci.edu>
774 # use of 'find
' adapted from Lubomir Host <host8@kepler.fmph.uniba.sk>
776 'n@1
@`
set q
= "$MANPATH:as%:%/man1 %" ; \ls
-1 $q |
& sed
-e s
%^.\
*:.\
*\
$%% -e s
%\\.1.\
*\
$%%`@'\
777 'n@2@`set q = "$MANPATH:as%:%/man2 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.2.\*\$%%`@'\
778 'n@3
@`
set q
= "$MANPATH:as%:%/man3 %" ; \ls
-1 $q |
& sed
-e s
%^.\
*:.\
*\
$%% -e s
%\\.3.\
*\
$%%`@'\
779 'n@4@`set q = "$MANPATH:as%:%/man4 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.4.\*\$%%`@'\
780 'n@5
@`
set q
= "$MANPATH:as%:%/man5 %" ; \ls
-1 $q |
& sed
-e s
%^.\
*:.\
*\
$%% -e s
%\\.5.\
*\
$%%`@'\
781 'n@6@`set q = "$MANPATH:as%:%/man6 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.6.\*\$%%`@'\
782 'n@7
@`
set q
= "$MANPATH:as%:%/man7 %" ; \ls
-1 $q |
& sed
-e s
%^.\
*:.\
*\
$%% -e s
%\\.7.\
*\
$%%`@'\
783 'n@8@`set q = "$MANPATH:as%:%/man8 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.8.\*\$%%`@'\
784 'n@9
@`
set q
= "$MANPATH:as%:%/man9 %" ; \ls
-1 $q |
& sed
-e s
%^.\
*:.\
*\
$%% -e s
%\\.9.\
*\
$%%`@'\
785 'n@0@`set q = "$MANPATH:as%:%/man0 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.0.\*\$%%`@'\
786 'n@n
@`
set q
= "$MANPATH:as%:%/mann %" ; \ls
-1 $q |
& sed
-e s
%^.\
*:.\
*\
$%% -e s
%\\.n.\
*\
$%%`@'\
787 'n@o@`set q = "$MANPATH:as%:%/mano %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.o.\*\$%%`@'\
788 'n@l
@`
set q
= "$MANPATH:as%:%/manl %" ; \ls
-1 $q |
& sed
-e s
%^.\
*:.\
*\
$%% -e s
%\\.l.\
*\
$%%`@'\
789 'n@p@`set q = "$MANPATH:as%:%/manp %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.p.\*\$%%`@'\
790 c@-@"(- f k M P s S t)"@ n@-f@c@ n@-k@x:'<keyword
>'@ n@-[MP]@d@ \
791 'N@-
[MP
]@`\ls
-1 $:-1/man? |
& sed
-n s
%\\..
\\+\
$%%p`@' \
792 'n@-[sS]@`\ls -1 $MANPATH:as%:% % |& sed -n s%^man%%p | sort -u`@'\
793 'n@*@`find $MANPATH:as%:% % \( -type f -o -type l \) -printf "%f " |& sed -e "s%find: .*: No such file or directory%%" -e "s%\([^\.]\+\)\.\([^ ]*\) %\1 %g"`@'
794 #n@*@c@ # old way -- commands only
796 complete man n@1
@'`\ls -1 /usr/man/man1 | sed s%\\.1.\*\$%%`'@ \
797 n@2@'`\ls
-1 /usr
/man
/man2 | sed s
%\\.2.\
*\
$%%`'@ \
798 n@3
@'`\ls -1 /usr/man/man3 | sed s%\\.3.\*\$%%`'@ \
799 n@4@'`\ls
-1 /usr
/man
/man4 | sed s
%\\.4.\
*\
$%%`'@ \
800 n@5
@'`\ls -1 /usr/man/man5 | sed s%\\.5.\*\$%%`'@ \
801 n@6@'`\ls
-1 /usr
/man
/man6 | sed s
%\\.6.\
*\
$%%`'@ \
802 n@7
@'`\ls -1 /usr/man/man7 | sed s%\\.7.\*\$%%`'@ \
803 n@8@'`\ls
-1 /usr
/man
/man8 | sed s
%\\.8.\
*\
$%%`'@ \
804 n@9
@'`[ -r /usr/man/man9 ] && \ls -1 /usr/man/man9 | sed s%\\.9.\*\$%%`'@ \
805 n@0@'`
[ -r
/usr
/man
/man0
] && \ls
-1 /usr
/man
/man0 | sed s
%\\.0.\
*\
$%%`'@ \
806 n@new
@'`[ -r /usr/man/mann ] && \ls -1 /usr/man/mann | sed s%\\.n.\*\$%%`'@ \
807 n@old@'`
[ -r
/usr
/man
/mano
] && \ls
-1 /usr
/man
/mano | sed s
%\\.o.\
*\
$%%`'@ \
808 n@local
@'`[ -r /usr/man/manl ] && \ls -1 /usr/man/manl | sed s%\\.l.\*\$%%`'@ \
809 n@public@'`
[ -r
/usr
/man
/manp
]&& \ls
-1 /usr
/man
/manp | sed s
%\\.p.\
*\
$%%`'@ \
810 c
/-/"(- f k P s t)"/ n
/-f
/c
/ n
/-k
/x
:'<keyword>'/ n
/-P
/d
/ \
811 N@-P
@'`\ls -1 $:-1/man? | sed s%\\..\*\$%%`'@ n/*/c/
814 complete ps c/-t/x:'<tty
>'/ c/-/"(a c C e g k l S t u v w x)"/ \
815 n/-k/x:'<kernel
>'/ N/-k/x:'<core_file
>'/ n/*/x:'<PID
>'/
816 complete compress c/-/"(c f v b)"/ n/-b/x:'<max_bits
>'/ n/*/f:^*.Z/
817 complete uncompress c/-/"(c f v)"/ n/*/f:*.Z/
819 complete uuencode p/1/f/ p/2/x:'<decode_pathname
>'/ n/*/n/
820 complete uudecode c/-/"(f)"/ n/-f/f:*.{uu,UU}/ p/1/f:*.{uu,UU}/ n/*/n/
822 complete xhost c/[+-]/\$hosts/ n/*/\$hosts/
823 complete xpdf c/-/"(z g remote raise quit cmap rgb papercolor \
824 eucjp t1lib freetype ps paperw paperh level1 \
825 upw fullscreen cmd q v h help)"/ \
826 n/-z/x:'<zoom
(-5 ..
+5) or
"page" or
"width">'/ \
827 n/-g/x:'<geometry
>'/ n/-remote/x:'<name
>'/ \
828 n/-rgb/x:'<number
>'/ n/-papercolor/x:'<color
>'/ \
829 n/-{t1lib,freetype}/x:'<font_type
>'/ \
830 n/-ps/x:'<PS_file
>'/ n/-paperw/x:'<width
>'/ \
831 n/-paperh/x:'<height
>'/ n/-upw/x:'<password
>'/ \
833 N/-{z,g,remote,rgb,papercolor,t1lib,freetype,ps,paperw,paperh,upw}/f:*.{pdf,PDF}/ \
834 N/-/x:'<page
>'/ p/1/f:*.{pdf,PDF}/ p/2/x:'<page
>'/
836 complete tcsh c/-D*=/'x
:<value
>'/ c/-D/'x
:<name
>'/ \
837 c/-/"(b c d D e f F i l m n q s t v V x X -version)"/ \
838 n/-c/c/ n/{-l,--version}/n/ n/*/'f
:*.
{,t
}csh
'/
840 complete rpm c/--/"(query verify nodeps nofiles nomd5 noscripts \
841 nogpg nopgp install upgrade freshen erase allmatches \
842 notriggers repackage test rebuild recompile initdb \
843 rebuilddb addsign resign querytags showrc setperms \
844 setugids all file group package querybynumber qf \
845 triggeredby whatprovides whatrequires changelog \
846 configfiles docfiles dump filesbypkg info last list \
847 provides queryformat requires scripts state triggers \
848 triggerscripts allfiles badreloc excludepath checksig \
849 excludedocs force hash ignoresize ignorearch ignoreos \
850 includedocs justdb noorder oldpackage percent prefix \
851 relocate replace-files replacepkgs buildroot clean \
852 nobuild rmsource rmspec short-circuit sign target \
853 help version quiet rcfile pipe dbpath root specfile)"/\
854 c/-/"(q V K i U F e ba bb bp bc bi bl bs ta tb tp tc \
855 ti tl ts a f g p c d l R s h ? v vv -)"/ \
856 n/{-f,--file}/f/ n/{-g,--group}/g/ n/--pipe/c/ n/--dbpath/d/ \
857 n/--querybynumber/x:'<number
>'/ n/--triggeredby/x:'<package
>'/\
858 n/--what{provides,requires}/x:'<capability
>'/ n/--root/d/ \
859 n/--{qf,queryformat}/x:'<format
>'/ n/--buildroot/d/ \
860 n/--excludepath/x:'<oldpath
>'/ n/--prefix/x:'<newpath
>'/ \
861 n/--relocate/x:'<oldpath
=newpath
>'/ n/--target/x:'<platform
>'/\
862 n/--rcfile/x:'<filelist
>'/ n/--specfile/x:'<specfile
>'/ \
863 n/{-[iUFep],--{install,upgrade,freshen,erase,package}}/f:*.rpm/
865 # these conform to the latest GNU versions available at press time ...
866 # updates by John Gotts <jgotts@engin.umich.edu>
868 # TW note: if your version of GNU Emacs supports the "--version" option,
869 # uncomment this line and comment the next to automatically
870 # detect the version, else set "_emacs_ver" to your version.
871 #set _emacs_ver=`emacs --version | sed -e 's
%GNU Emacs
%%' -e q | cut -d . -f1-2`
873 set _emacs_dir=`which emacs | sed s%/bin/emacs%%`
874 complete emacs c/--/"(batch terminal display no-windows no-init-file \
875 user debug-init unibyte multibyte version help \
876 no-site-file funcall load eval insert kill)"/ \
877 c/-/"(t d nw q u f l -)"/ c/+/x:'<line_number
>'/ \
878 n/{-t,--terminal}/x:'<terminal
>'/ n/{-d,--display}/x:'<display
>'/ \
879 n/{-u,--user}/u/ n/{-f,--funcall}/x:'<lisp_function
>'/ \
880 n@{-l,--load}@F:$_emacs_dir/share/emacs/$_emacs_ver/lisp@ \
881 n/--eval/x:'<expression
>'/ n/--insert/f/ n/*/f:^*[\#~]/
882 unset _emacs_ver _emacs_dir
885 complete gzcat c/--/"(force help license quiet version)"/ \
886 c/-/"(f h L q V -)"/ n/*/f:*.{gz,Z,z,zip}/
887 complete gzip c/--/"(stdout to-stdout decompress uncompress \
888 force help list license no-name quiet recurse \
889 suffix test verbose version fast best)"/ \
890 c/-/"(c d f h l L n q r S t v V 1 2 3 4 5 6 7 8 9 -)"/\
891 n/{-S,--suffix}/x:'<file_name_suffix
>'/ \
892 n/{-d,--{de,un}compress}/f:*.{gz,Z,z,zip,taz,tgz}/ \
893 N/{-d,--{de,un}compress}/f:*.{gz,Z,z,zip,taz,tgz}/ \
894 n/*/f:^*.{gz,Z,z,zip,taz,tgz}/
895 complete {gunzip,ungzip} c/--/"(stdout to-stdout force help list license \
896 no-name quiet recurse suffix test verbose version)"/ \
897 c/-/"(c f h l L n q r S t v V -)"/ \
898 n/{-S,--suffix}/x:'<file_name_suffix
>'/ \
899 n/*/f:*.{gz,Z,z,zip,taz,tgz}/
900 complete zgrep c/-*A/x:'<#_lines_after>'/ c/-*B/x:'<#_lines_before>'/\
901 c
/-/"(A b B c C e f h i l n s v V w x)"/ \
902 p
/1/x
:'<limited_regular_expression>'/ N
/-*e
/f
/ \
903 n
/-*e
/x
:'<limited_regular_expression>'/ n
/-*f
/f
/ n
/*/f
/
904 complete zegrep c
/-*A
/x
:'<#_lines_after>'/ c
/-*B
/x
:'<#_lines_before>'/\
905 c
/-/"(A b B c C e f h i l n s v V w x)"/ \
906 p
/1/x
:'<full_regular_expression>'/ N
/-*e
/f
/ \
907 n
/-*e
/x
:'<full_regular_expression>'/ n
/-*f
/f
/ n
/*/f
/
908 complete zfgrep c
/-*A
/x
:'<#_lines_after>'/ c
/-*B
/x
:'<#_lines_before>'/\
909 c
/-/"(A b B c C e f h i l n s v V w x)"/ \
910 p
/1/x
:'<fixed_string>'/ N
/-*e
/f
/ \
911 n
/-*e
/x
:'<fixed_string>'/ n
/-*f
/f
/ n
/*/f
/
912 complete znew c
/-/"(f t v 9 P K)"/ n
/*/f
:*.Z
/
913 complete zmore n
/*/f
:*.
{gz
,Z
,z
,zip
}/
914 complete zfile n
/*/f
:*.
{gz
,Z
,z
,zip
,taz
,tgz
}/
915 complete ztouch n
/*/f
:*.
{gz
,Z
,z
,zip
,taz
,tgz
}/
916 complete zforce n
/*/f
:^
*.
{gz
,tgz
}/
918 complete dcop
'p/1/`$:0`/ /' \
919 'p/2/`$:0 $:1 | awk \{print\ \$1\}`/ /' \
920 'p/3/`$:0 $:1 $:2 | sed "s%.* \(.*\)(.*%\1%"`/ /'
923 complete grep c
/-*A
/x
:'<#_lines_after>'/ c
/-*B
/x
:'<#_lines_before>'/\
924 c
/--/"(extended-regexp fixed-regexp basic-regexp \
925 regexp file ignore-case word-regexp line-regexp \
926 no-messages revert-match version help byte-offset \
927 line-number with-filename no-filename quiet silent \
928 text directories recursive files-without-match \
929 files-with-matches count before-context after-context \
930 context binary unix-byte-offsets)"/ \
931 c
/-/"(A a B b C c d E e F f G H h i L l n q r s U u V \
933 p
/1/x
:'<limited_regular_expression>'/ N
/-*e
/f
/ \
934 n
/-*e
/x
:'<limited_regular_expression>'/ n
/-*f
/f
/ n
/*/f
/
935 complete egrep c
/-*A
/x
:'<#_lines_after>'/ c
/-*B
/x
:'<#_lines_before>'/\
936 c
/--/"(extended-regexp fixed-regexp basic-regexp \
937 regexp file ignore-case word-regexp line-regexp \
938 no-messages revert-match version help byte-offset \
939 line-number with-filename no-filename quiet silent \
940 text directories recursive files-without-match \
941 files-with-matches count before-context after-context \
942 context binary unix-byte-offsets)"/ \
943 c
/-/"(A a B b C c d E e F f G H h i L l n q r s U u V \
945 p
/1/x
:'<full_regular_expression>'/ N
/-*e
/f
/ \
946 n
/-*e
/x
:'<full_regular_expression>'/ n
/-*f
/f
/ n
/*/f
/
947 complete fgrep c
/-*A
/x
:'<#_lines_after>'/ c
/-*B
/x
:'<#_lines_before>'/\
948 c
/--/"(extended-regexp fixed-regexp basic-regexp \
949 regexp file ignore-case word-regexp line-regexp \
950 no-messages revert-match version help byte-offset \
951 line-number with-filename no-filename quiet silent \
952 text directories recursive files-without-match \
953 files-with-matches count before-context after-context \
954 context binary unix-byte-offsets)"/ \
955 c
/-/"(A a B b C c d E e F f G H h i L l n q r s U u V \
957 p
/1/x
:'<fixed_string>'/ N
/-*e
/f
/ \
958 n
/-*e
/x
:'<fixed_string>'/ n
/-*f
/f
/ n
/*/f
/
960 complete sed c
/--/"(quiet silent version help expression file)"/ \
961 c
/-/"(n V e f -)"/ n
/{-e
,--expression
}/x
:'<script>'/ \
962 n
/{-f
,--file
}/f
:*.sed
/ N
/-{e
,f
,-{file
,expression
}}/f
/ \
963 n
/-/x
:'<script>'/ N
/-/f
/ p
/1/x
:'<script>'/ p
/2/f
/
965 complete users c
/--/"(help version)"/ p
/1/x
:'<accounting_file>'/
966 complete who c
/--/"(heading idle count mesg message writable help \
967 version)"/ c
/-/"(H i m q s T w u -)"/ \
968 p
/1/x
:'<accounting_file>'/ n
/am
/"(i)"/ n
/are
/"(you)"/
970 complete chown c
/--/"(changes dereference no-dereference silent \
971 quiet reference recursive verbose help version)"/ \
972 c
/-/"(c f h R v -)"/ C
@[.
/\
$~]@f@ c
/*[.
:]/g
/ \
973 n
/-/u
/: p
/1/u
/: n
/*/f
/
974 complete chgrp c
/--/"(changes no-dereference silent quiet reference \
975 recursive verbose help version)"/ \
976 c
/-/"(c f h R v -)"/ n
/-/g
/ p
/1/g
/ n
/*/f
/
977 complete chmod c
/--/"(changes silent quiet verbose reference \
978 recursive help version)"/ c
/-/"(c f R v)"/
979 complete df c
/--/"(all block-size human-readable si inodes \
980 kilobytes local megabytes no-sync portability sync \
981 type print-type exclude-type help version)"/ \
982 c
/-/"(a H h i k l m P T t v x)"/
983 complete du c
/--/"(all block-size bytes total dereference-args \
984 human-readable si kilobytes count-links dereference \
985 megabytes separate-dirs summarize one-file-system \
986 exclude-from exclude max-depth help version"/ \
987 c
/-/"(a b c D H h k L l m S s X x)"/
989 complete cat c
/--/"(number-nonblank number squeeze-blank show-all \
990 show-nonprinting show-ends show-tabs help version)"/ \
991 c
/-/"(A b E e n s T t u v -)"/ n
/*/f
/
992 complete mv c
/--/"(backup force interactive update verbose suffix \
993 version-control help version)"/ \
994 c
/-/"(b f i S u V v -)"/ \
995 n
/{-S
,--suffix
}/x
:'<suffix>'/ \
996 n
/{-V
,--version-control
}/"(t numbered nil existing \
997 never simple)"/ n
/-/f
/ N
/-/d
/ p
/1/f
/ p
/2/d
/ n
/*/f
/
998 complete cp c
/--/"(archive backup no-dereference force \
999 interactive link preserve parents sparse recursive \
1000 symbolic-link suffix update verbose version-control \
1001 one-file-system help version)"/ \
1002 c
/-/"(a b d f i l P p R r S s u V v x -)"/ \
1003 n
/-*r
/d
/ n
/{-S
,--suffix
}/x
:'<suffix>'/ \
1004 n
/{-V
,--version-control
}/"(t numbered nil existing \
1005 never simple)"/ n
/-/f
/ N
/-/d
/ p
/1/f
/ p
/2/d
/ n
/*/f
/
1006 complete ln c
/--/"(backup directory force no-dereference \
1007 interactive symbolic suffix verbose version-control \
1009 c
/-/"(b d F f i n S s V v -)"/ \
1010 n
/{-S
,--suffix
}/x
:'<suffix>'/ \
1011 n
/{-V
,--version-control
}/"(t numbered nil existing \
1012 never simple)"/ n
/-/f
/ N
/-/x
:'<link_name>'/ \
1013 p
/1/f
/ p
/2/x
:'<link_name>'/
1014 complete touch c
/--/"(date reference time help version)"/ \
1015 c
/-/"(a c d f m r t -)"/ \
1016 n
/{-d
,--date
}/x
:'<date_string>'/ \
1017 c
/--time/"(access atime mtime modify use)"/ \
1018 n
/{-r
,--file
}/f
/ n
/-t
/x
:'<time_stamp>'/ n
/*/f
/
1019 complete mkdir c
/--/"(mode parents verbose help version)"/ \
1021 n
/{-m
,--mode
}/x
:'<mode>'/ n
/*/d
/
1022 complete rmdir c
/--/"(ignore-fail-on-non-empty parents verbose help \
1023 version)"/ c
/-/"(p -)"/ n
/*/d
/
1024 complete env
'c/*=/f/' 'p/1/e/=/' 'p/2/c/'
1026 complete tar c
/-[Acru
]*/"(b B C f F g G h i l L M N o P \
1027 R S T v V w W X z Z)"/ \
1028 c
/-[dtx
]*/"( B C f F g G i k K m M O p P \
1029 R s S T v w x X z Z)"/ \
1030 p
/1/"(A c d r t u x -A -c -d -r -t -u -x \
1031 --catenate --concatenate --create --diff --compare \
1032 --delete --append --list --update --extract --get \
1033 --help --version)"/ \
1034 c
/--/"(catenate concatenate create diff compare \
1035 delete append list update extract get atime-preserve \
1036 block-size read-full-blocks directory checkpoint file \
1037 force-local info-script new-volume-script incremental \
1038 listed-incremental dereference ignore-zeros \
1039 ignore-failed-read keep-old-files starting-file \
1040 one-file-system tape-length modification-time \
1041 multi-volume after-date newer old-archive portability \
1042 to-stdout same-permissions preserve-permissions \
1043 absolute-paths preserve record-number remove-files \
1044 same-order preserve-order same-owner sparse \
1045 files-from null totals verbose label version \
1046 interactive confirmation verify exclude exclude-from \
1047 compress uncompress gzip ungzip use-compress-program \
1048 block-compress help version)"/ \
1049 c
/-/"(b B C f F g G h i k K l L m M N o O p P R s S \
1050 T v V w W X z Z 0 1 2 3 4 5 6 7 -)"/ \
1052 n
/-c
*f
/x
:'<new_tar_file, device_file, or "-">'/ \
1053 n
/{-[Adrtux
]j
*f
,--file
}/f
:*.
{tar.bz2
,tbz
}/ \
1054 n
/{-[Adrtux
]z
*f
,--file
}/f
:*.
{tar.gz
,tgz
}/ \
1055 n
/{-[Adrtux
]Z
*f
,--file
}/f
:*.
{tar.Z
,taz
}/ \
1056 n
/{-[Adrtux
]*f
,--file
}/f
:*.tar
/ \
1057 N
/{-xj
*f
,--file
}/'`tar -tjf $:-1`'/ \
1058 N/{-xz*f,--file}/'`tar
-tzf
$:-1`'/ \
1059 N
/{-xZ
*f
,--file
}/'`tar -tZf $:-1`'/ \
1060 N/{-x*f,--file}/'`tar
-tf
$:-1`'/ \
1061 n
/--use-compress-program
/c
/ \
1062 n
/{-b
,--block-size
}/x
:'<block_size>'/ \
1063 n
/{-V
,--label
}/x
:'<volume_label>'/ \
1064 n
/{-N
,--{after-date
,newer
}}/x
:'<date>'/ \
1065 n
/{-L
,--tape-length
}/x
:'<tape_length_in_kB>'/ \
1066 n
/{-C
,--directory
}/d
/ \
1067 N
/{-C
,--directory
}/'`\ls $:-1`'/ \
1070 switch ( "$OSTYPE" )
1073 complete mount c/-/"(a f F h l n o r s t U v V w)"/ n/-[hV]/n/ \
1074 n/-o/x:'<options
>'/ n/-t/x:'<vfstype
>'/ \
1075 n/-L/x:'<label
>'/ n/-U/x:'<uuid
>'/ \
1076 n@*@'`grep
-v
"^#" /etc
/fstab | tr
-s
" " " " | cut
-f
2`
'@
1077 complete umount c/-/"(a h n r t v V)"/ n/-t/x:'<vfstype
>'/ \
1078 n/*/'`mount | cut
-d
" " -f
3`
'/
1082 # Solaris filesystems
1083 complete mount c/-/"(a F m o O p r v V)"/ n/-p/n/ n/-v/n/ \
1084 n/-o/x:'<FSType_options
>'/ \
1085 n@-F@'`\ls
-1 /usr
/lib
/fs`
'@ \
1086 n@*@'`grep
-v
"^#" /etc
/vfstab | tr
-s
" " " " | cut
-f
3`
'@
1087 complete umount c/-/"(a o V)"/ n/-o/x:'<FSType_options
>'/ \
1088 n/*/'`mount | cut
-d
" " -f
1`
'/
1089 complete mountall c/-/"(F l r)"/ n@-F@'`\ls
-1 /usr
/lib
/fs`
'@
1090 complete umountall c/-/"(F h k l r s)"/ n@-F@'`\ls
-1 /usr
/lib
/fs`
'@ \
1091 n/-h/'`df
-k | cut
-s
-d
":" -f
1 | sort
-u`
'/
1095 complete mount c/-/"(b c f h m o p s t u v x E X)"/ n/-[hmpv]/n/ \
1097 n/-o/"(user system binary text exec notexec cygexec nosuid managed)"/ \
1098 n@*@'`mount
-p | tail
-1 | cut
-d
" " -f
1 | xargs ls
-1 | awk
'"'"'{print $1":/"; } END{print "//";}'"'"'`
'@
1099 complete umount c/-/"(A c h s S u U v)"/ n/-[AhSUv]/n/ \
1100 n@*@'`mount | grep
-v noumount | cut
-d
" " -f
3`
'@
1104 # these deal with NIS (formerly YP); if it's not running you don
't need 'em
1105 if (-X domainname
) then
1106 set _domain
= "`domainname`"
1107 set _ypdir
= /var
/yp
# directory where NIS (YP) maps are kept
1108 if ("$_domain" != "" && "$_domain" != "noname") then
1109 complete domainname p@1@D
:$_ypdir@" " n@*@n@
1110 complete ypcat c@-@"(d k t x
)"@ n@-x@n@ n@-d@D:$_ypdir@" " \
1111 N@-d
@\`
\\ls\
-1\
$_ypdir/\$:-1\ \|\ sed\
-n\ s
%\\\\.pag
\\\
$%%p\`@ \
1112 n
@*@\`
\\ls\
-1\
$_ypdir/$_domain\ \|\ sed\
-n\ s
%\\\\.pag
\\\
$%%p\`@
1113 complete ypmatch c@-
@"(d k t x)"@ n@-x@n
@ n@-d@D
:$_ypdir@" " \
1114 N@-d@x:'<key ...>'@ n@-@x:'<key ...>'@ p@1@x:'<key ...>'@ \
1115 n@*@\`\\ls\ -1\ $_ypdir/$_domain\ \|\ sed\ -n\ s%\\\\.pag\\\$%%p\`@
1116 complete ypwhich c@-@"(d m t x V1 V2
)"@ n@-x@n@ n@-d@D:$_ypdir@" " \
1117 n@-m
@\`
\\ls\
-1\
$_ypdir/$_domain\ \|\ sed\
-n\ s
%\\\\.pag
\\\
$%%p\`@ \
1118 N@-m@n
@ n
@*@\
$hosts@
1120 unset _domain _ypdir
1126 'n@*@`cat -s GNUmakefile Makefile makefile |& sed -n -e "/No such file/d" -e "/^[^ #].*:/s/:.*//p"`@'
1128 if ( -f
/etc
/printcap
) then
1129 set printers
=(`sed
-n
-e
"/^[^ #].*:/s/:.*//p" /etc
/printcap`
)
1131 complete lpr
'c/-P/$printers/'
1132 complete lpq 'c
/-P
/$printers/'
1133 complete lprm
'c/-P/$printers/'
1134 complete lpquota 'p
/1/(-Qprlogger
)/' 'c
/-P
/$printers/'
1135 complete dvips
'c/-P/$printers/' 'n
/-o
/f
:*.
{ps
,PS
}/' 'n
/*/f
:*.dvi
/'
1136 complete dvilj 'p
/*/f
:*.dvi
/'
1139 # From Alphonse Bendt
1142 'n
@*@`cat build.xml | sed
-n
-e
"s/[ \t]*<target[\t\n]*name=.\([a-zA-Z0-9_:]*\).*/\1/p"`
@'
1144 if ($?P4CLIENT && -X perl) then
1145 # This is from Greg Allen.
1146 set p4cmds=(add branch branches commands change changes client clients \
1147 counter counters delete depot depots describe diff diff2 \
1148 edit filelog files fix fixes fstat group groups have help \
1149 info integrate integrated job jobs jobspec label labels \
1150 labelsync lock obliterate opened passwd print protect rename \
1151 reopen resolve resolved revert review reviews set submit \
1152 sync triggers unlock user users verify where)
1153 complete p4 'p
/1/$p4cmds/' 'n/help/$p4cmds/' \
1154 'n
%{-l
,label
}%`p4 labels | sed
"s/Label \([^ ]*\) .*/\1/"`
%' \
1155 'n
%-t
%`p4
$:1s | sed
"s/[^ ]* \([^ ]*\) .*/\1/"`
%' \
1156 'c
%*@%`p4 labels | sed
"s/Label \([^ ]*\) .*/\1/"`
%' \
1157 'c
@//*/*@`p4 files
$:-0... |
& perl
-nle
"m%\Q$:-0\E([^#][^/# ] \
1158 *)%;print "\
$"1 if \\\
!/no such
/&&\
!"\$"h{"\$"1}++"`@@' \
1159 'c@//@`p4 depots | sed "s
/Depot \
([^
]*\
) .
*/\
1/"`@/@'
1163 if (! $?traditional_complete) then
1166 complete {vi,vim,gvim,nvi,elvis} n/*/f:^*.{o,a,so,sa,aux,dvi,log,fig,bbl,blg,bst,idx,ilg,ind,toc}/
1167 complete {ispell,spell,spellword} 'n@-d@`ls /usr/lib/ispell/*.aff | sed -e "s
/\.aff
//" `@' 'n/*/f:^*.{o,a,so,sa,aux,dvi,log,fig,bbl,blg,bst,idx,ilg,ind,toc}/'
1168 complete elm 'n/-[Ai]/f/' 'c@=@F:$HOME/Mail/@' 'n/-s/x:\<subject\>/'
1169 complete ncftp 'n@*@`sed -e '1,2d' $HOME/.ncftp/bookmarks | cut -f 1,2 -d "," | tr "," "\012" | sort | uniq ` '@
1170 complete bibtex 'n@*@`ls *.aux | sed -e "s
/\.aux
//"`'@
1171 complete dvi2tty n/*/f:*.dvi/ # Only files that match *.dvi
1173 uncomplete ghostview
1174 complete {gv,ghostview} 'n/*/f:*.{ps,eps,epsi}/'
1176 'c/--/(columns= pages= header= no-header truncate-lines \
1177 line-numbers setpagedevice= escapes font= \
1178 header-font= fancy-header no-job-header \
1179 highlight-bars indent= filter= borders page-prefeed \
1180 no-page-prefeed lineprinter lines-per-page= mail \
1181 media= copies= newline= output= missing-characters \
1182 printer= quiet silent landscape portrait \
1183 baselineskip= statusdict= title= tabsize= underlay= \
1184 verbose version encoding pass-through download-font= \
1185 filter-stdin= help highlight-bar-gray= list-media \
1186 list-options non-printable-format= page-label-format= \
1187 printer-options= ul-angle= ul-font= ul-gray= \
1188 ul-position= ul-style= \
1193 'c/--{admindir,instdir,root}=/d/' \
1195 'c/--{admindir,debug,instdir,root}/(=)//' \
1196 'c/--/(admindir= debug= instdir= root= \
1197 assert-support-predepends assert-working-epoch \
1198 audit auto-deconfigure clear-avail \
1199 compare-versions configure contents control \
1200 extract force-bad-path field \
1201 force-configure-any force-conflicts \
1202 force-depends force-depends-version force-help \
1203 force-hold force-non-root \
1204 force-overwrite-diverted \
1205 force-remove-essential force-remove-reinstreq \
1206 forget-old-unavail fsys-tarfile get-selections \
1207 help ignore-depends info install largemem \
1208 license list listfiles merge-avail no-act \
1209 pending predep-package print-architecture \
1210 print-gnu-build-architecture \
1211 print-installation-architecture print-avail \
1212 purge record-avail recursive refuse-downgrade \
1213 remove search set-selections selected-only \
1214 skip-same-version smallmem status unpack \
1215 update-avail version vextract \
1217 'n/{-l}/`dpkg -l|awk \{print\ \$2\}`/' \
1219 complete dpkg-deb 'c/--{build}=/d/' \
1220 'c/--/(build contents info field control extract \
1221 vextract fsys-tarfile help version \
1225 'c/--/(build config-file diff-only download-only \
1226 fix-broken fix-missing force-yes help ignore-hold no-download \
1227 no-upgrade option print-uris purge reinstall quiet simulate \
1228 show-upgraded target-release tar-only version yes )/' \
1229 'c/-/(b c= d f h m o= q qq s t x y )/' \
1230 'n/{source,build-dep}/x:<pkgname>/' \
1231 'n/{remove}/`dpkg -l|grep ^ii|awk \{print\ \$2\}`/' \
1232 'n/{install}/`apt-cache pkgnames | sort`/' \
1233 'C/*/(update upgrade dselect-upgrade source \
1234 build-dep check clean autoclean install remove)/'
1235 complete apt-cache \
1236 'c/--/(all-versions config-file generate full help important \
1237 names-only option pkg-cache quiet recurse src-cache version )/' \
1238 'c/-/(c= h i o= p= q s= v)/' \
1239 'n/{search}/x:<regex>/' \
1240 'n/{pkgnames,policy,show,showpkg,depends,dotty}/`apt-cache pkgnames | sort`/' \
1241 'C/*/(add gencaches showpkg stats dump dumpavail unmet show \
1242 search depends pkgnames dotty policy )/'
1244 switch ( "${OSTYPE}" )
1247 foreach p
(fast force one quiet
"")
1248 foreach c
(enabled poll rcvar reload restart start status
stop)
1249 set commands
=($commands $p$c)
1257 c
/-/"(R e l r v)"/ \
1258 p
/2/"($commands)"/ \
1263 if ( -d /etc/init.d ) then
1264 set rcdir=/etc/init.d/
1266 set rcdir=/etc/rc.d/
1269 p/2/"(--full-restart force-reload reload restart start
stop status
)"/ \
1270 c/--/"(help status-all version
)"/ \
1277 if ( $?_unset_noglob ) unset noglob _unset_noglob