From 60962bbc19c36433491c6251f1fac8942f00eff3 Mon Sep 17 00:00:00 2001 From: John Marino Date: Wed, 4 Nov 2015 14:14:22 +0100 Subject: [PATCH] Vendor branch: upgrade tcsh from 6.18.01 to 6.19.00 --- contrib/tcsh-6/Copyright | 6 +- contrib/tcsh-6/README | 2 +- contrib/tcsh-6/complete.tcsh | 2393 +++++++++++++++++----------------- contrib/tcsh-6/config/bsd4.4 | 1 + contrib/tcsh-6/config_f.h | 6 +- contrib/tcsh-6/dotlock.c | 180 +++ contrib/tcsh-6/dotlock.h | 35 + contrib/tcsh-6/ed.chared.c | 8 +- contrib/tcsh-6/ed.inputl.c | 24 +- contrib/tcsh-6/ed.refresh.c | 6 +- contrib/tcsh-6/ed.screen.c | 12 +- contrib/tcsh-6/ed.term.h | 14 +- contrib/tcsh-6/gethost.c | 42 +- contrib/tcsh-6/glob.c | 1 + contrib/tcsh-6/patchlevel.h | 8 +- contrib/tcsh-6/sh.c | 26 +- contrib/tcsh-6/sh.char.h | 10 +- contrib/tcsh-6/sh.decls.h | 4 +- contrib/tcsh-6/sh.dir.c | 8 +- contrib/tcsh-6/sh.dol.c | 26 +- contrib/tcsh-6/sh.err.c | 12 +- contrib/tcsh-6/sh.exec.c | 13 +- contrib/tcsh-6/sh.exp.c | 11 +- contrib/tcsh-6/sh.file.c | 6 +- contrib/tcsh-6/sh.func.c | 42 +- contrib/tcsh-6/sh.glob.c | 11 +- contrib/tcsh-6/sh.h | 38 +- contrib/tcsh-6/sh.hist.c | 132 +- contrib/tcsh-6/sh.init.c | 6 +- contrib/tcsh-6/sh.misc.c | 40 +- contrib/tcsh-6/sh.print.c | 14 +- contrib/tcsh-6/sh.proc.c | 39 +- contrib/tcsh-6/sh.sem.c | 29 +- contrib/tcsh-6/sh.set.c | 14 +- contrib/tcsh-6/sh.time.c | 10 +- contrib/tcsh-6/tc.alloc.c | 39 +- contrib/tcsh-6/tc.const.c | 16 +- contrib/tcsh-6/tc.decls.h | 10 +- contrib/tcsh-6/tc.func.c | 40 +- contrib/tcsh-6/tc.nls.c | 4 +- contrib/tcsh-6/tc.nls.h | 2 +- contrib/tcsh-6/tc.printf.c | 116 +- contrib/tcsh-6/tc.prompt.c | 19 +- contrib/tcsh-6/tc.str.c | 18 +- contrib/tcsh-6/tc.who.c | 6 +- contrib/tcsh-6/tcsh.man | 168 ++- contrib/tcsh-6/tw.color.c | 255 +++- contrib/tcsh-6/tw.comp.c | 21 +- contrib/tcsh-6/tw.decls.h | 3 +- contrib/tcsh-6/tw.parse.c | 10 +- 50 files changed, 2333 insertions(+), 1623 deletions(-) create mode 100644 contrib/tcsh-6/dotlock.c create mode 100644 contrib/tcsh-6/dotlock.h diff --git a/contrib/tcsh-6/Copyright b/contrib/tcsh-6/Copyright index 6ba10c49aa..b5049c7f2f 100644 --- a/contrib/tcsh-6/Copyright +++ b/contrib/tcsh-6/Copyright @@ -10,11 +10,7 @@ * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. - * 3. All advertising materials mentioning features or use of this software - * must display the following acknowledgement: - * This product includes software developed by the University of - * California, Berkeley and its contributors. - * 4. Neither the name of the University nor the names of its contributors + * 3. Neither the name of the University nor the names of its contributors * may be used to endorse or promote products derived from this software * without specific prior written permission. * diff --git a/contrib/tcsh-6/README b/contrib/tcsh-6/README index b05f58993e..42f944f6fa 100644 --- a/contrib/tcsh-6/README +++ b/contrib/tcsh-6/README @@ -1,4 +1,4 @@ -This is tcsh version 6.18.01. Tcsh is a version of the Berkeley +This is tcsh version 6.19.00. Tcsh is a version of the Berkeley C-Shell, with the addition of: a command line editor, command and file name completion, listing, etc. and a bunch of small additions to the shell itself. diff --git a/contrib/tcsh-6/complete.tcsh b/contrib/tcsh-6/complete.tcsh index 4fb1ad2dd7..a920dfe0ae 100644 --- a/contrib/tcsh-6/complete.tcsh +++ b/contrib/tcsh-6/complete.tcsh @@ -1,5 +1,5 @@ # -# $tcsh: complete.tcsh,v 1.52 2010/05/07 17:54:13 christos Exp $ +# $tcsh: complete.tcsh,v 1.55 2014/09/27 07:08:45 kim Exp $ # example file using the new completion code # # Debian GNU/Linux @@ -20,1209 +20,1262 @@ # Cleanup by Martin A. Godisch . onintr - -if (! $?prompt) goto end - -if ($?tcsh) then - if ($tcsh != 1) then - set rev=$tcsh:r - set rel=$rev:e - set pat=$tcsh:e - set rev=$rev:r +if ( ! $?prompt ) goto end + +if ( $?tcsh ) then + if ( $tcsh != 1 ) then + set rev=$tcsh:r:r + set rel=$tcsh:r:e + if ( $rev > 6 || ( $rev > 5 && $rel > 1 ) ) then + set _has_complete=1 endif - if ($rev > 5 && $rel > 1) then - set _complete=1 - endif - unset rev rel pat + endif + unset rev rel endif -if ($?_complete) then - set noglob - if ( ! $?hosts ) set hosts - foreach f ("$HOME/.hosts" /usr/local/etc/csh.hosts "$HOME/.rhosts" /etc/hosts.equiv) - if ( -r "$f" ) then - set hosts = ($hosts `grep -v "+" "$f" | grep -E -v "^#" | tr -s " " " " | cut -f 1`) - endif - end - if ( -r "$HOME/.netrc" ) then - set f=`awk '/machine/ { print $2 }' < "$HOME/.netrc"` >& /dev/null - set hosts=($hosts $f) - endif - if ( -r "$HOME/.ssh/known_hosts" ) then - set f=`cat "$HOME/.ssh/known_hosts" | cut -f 1 -d \ ` >& /dev/null - set f=`cat "$HOME/.ssh/known_hosts" | cut -f 1 -d \ | sed -e 's/,/ /g'` >& /dev/null - set hosts=($hosts $f) - endif - unset f - if ( ! $?hosts ) then - set hosts=(hyperion.ee.cornell.edu phaeton.ee.cornell.edu \ - guillemin.ee.cornell.edu vangogh.cs.berkeley.edu \ - ftp.uu.net prep.ai.mit.edu export.lcs.mit.edu \ - labrea.stanford.edu sumex-aim.stanford.edu \ - tut.cis.ohio-state.edu) - endif +if ( ! $?_has_complete ) goto end - complete ywho n/*/\$hosts/ # argument from list in $hosts - complete rsh p/1/\$hosts/ c/-/"(l n)"/ n/-l/u/ N/-l/c/ n/-/c/ p/2/c/ p/*/f/ - complete ssh p/1/\$hosts/ c/-/"(l n)"/ n/-l/u/ N/-l/c/ n/-/c/ p/2/c/ p/*/f/ - complete xrsh p/1/\$hosts/ c/-/"(l 8 e)"/ n/-l/u/ N/-l/c/ n/-/c/ p/2/c/ p/*/f/ - complete rlogin p/1/\$hosts/ c/-/"(l 8 e)"/ n/-l/u/ - complete telnet p/1/\$hosts/ p/2/x:''/ n/*/n/ - - complete cd p/1/d/ # Directories only - complete chdir p/1/d/ - complete pushd p/1/d/ - complete popd p/1/d/ - complete pu p/1/d/ - complete po p/1/d/ - complete complete p/1/X/ # Completions only - complete uncomplete n/*/X/ - complete exec p/1/c/ # Commands only - complete trace p/1/c/ - complete strace p/1/c/ - complete which n/*/c/ - complete where n/*/c/ - complete skill p/1/c/ - complete dde p/1/c/ - complete adb c/-I/d/ n/-/c/ N/-/"(core)"/ p/1/c/ p/2/"(core)"/ - complete sdb p/1/c/ - complete dbx c/-I/d/ n/-/c/ N/-/"(core)"/ p/1/c/ p/2/"(core)"/ - complete xdb p/1/c/ - complete gdb n/-d/d/ n/*/c/ - complete ups p/1/c/ - complete set 'c/*=/f/' 'p/1/s/=' 'n/=/f/' - complete unset n/*/s/ - complete alias p/1/a/ # only aliases are valid - complete unalias n/*/a/ - complete xdvi n/*/f:*.dvi/ # Only files that match *.dvi - complete dvips n/*/f:*.dvi/ - if ($?traditional_complete) then - complete tex n/*/f:*.tex/ # Only files that match *.tex - else - complete tex n/*/f:*.{tex,texi}/ # Files that match *.tex and *.texi - endif - complete latex n/*/f:*.{tex,ltx}/ - complete su c/--/"(login fast preserve-environment command shell \ - help version)"/ c/-/"(f l m p c s -)"/ \ - n/{-c,--command}/c/ \ - n@{-s,--shell}@'`cat /etc/shells`'@ n/*/u/ - complete cc c/-[IL]/d/ \ - c@-l@'`\ls -1 /usr/lib/lib*.a | sed s%^.\*/lib%%\;s%\\.a\$%%`'@ \ - c/-/"(o l c g L I D U)"/ n/*/f:*.[coasi]/ - complete acc c/-[IL]/d/ \ - c@-l@'`\ls -1 /usr/lang/SC1.0/lib*.a | sed s%^.\*/lib%%\;s%\\.a\$%%`'@ \ - c/-/"(o l c g L I D U)"/ n/*/f:*.[coasi]/ - complete gcc c/-[IL]/d/ \ - c/-f/"(caller-saves cse-follow-jumps delayed-branch \ - elide-constructors expensive-optimizations \ - float-store force-addr force-mem inline \ - inline-functions keep-inline-functions \ - memoize-lookups no-default-inline \ - no-defer-pop no-function-cse omit-frame-pointer \ - rerun-cse-after-loop schedule-insns \ - schedule-insns2 strength-reduce \ - thread-jumps unroll-all-loops \ - unroll-loops syntax-only all-virtual \ - cond-mismatch dollars-in-identifiers \ - enum-int-equiv no-asm no-builtin \ - no-strict-prototype signed-bitfields \ - signed-char this-is-variable unsigned-bitfields \ - unsigned-char writable-strings call-saved-reg \ - call-used-reg fixed-reg no-common \ - no-gnu-binutils nonnull-objects \ - pcc-struct-return pic PIC shared-data \ - short-enums short-double volatile)"/ \ - c/-W/"(all aggregate-return cast-align cast-qual \ - comment conversion enum-clash error format \ - id-clash-len implicit missing-prototypes \ - no-parentheses pointer-arith return-type shadow \ - strict-prototypes switch uninitialized unused \ - write-strings)"/ \ - c/-m/"(68000 68020 68881 bitfield fpa nobitfield rtd \ - short c68000 c68020 soft-float g gnu unix fpu \ - no-epilogue)"/ \ - c/-d/"(D M N)"/ \ - c/-/"(f W vspec v vpath ansi traditional \ - traditional-cpp trigraphs pedantic x o l c g L \ - I D U O O2 C E H B b V M MD MM i dynamic \ - nodtdlib static nostdinc undef)"/ \ - c/-l/f:*.a/ \ - n/*/f:*.{c,C,cc,o,a,s,i}/ - complete g++ n/*/f:*.{C,cc,o,s,i}/ - complete CC n/*/f:*.{C,cc,cpp,o,s,i}/ - complete rm c/--/"(directory force interactive verbose \ - recursive help version)"/ c/-/"(d f i v r R -)"/ \ - n/*/f:^*.{c,cc,C,h,in}/ # Protect precious files - complete vi n/*/f:^*.[oa]/ - complete bindkey N/-a/b/ N/-c/c/ n/-[ascr]/'x:'/ \ - n/-[svedlr]/n/ c/-[vedl]/n/ c/-/"(a s k c v e d l r)"/\ - n/-k/"(left right up down)"/ p/2-/b/ \ - p/1/'x:'/ - - complete find n/-fstype/"(nfs 4.2)"/ n/-name/f/ \ - n/-type/"(c b d f p l s)"/ n/-user/u/ n/-group/g/ \ - n/-exec/c/ n/-ok/c/ n/-cpio/f/ n/-ncpio/f/ n/-newer/f/ \ - c/-/"(fstype name perm prune type user nouser \ - group nogroup size inum atime mtime ctime exec \ - ok print ls cpio ncpio newer xdev depth \ - daystart follow maxdepth mindepth noleaf version \ - anewer cnewer amin cmin mmin true false uid gid \ - ilname iname ipath iregex links lname empty path \ - regex used xtype fprint fprint0 fprintf \ - print0 printf not a and o or)"/ \ - n/*/d/ - - complete -%* c/%/j/ # fill in the jobs builtin - complete {fg,bg,stop} c/%/j/ p/1/"(%)"// - - complete limit c/-/"(h)"/ n/*/l/ - complete unlimit c/-/"(h)"/ n/*/l/ - - complete -co* p/0/"(compress)"/ # make compress completion - # not ambiguous - if ($?traditional_complete) then - complete zcat n/*/f:*.Z/ - else - # "zcat" may be linked to "compress" or "gzip" - if (-X zcat) then - zcat --version >& /dev/null - if ($status != 0) then - complete zcat n/*/f:*.Z/ - else - complete zcat c/--/"(force help license quiet version)"/ \ - c/-/"(f h L q V -)"/ n/*/f:*.{gz,Z,z,zip}/ - endif - endif - endif +if ( ! $?noglob ) set noglob _unset_noglob - complete finger c/*@/\$hosts/ n/*/u/@ - complete ping p/1/\$hosts/ - complete traceroute p/1/\$hosts/ - - complete {talk,ntalk,phone} p/1/'`users | tr " " "\012" | uniq`'/ \ - n/*/\`who\ \|\ grep\ \$:1\ \|\ awk\ \'\{\ print\ \$2\ \}\'\`/ - - complete ftp c/-/"(d i g n v)"/ n/-/\$hosts/ p/1/\$hosts/ n/*/n/ - - # this one is simple... - #complete rcp c/*:/f/ C@[./\$~]*@f@ n/*/\$hosts/: - # From Michael Schroeder - # This one will rsh to the file to fetch the list of files! - 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/:' - - complete dd c/--/"(help version)"/ c/[io]f=/f/ \ - c/conv=*,/"(ascii ebcdic ibm block unblock \ - lcase notrunc ucase swab noerror sync)"/,\ - c/conv=/"(ascii ebcdic ibm block unblock \ - lcase notrunc ucase swab noerror sync)"/,\ - c/*=/x:''/ \ - n/*/"(if of conv ibs obs bs cbs files skip file seek count)"/= - - complete nslookup p/1/x:''/ p/2/\$hosts/ - - complete ar c/[dmpqrtx]/"(c l o u v a b i)"/ p/1/"(d m p q r t x)"// \ - p/2/f:*.a/ p/*/f:*.o/ - - # these should be merged with the MH completion hacks below - jgotts - complete {refile,sprev,snext,scan,pick,rmm,inc,folder,show} \ - "c@+@F:$HOME/Mail/@" - - # these and interrupt handling from Jaap Vermeulen - complete {rexec,rxexec,rxterm,rmterm} \ - 'p/1/$hosts/' 'c/-/(l L E)/' 'n/-l/u/' 'n/-L/f/' \ - 'n/-E/e/' 'n/*/c/' - complete kill 'c/-/S/' 'c/%/j/' \ - 'n/*/`ps -u $LOGNAME | awk '"'"'{print $1}'"'"'`/' - - # these from Marc Horowitz - complete attach 'n/-mountpoint/d/' 'n/-m/d/' 'n/-type/(afs nfs rvd ufs)/' \ - 'n/-t/(afs nfs rvd ufs)/' 'n/-user/u/' 'n/-U/u/' \ - 'c/-/(verbose quiet force printpath lookup debug map \ - nomap remap zephyr nozephyr readonly write \ - mountpoint noexplicit explicit type mountoptions \ - nosetuid setuid override skipfsck lock user host)/' \ - 'n/-e/f/' 'n/*/()/' - complete hesinfo 'p/1/u/' \ - 'p/2/(passwd group uid grplist pcap pobox cluster \ - filsys sloc service)/' - - # these from E. Jay Berkenbilt - # = isn't always followed by a filename or a path anymore - jgotts - if ($?traditional_complete) then - complete ./configure \ - 'c/--*=/f/' 'c/--{cache-file,prefix,exec-prefix,\ - bindir,sbindir,libexecdir,datadir,\ - sysconfdir,sharedstatedir,localstatedir,\ - libdir,includedir,oldincludedir,infodir,\ - mandir,srcdir}/(=)//' \ - 'c/--/(cache-file verbose prefix exec-prefix bindir \ - sbindir libexecdir datadir sysconfdir \ - sharedstatedir localstatedir libdir \ - includedir oldincludedir infodir mandir \ - srcdir)//' - else - complete ./configure \ - 'c@--{prefix,exec-prefix,bindir,sbindir,libexecdir,datadir,sysconfdir,sharedstatedir,localstatedir,infodir,mandir,srcdir,x-includes,x-libraries}=*@x:'@ \ - 'c/--cachefile=*/x:/' \ - 'c/--{enable,disable,with}-*/x://' \ - 'c/--*=/x://' \ - 'c/--/(prefix= exec-prefix= bindir= \ - sbindir= libexecdir= datadir= sysconfdir= \ - sharedstatedir= localstatedir= infodir= \ - mandir= srcdir= x-includes= x-libraries= cachefile= \ - enable- disable- with- \ - help no-create quiet silent version verbose )//' - endif - complete gs 'c/-sDEVICE=/(x11 cdjmono cdj550 epson eps9high epsonc \ - dfaxhigh dfaxlow laserjet ljet4 sparc pbm \ - pbmraw pgm pgmraw ppm ppmraw bit)/' \ - 'c/-sOutputFile=/f/' 'c/-s/(DEVICE OutputFile)/=' \ - 'c/-d/(NODISPLAY NOPLATFONTS NOPAUSE)/' 'n/*/f/' - complete perl 'n/-S/c/' - complete printenv 'n/*/e/' - complete sccs p/1/"(admin cdc check clean comb deledit delget \ - delta diffs edit enter fix get help info \ - print prs prt rmdel sccsdiff tell unedit \ - unget val what)"/ - complete setenv 'p/1/e/' 'c/*:/f/' - - # these and method of setting hosts from Kimmo Suominen - if ( -f "$HOME/.mh_profile" && -x "`which folders`" ) then - - if ( ! $?FOLDERS ) setenv FOLDERS "`folders -fast -recurse`" - if ( ! $?MHA ) setenv MHA "`ali | sed -e '/^ /d' -e 's/:.*//'`" - - set folders = ( $FOLDERS ) - set mha = ( $MHA ) - - complete ali \ - 'c/-/(alias nolist list nonormalize normalize nouser user help)/' \ - 'n,-alias,f,' - - complete anno \ - 'c/-/(component noinplace inplace nodate date text help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete burst \ - 'c/-/(noinplace inplace noquiet quiet noverbose verbose help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete comp \ - 'c/-/(draftfolder draftmessage nodraftfolder editor noedit file form nouse use whatnowproc nowhatnowproc help)/' \ - 'c,+,$folders,' \ - 'n,-whatnowproc,c,' \ - 'n,-file,f,'\ - 'n,-form,f,'\ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete dist \ - 'c/-/(noannotate annotate draftfolder draftmessage nodraftfolder editor noedit form noinplace inplace whatnowproc nowhatnowproc help)/' \ - 'c,+,$folders,' \ - 'n,-whatnowproc,c,' \ - 'n,-form,f,'\ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete folder \ - 'c/-/(all nofast fast noheader header nopack pack noverbose verbose norecurse recurse nototal total noprint print nolist list push pop help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete folders \ - 'c/-/(all nofast fast noheader header nopack pack noverbose verbose norecurse recurse nototal total noprint print nolist list push pop help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete forw \ - 'c/-/(noannotate annotate draftfolder draftmessage nodraftfolder editor noedit filter form noformat format noinplace inplace digest issue volume whatnowproc nowhatnowproc help)/' \ - 'c,+,$folders,' \ - 'n,-whatnowproc,c,' \ - 'n,-filter,f,'\ - 'n,-form,f,'\ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete inc \ - 'c/-/(audit file noaudit nochangecur changecur file form format nosilent silent notruncate truncate width help)/' \ - 'c,+,$folders,' \ - 'n,-audit,f,'\ - 'n,-form,f,' - - complete mark \ - 'c/-/(add delete list sequence nopublic public nozero zero help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete mhmail \ - 'c/-/(body cc from subject help)/' \ - 'n,-cc,$mha,' \ - 'n,-from,$mha,' \ - 'n/*/$mha/' - - complete mhpath \ - 'c/-/(help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete msgchk \ - 'c/-/(nodate date nonotify notify help)/' - - complete msh \ - 'c/-/(prompt noscan scan notopcur topcur help)/' - - complete next \ - 'c/-/(draft form moreproc nomoreproc length width showproc noshowproc header noheader help)/' \ - 'c,+,$folders,' \ - 'n,-moreproc,c,' \ - 'n,-showproc,c,' \ - 'n,-form,f,' - - complete packf \ - 'c/-/(file help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete pick \ - 'c/-/(and or not lbrace rbrace cc date from search subject to othercomponent after before datefield sequence nopublic public nozero zero nolist list help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete prev \ - 'c/-/(draft form moreproc nomoreproc length width showproc noshowproc header noheader help)/' \ - 'c,+,$folders,' \ - 'n,-moreproc,c,' \ - 'n,-showproc,c,' \ - 'n,-form,f,' - - complete prompter \ - 'c/-/(erase kill noprepend prepend norapid rapid nodoteof doteof help)/' - - complete refile \ - 'c/-/(draft nolink link nopreserve preserve src file help)/' \ - 'c,+,$folders,' \ - 'n,-file,f,'\ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete rmf \ - 'c/-/(nointeractive interactive help)/' \ - 'c,+,$folders,' - - complete rmm \ - 'c/-/(help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete scan \ - 'c/-/(noclear clear form format noheader header width noreverse reverse file help)/' \ - 'c,+,$folders,' \ - 'n,-form,f,'\ - 'n,-file,f,'\ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete send \ - 'c/-/(alias draft draftfolder draftmessage nodraftfolder filter nofilter noformat format noforward forward nomsgid msgid nopush push noverbose verbose nowatch watch width help)/' \ - 'n,-alias,f,'\ - 'n,-filter,f,' - - complete show \ - 'c/-/(draft form moreproc nomoreproc length width showproc noshowproc header noheader help)/' \ - 'c,+,$folders,' \ - 'n,-moreproc,c,' \ - 'n,-showproc,c,' \ - 'n,-form,f,'\ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete sortm \ - 'c/-/(datefield textfield notextfield limit nolimit noverbose verbose help)/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete vmh \ - 'c/-/(prompt vmhproc novmhproc help)/' \ - 'n,-vmhproc,c,' - - complete whatnow \ - 'c/-/(draftfolder draftmessage nodraftfolder editor noedit prompt help)/' - - complete whom \ - 'c/-/(alias nocheck check draft draftfolder draftmessage nodraftfolder help)/' \ - 'n,-alias,f,' - - complete plum \ - 'c/-/()/' \ - 'c,+,$folders,' \ - 'n,*,`(mark | sed "s/:.*//";echo next cur prev first last)|tr " " "\12" | sort -u`,' - - complete mail \ - 'c/-/()/' \ - 'n/*/$mha/' +# Old TCSH versions don't define OSTYPE. +# Use a close approximation instead. - endif +if ( ! $?OSTYPE ) then + setenv OSTYPE `echo "$HOSTTYPE" | sed -e 's/^(i[3456]86|(amd|x86_)64)-//'` +endif - #from Dan Nicolaescu - if ( $?MODULESHOME ) then - alias Compl_module 'find ${MODULEPATH:as/:/ /} -name .version -o -name .modulea\* -prune -o -print | sed `echo "-e s@${MODULEPATH:as%:%/\*@@g -e s@%}/\*@@g"`' - complete module 'p%1%(add load unload switch display avail use unuse update purge list clear help initadd initrm initswitch initlist initclear)%' \ - 'n%{unl*,sw*,inits*}%`echo "$LOADEDMODULES:as/:/ /"`%' \ - 'n%{lo*,di*,he*,inita*,initr*}%`eval Compl_module`%' \ - 'N%{sw*,initsw*}%`eval Compl_module`%' 'C%-%(-append)%' 'n%{use,unu*,av*}%d%' 'n%-append%d%' \ - 'C%[^-]*%`eval Compl_module`%' - endif +if ( ! $?hosts ) set hosts + +foreach f ( "$HOME/."{,r,ssh/known_}hosts* \ + /usr/local/etc/csh.hosts /etc/hosts.equiv ) + if ( -r "$f" ) then + set hosts=($hosts `sed \ + -e 's/#.*//' \ + -e '/^[+-]@/d' \ + -e 's/^[-+]//' \ + -e 's/[[:space:]].*//' \ + -e 's/,/\n/g' "$f" \ + | sed -e '/^[.:[:xdigit:][:space:]]*$/d'`) + endif +end +unset f + +if ( -r "$HOME/.netrc" ) then + set hosts=($hosts `awk '$1 == "machine" { print $2 }' "$HOME/.netrc"`) +endif + +set hosts=(`echo $hosts | tr ' ' '\012' | sort -u`) + +if ( ! $#hosts ) then + # This is just a hint for the user. + set hosts=(ftp.funet.fi ftp.gnu.org ftp.uu.net) +endif + +complete ywho n/*/\$hosts/ # argument from list in $hosts +complete rsh p/1/\$hosts/ c/-/"(l n)"/ n/-l/u/ N/-l/c/ n/-/c/ p/2/c/ p/*/f/ +complete ssh p/1/\$hosts/ c/-/"(l n)"/ n/-l/u/ N/-l/c/ n/-/c/ p/2/c/ p/*/f/ +complete xrsh p/1/\$hosts/ c/-/"(l 8 e)"/ n/-l/u/ N/-l/c/ n/-/c/ p/2/c/ p/*/f/ +complete rlogin p/1/\$hosts/ c/-/"(l 8 e)"/ n/-l/u/ +complete telnet p/1/\$hosts/ p/2/x:''/ n/*/n/ + +complete cd p/1/d/ # Directories only +complete chdir p/1/d/ +complete pushd p/1/d/ +complete popd p/1/d/ +complete pu p/1/d/ +complete po p/1/d/ +complete complete p/1/X/ # Completions only +complete uncomplete n/*/X/ +complete exec p/1/c/ # Commands only +complete trace p/1/c/ +complete strace p/1/c/ +complete which n/*/c/ +complete where n/*/c/ +complete skill p/1/c/ +complete dde p/1/c/ +complete adb c/-I/d/ n/-/c/ N/-/"(core)"/ p/1/c/ p/2/"(core)"/ +complete sdb p/1/c/ +complete dbx c/-I/d/ n/-/c/ N/-/"(core)"/ p/1/c/ p/2/"(core)"/ +complete xdb p/1/c/ +complete gdb n/-d/d/ n/*/c/ +complete ups p/1/c/ +complete set 'c/*=/f/' 'p/1/s/=' 'n/=/f/' +complete unset n/*/s/ +complete alias p/1/a/ # only aliases are valid +complete unalias n/*/a/ +complete xdvi n/*/f:*.dvi/ +complete dvips n/*/f:*.dvi/ +complete tex n/*/f:*.{tex,texi}/ +complete latex n/*/f:*.{tex,ltx}/ + +complete su \ + c/--/"(login fast preserve-environment command shell help version)"/ \ + c/-/"(f l m p c s -)"/ \ + n/{-c,--command}/c/ \ + n@{-s,--shell}@'`cat /etc/shells`'@ \ + n/*/u/ +complete cc \ + c/-[IL]/d/ \ + c@-l@'`\ls -1 /usr/lib/lib*.a | sed s%^.\*/lib%%\;s%\\.a\$%%`'@ \ + c/-/"(o l c g L I D U)"/ n/*/f:*.[coasi]/ +complete acc \ + c/-[IL]/d/ \ + c@-l@'`\ls -1 /usr/lang/SC1.0/lib*.a | sed s%^.\*/lib%%\;s%\\.a\$%%`'@ \ + c/-/"(o l c g L I D U)"/ n/*/f:*.[coasi]/ +complete gcc \ + c/-[IL]/d/ \ + c/-f/"(caller-saves cse-follow-jumps delayed-branch elide-constructors \ + expensive-optimizations float-store force-addr force-mem inline \ + inline-functions keep-inline-functions memoize-lookups \ + no-default-inline no-defer-pop no-function-cse omit-frame-pointer \ + rerun-cse-after-loop schedule-insns schedule-insns2 strength-reduce \ + thread-jumps unroll-all-loops unroll-loops syntax-only all-virtual \ + cond-mismatch dollars-in-identifiers enum-int-equiv no-asm no-builtin \ + no-strict-prototype signed-bitfields signed-char this-is-variable \ + unsigned-bitfields unsigned-char writable-strings call-saved-reg \ + call-used-reg fixed-reg no-common no-gnu-binutils nonnull-objects \ + pcc-struct-return pic PIC shared-data short-enums short-double \ + volatile)"/ \ + c/-W/"(all aggregate-return cast-align cast-qual comment conversion \ + enum-clash error format id-clash-len implicit missing-prototypes \ + no-parentheses pointer-arith return-type shadow strict-prototypes \ + switch uninitialized unused write-strings)"/ \ + c/-m/"(68000 68020 68881 bitfield fpa nobitfield rtd short c68000 c68020 \ + soft-float g gnu unix fpu no-epilogue)"/ \ + c/-d/"(D M N)"/ \ + c/-/"(f W vspec v vpath ansi traditional traditional-cpp trigraphs pedantic \ + x o l c g L I D U O O2 C E H B b V M MD MM i dynamic nodtdlib static \ + nostdinc undef)"/ \ + c/-l/f:*.a/ \ + n/*/f:*.{c,C,cc,o,a,s,i}/ +complete g++ n/*/f:*.{C,cc,o,s,i}/ +complete CC n/*/f:*.{C,cc,cpp,o,s,i}/ +complete rm \ + c/--/"(directory force interactive verbose recursive help version)"/ \ + c/-/"(d f i v r R -)"/ \ + n/*/f:^*.{c,cc,C,h,in}/ + # Protect precious files +complete vi n/*/f:^*.[oa]/ +complete bindkey \ + N/-a/b/ N/-c/c/ n/-[ascr]/'x:'/ \ + n/-[svedlr]/n/ c/-[vedl]/n/ c/-/"(a s k c v e d l r)"/ \ + n/-k/"(left right up down)"/ p/2-/b/ \ + p/1/'x:'/ + +complete find \ + n/-fstype/"(nfs 4.2)"/ \ + n/-name/f/ \ + n/-type/"(c b d f p l s)"/ \ + n/-user/u/ \ + n/-group/g/ \ + n/-exec/c/ \ + n/-ok/c/ \ + n/-cpio/f/ \ + n/-ncpio/f/ \ + n/-newer/f/ \ + c/-/"(fstype name perm prune type user nouser group nogroup size inum \ + atime mtime ctime exec ok print ls cpio ncpio newer xdev depth \ + daystart follow maxdepth mindepth noleaf version anewer cnewer \ + amin cmin mmin true false uid gid ilname iname ipath iregex links \ + lname empty path regex used xtype fprint fprint0 fprintf print0 \ + printf not a and o or)"/ \ + n/*/d/ + +complete -%* c/%/j/ # fill in the jobs builtin +complete {fg,bg,stop} c/%/j/ p/1/"(%)"// + +complete limit c/-/"(h)"/ n/*/l/ +complete unlimit c/-/"(h)"/ n/*/l/ + +#complete -co* p/0/"(compress)"/ # make compress completion +# # not ambiguous + +# "zcat" may be linked to "compress" or "gzip" +if (-X zcat) then + zcat --version >& /dev/null + if ($status != 0) then + complete zcat n/*/f:*.Z/ + else + complete zcat c/--/"(force help license quiet version)"/ \ + c/-/"(f h L q V -)"/ \ + n/*/f:*.{gz,Z,z,zip}/ + endif +endif + +complete finger c/*@/\$hosts/ n/*/u/@ +complete ping p/1/\$hosts/ +complete traceroute p/1/\$hosts/ + +complete {talk,ntalk,phone} \ + p/1/'`users | tr " " "\012" | uniq`'/ \ + n/*/\`who\ \|\ grep\ \$:1\ \|\ awk\ \'\{\ print\ \$2\ \}\'\`/ + +complete ftp c/-/"(d i g n v)"/ n/-/\$hosts/ p/1/\$hosts/ n/*/n/ + +# this one is simple... +#complete rcp c/*:/f/ C@[./\$~]*@f@ n/*/\$hosts/: +# From Michael Schroeder +# This one will rsh to the file to fetch the list of files! +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/:' + +complete dd \ + c/--/"(help version)"/ c/[io]f=/f/ \ + c/conv=*,/"(ascii ebcdic ibm block unblock \ + lcase notrunc ucase swab noerror sync)"/,\ + c/conv=/"(ascii ebcdic ibm block unblock \ + lcase notrunc ucase swab noerror sync)"/,\ + c/*=/x:''/ \ + n/*/"(if of conv ibs obs bs cbs files skip file seek count)"/= + +complete nslookup p/1/x:''/ p/2/\$hosts/ + +complete ar \ + c/[dmpqrtx]/"(c l o u v a b i)"/ \ + p/1/"(d m p q r t x)"// \ + p/2/f:*.a/ \ + p/*/f:*.o/ + +# these should be merged with the MH completion hacks below - jgotts +complete {refile,sprev,snext,scan,pick,rmm,inc,folder,show} \ + "c@+@F:$HOME/Mail/@" + +# these and interrupt handling from Jaap Vermeulen +complete {rexec,rxexec,rxterm,rmterm} \ + 'p/1/$hosts/' \ + 'c/-/(l L E)/' \ + 'n/-l/u/' \ + 'n/-L/f/' \ + 'n/-E/e/' \ + 'n/*/c/' +complete kill \ + 'c/-/S/' \ + 'c/%/j/' \ + 'n/*/`ps -u $LOGNAME | awk '"'"'{print $1}'"'"'`/' + +# these from Marc Horowitz +complete attach \ + 'n/-mountpoint/d/' \ + 'n/-m/d/' \ + 'n/-type/(afs nfs rvd ufs)/' \ + 'n/-t/(afs nfs rvd ufs)/' \ + 'n/-user/u/' \ + 'n/-U/u/' \ + 'c/-/(verbose quiet force printpath lookup debug map nomap remap zephyr \ + nozephyr readonly write mountpoint noexplicit explicit type \ + mountoptions nosetuid setuid override skipfsck lock user host)/' \ + 'n/-e/f/' \ + 'n/*/()/' +complete hesinfo \ + 'p/1/u/' \ + 'p/2/(passwd group uid grplist pcap pobox cluster filsys sloc service)/' + +complete ./configure \ + 'c@--{prefix,exec-prefix,bindir,sbindir,libexecdir,datadir,sysconfdir,sharedstatedir,localstatedir,infodir,mandir,srcdir,x-includes,x-libraries}=*@x:'@ \ + 'c/--cachefile=*/x:/' \ + 'c/--{enable,disable,with}-*/x://' \ + 'c/--*=/x://' \ + 'c/--/(prefix= exec-prefix= bindir= sbindir= libexecdir= datadir= \ + sysconfdir= sharedstatedir= localstatedir= infodir= mandir= \ + srcdir= x-includes= x-libraries= cachefile= enable- disable- \ + with- help no-create quiet silent version verbose )//' + +complete gs \ + 'c/-sDEVICE=/(x11 cdjmono cdj550 epson eps9high epsonc dfaxhigh dfaxlow \ + laserjet ljet4 sparc pbm pbmraw pgm pgmraw ppm ppmraw bit)/' \ + 'c/-sOutputFile=/f/' 'c/-s/(DEVICE OutputFile)/=' \ + 'c/-d/(NODISPLAY NOPLATFONTS NOPAUSE)/' 'n/*/f/' +complete perl 'n/-S/c/' +complete sccs \ + p/1/"(admin cdc check clean comb deledit delget delta diffs edit enter \ + fix get help info print prs prt rmdel sccsdiff tell unedit unget \ + val what)"/ + +complete printenv 'n/*/e/' +complete setenv 'p/1/e/' 'c/*:/f/' + +# these and method of setting hosts from Kimmo Suominen +if ( -f "$HOME/.mh_profile" && -X folders ) then + if ( ! $?FOLDERS ) setenv FOLDERS "`folders -fast -recurse`" + if ( ! $?MHA ) setenv MHA "`ali | sed -e '/^ /d' -e 's/:.*//'`" + + set folders = ( $FOLDERS ) + set mha = ( $MHA ) + + complete ali \ + 'c/-/(alias nolist list nonormalize normalize nouser user help)/' \ + 'n,-alias,f,' + + complete anno \ + 'c/-/(component noinplace inplace nodate date text help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete burst \ + 'c/-/(noinplace inplace noquiet quiet noverbose verbose help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete comp \ + 'c/-/(draftfolder draftmessage nodraftfolder editor noedit file form nouse use whatnowproc nowhatnowproc help)/' \ + 'c,+,$folders,' \ + 'n,-whatnowproc,c,' \ + 'n,-file,f,'\ + 'n,-form,f,'\ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete dist \ + 'c/-/(noannotate annotate draftfolder draftmessage nodraftfolder editor noedit form noinplace inplace whatnowproc nowhatnowproc help)/' \ + 'c,+,$folders,' \ + 'n,-whatnowproc,c,' \ + 'n,-form,f,'\ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete folder \ + 'c/-/(all nofast fast noheader header nopack pack noverbose verbose norecurse recurse nototal total noprint print nolist list push pop help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete folders \ + 'c/-/(all nofast fast noheader header nopack pack noverbose verbose norecurse recurse nototal total noprint print nolist list push pop help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete forw \ + 'c/-/(noannotate annotate draftfolder draftmessage nodraftfolder editor noedit filter form noformat format noinplace inplace digest issue volume whatnowproc nowhatnowproc help)/' \ + 'c,+,$folders,' \ + 'n,-whatnowproc,c,' \ + 'n,-filter,f,'\ + 'n,-form,f,'\ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete inc \ + 'c/-/(audit file noaudit nochangecur changecur file form format nosilent silent notruncate truncate width help)/' \ + 'c,+,$folders,' \ + 'n,-audit,f,'\ + 'n,-form,f,' + + complete mark \ + 'c/-/(add delete list sequence nopublic public nozero zero help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete mhmail \ + 'c/-/(body cc from subject help)/' \ + 'n,-cc,$mha,' \ + 'n,-from,$mha,' \ + 'n/*/$mha/' + + complete mhpath \ + 'c/-/(help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete msgchk \ + 'c/-/(nodate date nonotify notify help)/' + + complete msh \ + 'c/-/(prompt noscan scan notopcur topcur help)/' + + complete next \ + 'c/-/(draft form moreproc nomoreproc length width showproc noshowproc header noheader help)/' \ + 'c,+,$folders,' \ + 'n,-moreproc,c,' \ + 'n,-showproc,c,' \ + 'n,-form,f,' + + complete packf \ + 'c/-/(file help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete pick \ + 'c/-/(and or not lbrace rbrace cc date from search subject to othercomponent after before datefield sequence nopublic public nozero zero nolist list help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete prev \ + 'c/-/(draft form moreproc nomoreproc length width showproc noshowproc header noheader help)/' \ + 'c,+,$folders,' \ + 'n,-moreproc,c,' \ + 'n,-showproc,c,' \ + 'n,-form,f,' + + complete prompter \ + 'c/-/(erase kill noprepend prepend norapid rapid nodoteof doteof help)/' + + complete refile \ + 'c/-/(draft nolink link nopreserve preserve src file help)/' \ + 'c,+,$folders,' \ + 'n,-file,f,'\ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete rmf \ + 'c/-/(nointeractive interactive help)/' \ + 'c,+,$folders,' + + complete rmm \ + 'c/-/(help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete scan \ + 'c/-/(noclear clear form format noheader header width noreverse reverse file help)/' \ + 'c,+,$folders,' \ + 'n,-form,f,'\ + 'n,-file,f,'\ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete send \ + 'c/-/(alias draft draftfolder draftmessage nodraftfolder filter nofilter noformat format noforward forward nomsgid msgid nopush push noverbose verbose nowatch watch width help)/' \ + 'n,-alias,f,'\ + 'n,-filter,f,' + + complete show \ + 'c/-/(draft form moreproc nomoreproc length width showproc noshowproc header noheader help)/' \ + 'c,+,$folders,' \ + 'n,-moreproc,c,' \ + 'n,-showproc,c,' \ + 'n,-form,f,'\ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete sortm \ + 'c/-/(datefield textfield notextfield limit nolimit noverbose verbose help)/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete vmh \ + 'c/-/(prompt vmhproc novmhproc help)/' \ + 'n,-vmhproc,c,' + + complete whatnow \ + 'c/-/(draftfolder draftmessage nodraftfolder editor noedit prompt help)/' + + complete whom \ + 'c/-/(alias nocheck check draft draftfolder draftmessage nodraftfolder help)/' \ + 'n,-alias,f,' + + complete plum \ + 'c/-/()/' \ + 'c,+,$folders,' \ + 'n,*,`(mark | sed "s/:.*//" ; echo next cur prev first last)|tr " " "\012" | sort -u`,' + + complete mail \ + 'c/-/()/' \ + 'n/*/$mha/' + +endif + +#from Dan Nicolaescu +if ( $?MODULESHOME ) then + alias Compl_module \ + 'find ${MODULEPATH:as/:/ /} -name .version -o -name .modulea\* -prune \ + -o -print | sed `echo "-e s@${MODULEPATH:as%:%/\*@@g -e s@%}/\*@@g"`' + complete module \ + 'p%1%(add load unload switch display avail use unuse update purge list \ + clear help initadd initrm initswitch initlist initclear)%' \ + 'n%{unl*,sw*,inits*}%`echo "$LOADEDMODULES:as/:/ /"`%' \ + 'n%{lo*,di*,he*,inita*,initr*}%`eval Compl_module`%' \ + 'N%{sw*,initsw*}%`eval Compl_module`%' \ + 'C%-%(-append)%' \ + 'n%{use,unu*,av*}%d%' \ + 'n%-append%d%' \ + 'C%[^-]*%`eval Compl_module`%' +endif - # from George Cox - complete acroread 'p/*/f:*.{pdf,PDF}/' - complete apachectl 'c/*/(start stop restart fullstatus status graceful \ - configtest help)/' - complete appletviewer 'p/*/f:*.class/' - complete bison 'c/--/(debug defines file-prefix= fixed-output-files \ - help name-prefix= no-lines no-parser output= \ - token-table verbose version yacc)/' \ - 'c/-/(b d h k l n o p t v y V)/' 'n/-b/f/' 'n/-o/f/' \ - 'n/-p/f/' - complete bzcat c/--/"(help test quiet verbose license version)"/ \ +# from George Cox +complete acroread 'p/*/f:*.{pdf,PDF}/' +complete apachectl 'c/*/(start stop restart fullstatus status graceful \ + configtest help)/' +complete appletviewer 'p/*/f:*.class/' +complete bison 'c/--/(debug defines file-prefix= fixed-output-files \ + help name-prefix= no-lines no-parser output= \ + token-table verbose version yacc)/' \ + 'c/-/(b d h k l n o p t v y V)/' \ + 'n/-b/f/' 'n/-o/f/' 'n/-p/f/' +complete bzcat c/--/"(help test quiet verbose license version)"/ \ c/-/"(h t L V -)"/ n/*/f:*.{bz2,tbz}/ - complete bunzip2 c/--/"(help keep force test stdout quiet verbose \ - license version)"/ c/-/"(h k f t c q v L V -)"/ \ +complete bunzip2 c/--/"(help keep force test stdout quiet verbose \ + license version)"/ \ + c/-/"(h k f t c q v L V -)"/ \ n/*/f:*.{bz2,tbz}/ - complete bzip2 c/--/"(help decompress compress keep force test \ - stdout quiet verbose license version small)"/ \ +complete bzip2 c/--/"(help decompress compress keep force test \ + stdout quiet verbose license version small)"/ \ c/-/"(h d z k f t c q v L V s 1 2 3 4 5 6 7 8 9 -)"/ \ n/{-d,--decompress}/f:*.{bz2,tbz}/ \ N/{-d,--decompress}/f:*.{bz2,tbz}/ n/*/f:^*.{bz2,tbz}/ - complete c++ 'p/*/f:*.{c++,cxx,c,cc,C,cpp}/' - complete co 'p@1@`\ls -1a RCS | sed -e "s/\(.*\),v/\1/"`@' - complete crontab 'n/-u/u/' - complete camcontrol 'p/1/(cmd debug defects devlist eject inquiry \ - modepage negotiate periphlist rescan reset start \ - stop tags tur)/' - complete ctlinnd 'p/1/(addhist allow begin cancel changegroup \ - checkfile drop feedinfo flush flushlogs go hangup \ - logmode mode name newgroup param pause readers refile \ - reject reload renumber reserve rmgroup send shutdown \ - kill throttle trace xabort xexec)/' - complete cvs 'c/--/(help help-commands help-synonyms)/' \ - 'p/1/(add admin annotate checkout commit diff \ - edit editors export history import init log login \ - logout rdiff release remove rtag status tag unedit \ - update watch watchers)/' 'n/-a/(edit unedit commit \ - all none)/' 'n/watch/(on off add remove)/' - complete svn 'C@file:///@`'"${HOME}/etc/tcsh/complete.d/svn"'`@@' \ +complete c++ 'p/*/f:*.{c++,cxx,c,cc,C,cpp}/' +complete co 'p@1@`\ls -1a RCS | sed -e "s/\(.*\),v/\1/"`@' +complete crontab 'n/-u/u/' +complete camcontrol 'p/1/(cmd debug defects devlist eject inquiry \ + modepage negotiate periphlist rescan reset \ + start stop tags tur)/' +complete ctlinnd 'p/1/(addhist allow begin cancel changegroup \ + checkfile drop feedinfo flush flushlogs go \ + hangup logmode mode name newgroup param pause \ + readers refile reject reload renumber reserve \ + rmgroup send shutdown kill throttle trace \ + xabort xexec)/' +complete cvs 'c/--/(help help-commands help-synonyms)/' \ + 'p/1/(add admin annotate checkout commit diff edit \ + editors export history import init log login \ + logout rdiff release remove rtag status tag \ + unedit update watch watchers)/' \ + 'n/-a/(edit unedit commit all none)/' \ + 'n/watch/(on off add remove)/' +complete svn 'C@file:///@`'"${HOME}/etc/tcsh/complete.d/svn"'`@@' \ 'n@ls@(file:/// svn+ssh:// svn://)@@' \ - 'n@help@(add blame cat checkout \ - cleanup commit copy delete export help \ - import info list ls lock log merge mkdir \ - move propdel propedit propget proplist \ - propset resolved revert status switch unlock \ - update)@' 'p@1@(add blame cat checkout \ - cleanup commit copy delete export help \ - import info list ls lock log merge mkdir \ - move propdel propedit propget proplist \ - propset resolved revert status switch unlock \ - update)@' - complete cxx 'p/*/f:*.{c++,cxx,c,cc,C,cpp}/' - complete detex 'p/*/f:*.tex/' - complete edquota 'n/*/u/' - complete exec 'p/1/c/' - complete ghostview 'p/*/f:*.ps/' - complete gv 'p/*/f:*.ps/' - complete ifconfig 'p@1@`ifconfig -l`@' 'n/*/(range phase link netmask \ - mtu vlandev vlan metric mediaopt down delete \ - broadcast arp debug)/' - complete imake 'c/-I/d/' - complete ipfw 'p/1/(flush add delete list show zero)/' \ + 'n@help@(add blame cat checkout cleanup commit copy \ + delete export help import info list ls \ + lock log merge mkdir move propdel propedit \ + propget proplist propset resolved revert \ + status switch unlock update)@' \ + 'p@1@(add blame cat checkout cleanup commit copy \ + delete export help import info list ls lock \ + log merge mkdir move propdel propedit propget \ + proplist propset resolved revert status switch \ + unlock update)@' + +complete cxx 'p/*/f:*.{c++,cxx,c,cc,C,cpp}/' +complete detex 'p/*/f:*.tex/' +complete edquota 'n/*/u/' +complete exec 'p/1/c/' +complete ghostview 'p/*/f:*.ps/' +complete gv 'p/*/f:*.ps/' +complete ifconfig 'p@1@`ifconfig -l`@' \ + 'n/*/(range phase link netmask mtu vlandev vlan \ + metric mediaopt down delete broadcast arp debug)/' +complete imake 'c/-I/d/' +complete ipfw 'p/1/(flush add delete list show zero)/' \ 'n/add/(allow permit accept pass deny drop reject \ - reset count skipto num divert port tee port)/' - complete javac 'p/*/f:*.java/' - complete ldif2ldbm 'n/-i/f:*.ldif/' - complete libtool 'c/--mode=/(compile execute finish install link \ - uninstall)/' 'c/--/(config debug dry-run features \ - finish help quiet silent version mode=)/' - complete libtoolize 'c/--/(automake copy debug dry-run force help ltdl \ - ltdl-tar version)/' - complete links 'c/-/(assume-codepage async-dns download-dir \ - format-cache-size ftp-proxy help http-proxy \ - max-connections max-connections-to-host \ - memory-cache-size receive-timeout retries \ - unrestartable-receive-timeout version)/' - complete natd c/-/'(alias_address config deny_incoming dynamic \ - inport interface log log_denied log_facility \ - outport outport port pptpalias proxy_only \ - proxy_rule redirect_address redirect_port \ - reverse same_ports unregistered_only use_sockets \ - verbose)'/ 'n@-interface@`ifconfig -l`@' - complete netstat 'n@-I@`ifconfig -l`@' - complete objdump 'c/--/(adjust-vma= all-headers architecture= \ - archive-headers debugging demangle disassemble \ - disassemble-all disassemble-zeroes dynamic-reloc \ - dynamic-syms endian= file-headers full-contents \ - headers help info line-numbers no-show-raw-insn \ - prefix-addresses private-headers reloc section-headers \ - section=source stabs start-address= stop-address= \ - syms target= version wide)/' \ + reset count skipto num divert port tee port)/' +complete javac 'p/*/f:*.java/' +complete ldif2ldbm 'n/-i/f:*.ldif/' +complete libtool 'c/--mode=/(compile execute finish install link \ + uninstall)/' \ + 'c/--/(config debug dry-run features finish help \ + quiet silent version mode=)/' +complete libtoolize 'c/--/(automake copy debug dry-run force help ltdl \ + ltdl-tar version)/' +complete links 'c/-/(assume-codepage async-dns download-dir \ + format-cache-size ftp-proxy help http-proxy \ + max-connections max-connections-to-host \ + memory-cache-size receive-timeout retries \ + unrestartable-receive-timeout version)/' +complete natd c/-/'(alias_address config deny_incoming dynamic \ + inport interface log log_denied log_facility \ + outport outport port pptpalias proxy_only \ + proxy_rule redirect_address redirect_port \ + reverse same_ports unregistered_only use_sockets \ + verbose)'/ \ + 'n@-interface@`ifconfig -l`@' +complete netstat 'n@-I@`ifconfig -l`@' +complete objdump 'c/--/(adjust-vma= all-headers architecture= \ + archive-headers debugging demangle disassemble \ + disassemble-all disassemble-zeroes dynamic-reloc \ + dynamic-syms endian= file-headers full-contents \ + headers help info line-numbers no-show-raw-insn \ + prefix-addresses private-headers reloc \ + section-headers section=source stabs \ + start-address= stop-address= syms target= \ + version wide)/' \ 'c/-/(a h i f C d D p r R t T x s S l w)/' - complete xmodmap 'c/-/(display help grammar verbose quiet n e pm pk \ - pke pp)/' - complete lynx 'c/-/(accept_all_cookies anonymous assume_charset= \ - assume_local_charset= assume_unrec_charset= auth= base \ - book buried_news cache= case cfg= child cookie_file= \ - cookies core crawl debug_partial display= dump editor= \ - emacskeys enable_scrollback error_file= force_html \ - force_secure forms_options from ftp get_data head help \ - hiddenlinks= historical homepage= image_links index= \ - ismap link= localhost mime_header minimal \ - newschunksize= newsmaxchunk= nobrowse nocc nocolor \ - nofilereferer nolist nolog nopause noprint noredir \ - noreferer nostatus number_links partial partial_thres \ - pauth= popup post_data preparsed print pseudo_inlines \ - raw realm reload restrictions= resubmit_posts rlogin \ - selective show_cursor soft_dquotes source stack_dump \ - startfile_ok tagsoup telnet term= tlog trace traversal \ - underscore useragent= validate verbose version vikeys \ - width=)/' 'c/(http|ftp)/$URLS/' - complete gmake 'c/{--directory=,--include-dir=}/d/' \ +complete xmodmap 'c/-/(display help grammar verbose quiet n e pm pk \ + pke pp)/' +complete lynx 'c/-/(accept_all_cookies anonymous assume_charset= \ + assume_local_charset= assume_unrec_charset= \ + auth= base book buried_news cache= case cfg= \ + child cookie_file= cookies core crawl \ + debug_partial display= dump editor= emacskeys \ + enable_scrollback error_file= force_html \ + force_secure forms_options from ftp get_data \ + head help hiddenlinks= historical homepage= \ + image_links index= ismap link= localhost \ + mime_header minimal newschunksize= \ + newsmaxchunk= nobrowse nocc nocolor \ + nofilereferer nolist nolog nopause noprint \ + noredir noreferer nostatus number_links \ + partial partial_thres pauth= popup post_data \ + preparsed print pseudo_inlines raw realm \ + reload restrictions= resubmit_posts rlogin \ + selective show_cursor soft_dquotes source \ + stack_dump startfile_ok tagsoup telnet term= \ + tlog trace traversal underscore useragent= \ + validate verbose version vikeys width=)/' \ + 'c/(http|ftp)/$URLS/' +complete gmake 'c/{--directory=,--include-dir=}/d/' \ 'c/{--assume-new,--assume-old,--makefile,--new-file,--what-if,--file}/f/' \ 'c/--/(assume-new= assume-old= debug directory= \ - dry-run environment-overrides file= help \ - ignore-errors include-dir= jobs[=N] just-print \ - keep-going load-average[=N] makefile= max-load[=N] \ - new-file= no-builtin-rules no-keep-going \ - no-print-directory old-file= print-data-base \ - print-directory question quiet recon silent stop \ - touch version warn-undefined-variables what-if=)/' \ + dry-run environment-overrides file= help \ + ignore-errors include-dir= jobs[=N] just-print \ + keep-going load-average[=N] makefile= \ + max-load[=N] new-file= no-builtin-rules \ + no-keep-going no-print-directory old-file= \ + print-data-base print-directory question quiet \ + recon silent stop touch version \ + warn-undefined-variables what-if=)/' \ 'n@*@`cat -s GNUMakefile Makefile makefile |& sed -n -e "/No such file/d" -e "s/^\([A-Za-z0-9-]*\):.*/\1/p"`@' \ - 'n/=/f/' 'n/-f/f/' - complete mixer p/1/'(vol bass treble synth pcm speaker mic cd mix \ - pcm2 rec igain ogain line1 line2 line3)'/ \ + 'n/=/f/' \ + 'n/-f/f/' +complete mixer p/1/'(vol bass treble synth pcm speaker mic cd mix \ + pcm2 rec igain ogain line1 line2 line3)'/ \ p@2@'`mixer $:-1 | awk \{\ print\ \$7\ \}`'@ - complete mpg123 'c/--/(2to1 4to1 8bit aggressive au audiodevice \ - auth buffer cdr check doublespeed equalizer frames \ - gain halfspeed headphones left lineout list mix mono \ - proxy quiet random rate reopen resync right scale \ - shuffle single0 single1 skip speaker stdout stereo \ - test verbose wav)/' - complete mysqladmin 'n/*/(create drop extended-status flush-hosts \ - flush-logs flush-status flush-tables flush-privileges \ - kill password ping processlist reload refresh \ - shutdown status variables version)/' - complete mutt "c@-f=@F:${HOME}/Mail/@" \ - n/-a/f/ \ - n/-F/f/ n/-H/f/ \ - n/-s/x:''/ \ - n/-e/x:''/ \ - n@-b@'`cat "${HOME}/.muttrc-alias" | awk '"'"'{print $2 }'"'"\`@ \ - n@-c@'`cat "${HOME}/.muttrc-alias" | awk '"'"'{print $2 }'"'"\`@ \ - n@*@'`cat "${HOME}/.muttrc-alias" | awk '"'"'{print $2 }'"'"\`@ - complete ndc 'n/*/(status dumpdb reload stats trace notrace \ - querylog start stop restart )/' - if ($?traditional_complete) then - complete nm \ - 'c/--/(debug-syms defined-only demangle dynamic \ - extern-only format= help line-numbers no-demangle \ - no-sort numeric-sort portability print-armap \ - print-file-name reverse-sort size-sort undefined-only \ - version)/' 'p/*/f:^*.{h,C,c,cc}/' - else - complete nm \ - 'c/--radix=/x:/' \ - 'c/--target=/x:/' \ - 'c/--format=/(bsd sysv posix)/n/' \ - 'c/--/(debugsyms extern-only demangle dynamic print-armap \ - print-file-name numeric-sort no-sort reverse-sort \ - size-sort undefined-only portability target= radix= \ - format= defined-only\ line-numbers no-demangle version \ - help)//' \ - 'n/*/f:^*.{h,c,cc,s,S}/' - endif - complete nmap 'n@-e@`ifconfig -l`@' 'p/*/$hostnames/' - complete perldoc 'n@*@`\ls -1 /usr/libdata/perl/5.*/pod | sed s%\\.pod.\*\$%%`@' - complete postfix 'n/*/(start stop reload abort flush check)/' - complete postmap 'n/1/(hash: regexp:)/' 'c/hash:/f/' 'c/regexp:/f/' - complete rcsdiff 'p@1@`\ls -1a RCS | sed -e "s/\(.*\),v/\1/"`@' - complete X 'c/-/(I a ac allowMouseOpenFail allowNonLocalModInDev \ - allowNonLocalXvidtune ar1 ar2 audit auth bestRefresh \ - bgamma bpp broadcast bs c cc class co core deferglyphs \ - disableModInDev disableVidMode displayID dpi dpms f fc \ - flipPixels fn fp gamma ggamma help indirect kb keeptty \ - ld lf logo ls nolisten string noloadxkb nolock nopn \ - once p pn port probeonly query quiet r rgamma s \ - showconfig sp su t terminate to tst v verbose version \ - weight wm x xkbdb xkbmap)/' - complete users 'c/--/(help version)/' 'p/1/x:""/' - complete vidcontrol 'p/1/(132x25 132x30 132x43 132x50 132x60 40x25 80x25 \ - 80x30 80x43 80x50 80x60 EGA_80x25 EGA_80x43 \ - VESA_132x25 VESA_132x30 VESA_132x43 VESA_132x50 \ - VESA_132x60 VESA_800x600 VGA_320x200 VGA_40x25 \ - VGA_80x25 VGA_80x30 VGA_80x50 VGA_80x60)/' - complete vim 'n/*/f:^*.[oa]/' - complete where 'n/*/c/' - complete which 'n/*/c/' - complete wmsetbg 'c/-/(display D S a b c d e m p s t u w)/' \ - 'c/--/(back-color center colors dither help match \ - maxscale parse scale smooth tile update-domain \ - update-wmaker version workspace)/' - complete xdb 'p/1/c/' - complete xdvi 'c/-/(allowshell debug display expert gamma hushchars \ - hushchecksums hushspecials install interpreter keep \ - margins nogrey noinstall nomakepk noscan paper safer \ - shrinkbuttonn thorough topmargin underlink version)/' \ - 'n/-paper/(a4 a4r a5 a5r)/' 'p/*/f:*.dvi/' - complete xlock 'c/-/(allowaccess allowroot debug description \ - echokeys enablesaver grabmouse grabserver hide inroot \ - install inwindow mono mousemotion nolock remote \ - resetsaver sound timeelapsed use3d usefirst verbose \ - wireframe background batchcount bg bitmap both3d \ - count cycles delay delta3d display dpmsoff \ - dpmsstandby dpmssuspend endCmd erasedelay erasemode \ - erasetime fg font foreground geometry help \ - icongeometry info invalid left3d lockdelay logoutCmd \ - mailCmd mailIcon message messagefile messagefont \ - messagesfile mode name ncolors nice nomailIcon none3d \ - parent password planfont program resources right3d \ - saturation size startCmd timeout username validate \ - version visual)/' 'n/-mode/(ant atlantis ball bat \ - blot bouboule bounce braid bubble bubble3d bug cage \ - cartoon clock coral crystal daisy dclock decay deco \ - demon dilemma discrete drift eyes fadeplot flag flame \ - flow forest galaxy gears goop grav helix hop hyper \ - ico ifs image invert julia kaleid kumppa lament laser \ - life life1d life3d lightning lisa lissie loop lyapunov \ - mandelbrot marquee matrix maze moebius morph3d \ - mountain munch nose pacman penrose petal pipes puzzle \ - pyro qix roll rotor rubik shape sierpinski slip sphere \ - spiral spline sproingies stairs star starfish strange \ - superquadrics swarm swirl tetris thornbird triangle \ - tube turtle vines voters wator wire world worm xjack \ - blank bomb random)/' - complete xfig 'c/-/(display)/' 'p/*/f:*.fig/' - complete wget c/--/"(accept= append-output= background cache= \ - continue convert-links cut-dirs= debug \ - delete-after directory-prefix= domains= \ - dont-remove-listing dot-style= exclude-directories= \ - exclude-domains= execute= follow-ftp \ - force-directories force-html glob= header= help \ - http-passwd= http-user= ignore-length \ - include-directories= input-file= level= mirror \ - no-clobber no-directories no-host-directories \ - no-host-lookup no-parent non-verbose \ - output-document= output-file= passive-ftp \ - proxy-passwd= proxy-user= proxy= quiet quota= \ - recursive reject= relative retr-symlinks save-headers \ - server-response span-hosts spider timeout= \ - timestamping tries= user-agent= verbose version wait=)"/ - - # these from Tom Warzeka - - # this one works but is slow and doesn't descend into subdirectories - # complete cd C@[./\$~]*@d@ \ - # p@1@'`\ls -1F . $cdpath | grep /\$ | sort -u`'@ n@*@n@ - - if ( -r /etc/shells ) then - complete setenv p@1@e@ n@DISPLAY@\$hosts@: n@SHELL@'`cat /etc/shells`'@ - else - complete setenv p@1@e@ n@DISPLAY@\$hosts@: - endif - complete unsetenv n/*/e/ - - set _maildir = /var/mail - if (-r "$HOME/.mailrc") then - complete mail c/-/"(e i f n s u v)"/ c/*@/\$hosts/ \ - "c@+@F:$HOME/Mail@" C@[./\$~]@f@ n/-s/x:''/ \ - n@-u@T:$_maildir@ n/-f/f/ \ - n@*@'`sed -n s/alias//p "$HOME/.mailrc" | \ - tr -s " " " " | cut -f 2`'@ +complete mpg123 'c/--/(2to1 4to1 8bit aggressive au audiodevice auth \ + buffer cdr check doublespeed equalizer frames \ + gain halfspeed headphones left lineout list \ + mix mono proxy quiet random rate reopen resync \ + right scale shuffle single0 single1 skip \ + speaker stdout stereo test verbose wav)/' +complete mysqladmin 'n/*/(create drop extended-status flush-hosts \ + flush-logs flush-status flush-tables \ + flush-privileges kill password ping \ + processlist reload refresh shutdown status \ + variables version)/' + +complete mutt \ + "c@-f=@F:${HOME}/Mail/@" \ + n/-a/f/ \ + n/-F/f/ \ + n/-H/f/ \ + n/-s/x:''/ \ + n/-e/x:''/ \ + n@-b@'`cat "${HOME}/.muttrc-alias" | awk '"'"'{print $2 }'"'"\`@ \ + n@-c@'`cat "${HOME}/.muttrc-alias" | awk '"'"'{print $2 }'"'"\`@ \ + n@*@'`cat "${HOME}/.muttrc-alias" | awk '"'"'{print $2 }'"'"\`@ + +complete ndc 'n/*/(status dumpdb reload stats trace notrace \ + querylog start stop restart )/' + +complete nm \ + 'c/--radix=/x:/' \ + 'c/--target=/x:/' \ + 'c/--format=/(bsd sysv posix)/n/' \ + 'c/--/(debugsyms extern-only demangle dynamic print-armap \ + print-file-name numeric-sort no-sort reverse-sort \ + size-sort undefined-only portability target= radix= \ + format= defined-only\ line-numbers no-demangle version \ + help)//' \ + 'n/*/f:^*.{h,c,cc,s,S}/' + +complete nmap 'n@-e@`ifconfig -l`@' 'p/*/$hostnames/' +complete perldoc 'n@*@`\ls -1 /usr/libdata/perl/5.*/pod | sed s%\\.pod.\*\$%%`@' +complete postfix 'n/*/(start stop reload abort flush check)/' +complete postmap 'n/1/(hash: regexp:)/' 'c/hash:/f/' 'c/regexp:/f/' +complete rcsdiff 'p@1@`\ls -1a RCS | sed -e "s/\(.*\),v/\1/"`@' +complete X 'c/-/(I a ac allowMouseOpenFail allowNonLocalModInDev \ + allowNonLocalXvidtune ar1 ar2 audit auth bestRefresh \ + bgamma bpp broadcast bs c cc class co core deferglyphs \ + disableModInDev disableVidMode displayID dpi dpms f fc \ + flipPixels fn fp gamma ggamma help indirect kb keeptty \ + ld lf logo ls nolisten string noloadxkb nolock nopn \ + once p pn port probeonly query quiet r rgamma s \ + showconfig sp su t terminate to tst v verbose version \ + weight wm x xkbdb xkbmap)/' +complete users 'c/--/(help version)/' 'p/1/x:""/' +complete vidcontrol 'p/1/(132x25 132x30 132x43 132x50 132x60 40x25 80x25 \ + 80x30 80x43 80x50 80x60 EGA_80x25 EGA_80x43 \ + VESA_132x25 VESA_132x30 VESA_132x43 VESA_132x50 \ + VESA_132x60 VESA_800x600 VGA_320x200 VGA_40x25 \ + VGA_80x25 VGA_80x30 VGA_80x50 VGA_80x60)/' +complete vim 'n/*/f:^*.[oa]/' +complete where 'n/*/c/' +complete which 'n/*/c/' +complete wmsetbg 'c/-/(display D S a b c d e m p s t u w)/' \ + 'c/--/(back-color center colors dither help match \ + maxscale parse scale smooth tile update-domain \ + update-wmaker version workspace)/' +complete xdb 'p/1/c/' +complete xdvi 'c/-/(allowshell debug display expert gamma hushchars \ + hushchecksums hushspecials install interpreter keep \ + margins nogrey noinstall nomakepk noscan paper safer \ + shrinkbuttonn thorough topmargin underlink version)/' \ + 'n/-paper/(a4 a4r a5 a5r)/' 'p/*/f:*.dvi/' +complete xlock 'c/-/(allowaccess allowroot debug description \ + echokeys enablesaver grabmouse grabserver hide inroot \ + install inwindow mono mousemotion nolock remote \ + resetsaver sound timeelapsed use3d usefirst verbose \ + wireframe background batchcount bg bitmap both3d \ + count cycles delay delta3d display dpmsoff \ + dpmsstandby dpmssuspend endCmd erasedelay erasemode \ + erasetime fg font foreground geometry help \ + icongeometry info invalid left3d lockdelay logoutCmd \ + mailCmd mailIcon message messagefile messagefont \ + messagesfile mode name ncolors nice nomailIcon none3d \ + parent password planfont program resources right3d \ + saturation size startCmd timeout username validate \ + version visual)/' 'n/-mode/(ant atlantis ball bat \ + blot bouboule bounce braid bubble bubble3d bug cage \ + cartoon clock coral crystal daisy dclock decay deco \ + demon dilemma discrete drift eyes fadeplot flag flame \ + flow forest galaxy gears goop grav helix hop hyper \ + ico ifs image invert julia kaleid kumppa lament laser \ + life life1d life3d lightning lisa lissie loop lyapunov \ + mandelbrot marquee matrix maze moebius morph3d \ + mountain munch nose pacman penrose petal pipes puzzle \ + pyro qix roll rotor rubik shape sierpinski slip sphere \ + spiral spline sproingies stairs star starfish strange \ + superquadrics swarm swirl tetris thornbird triangle \ + tube turtle vines voters wator wire world worm xjack \ + blank bomb random)/' +complete xfig 'c/-/(display)/' 'p/*/f:*.fig/' +complete wget c/--/"(accept= append-output= background cache= \ + continue convert-links cut-dirs= debug \ + delete-after directory-prefix= domains= \ + dont-remove-listing dot-style= exclude-directories= \ + exclude-domains= execute= follow-ftp \ + force-directories force-html glob= header= help \ + http-passwd= http-user= ignore-length \ + include-directories= input-file= level= mirror \ + no-clobber no-directories no-host-directories \ + no-host-lookup no-parent non-verbose \ + output-document= output-file= passive-ftp \ + proxy-passwd= proxy-user= proxy= quiet quota= \ + recursive reject= relative retr-symlinks save-headers \ + server-response span-hosts spider timeout= \ + timestamping tries= user-agent= verbose version wait=)"/ + +# these from Tom Warzeka + +# this one works but is slow and doesn't descend into subdirectories +# complete cd C@[./\$~]*@d@ \ +# p@1@'`\ls -1F . $cdpath | grep /\$ | sort -u`'@ n@*@n@ + +if ( -r /etc/shells ) then + complete setenv p@1@e@ n@DISPLAY@\$hosts@: n@SHELL@'`cat /etc/shells`'@ +else + complete setenv p@1@e@ n@DISPLAY@\$hosts@: +endif +complete unsetenv n/*/e/ + +set _maildir = /var/mail +if (-r "$HOME/.mailrc") then + complete mail c/-/"(e i f n s u v)"/ c/*@/\$hosts/ \ + "c@+@F:$HOME/Mail@" C@[./\$~]@f@ n/-s/x:''/ \ + n@-u@T:$_maildir@ n/-f/f/ \ + n@*@'`sed -n s/alias//p "$HOME/.mailrc" | \ + tr -s " " " " | cut -f 2`'@ +else + complete mail c/-/"(e i f n s u v)"/ c/*@/\$hosts/ \ + "c@+@F:$HOME/Mail@" C@[./\$~]@f@ n/-s/x:''/ \ + n@-u@T:$_maildir@ n/-f/f/ n/*/u/ +endif +unset _maildir + +if (! $?MANPATH) then + if (-r /usr/share/man) then + setenv MANPATH /usr/share/man: else - complete mail c/-/"(e i f n s u v)"/ c/*@/\$hosts/ \ - "c@+@F:$HOME/Mail@" C@[./\$~]@f@ n/-s/x:''/ \ - n@-u@T:$_maildir@ n/-f/f/ n/*/u/ - endif - unset _maildir - - if (! $?MANPATH) then - if (-r /usr/share/man) then - setenv MANPATH /usr/share/man: - else - setenv MANPATH /usr/man: - endif + setenv MANPATH /usr/man: endif +endif - if ($?traditional_complete) then - # use of $MANPATH from Dan Nicolaescu - # use of 'find' adapted from Lubomir Host - complete man \ - 'n@1@`set q = "$MANPATH:as%:%/man1 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.1.\*\$%%`@'\ - 'n@2@`set q = "$MANPATH:as%:%/man2 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.2.\*\$%%`@'\ - 'n@3@`set q = "$MANPATH:as%:%/man3 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.3.\*\$%%`@'\ - 'n@4@`set q = "$MANPATH:as%:%/man4 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.4.\*\$%%`@'\ - 'n@5@`set q = "$MANPATH:as%:%/man5 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.5.\*\$%%`@'\ - 'n@6@`set q = "$MANPATH:as%:%/man6 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.6.\*\$%%`@'\ - 'n@7@`set q = "$MANPATH:as%:%/man7 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.7.\*\$%%`@'\ - 'n@8@`set q = "$MANPATH:as%:%/man8 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.8.\*\$%%`@'\ - 'n@9@`set q = "$MANPATH:as%:%/man9 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.9.\*\$%%`@'\ - 'n@0@`set q = "$MANPATH:as%:%/man0 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.0.\*\$%%`@'\ - 'n@n@`set q = "$MANPATH:as%:%/mann %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.n.\*\$%%`@'\ - 'n@o@`set q = "$MANPATH:as%:%/mano %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.o.\*\$%%`@'\ - 'n@l@`set q = "$MANPATH:as%:%/manl %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.l.\*\$%%`@'\ - 'n@p@`set q = "$MANPATH:as%:%/manp %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.p.\*\$%%`@'\ - c@-@"(- f k M P s S t)"@ n@-f@c@ n@-k@x:''@ n@-[MP]@d@ \ - 'N@-[MP]@`\ls -1 $:-1/man? |& sed -n s%\\..\\+\$%%p`@' \ - 'n@-[sS]@`\ls -1 $MANPATH:as%:% % |& sed -n s%^man%%p | sort -u`@'\ - 'n@*@`find $MANPATH:as%:% % \( -type f -o -type l \) -printf "%f " |& sed -e "s%find: .*: No such file or directory%%" -e "s%\([^\.]\+\)\.\([^ ]*\) %\1 %g"`@' - #n@*@c@ # old way -- commands only - else - complete man n@1@'`\ls -1 /usr/man/man1 | sed s%\\.1.\*\$%%`'@ \ - n@2@'`\ls -1 /usr/man/man2 | sed s%\\.2.\*\$%%`'@ \ - n@3@'`\ls -1 /usr/man/man3 | sed s%\\.3.\*\$%%`'@ \ - n@4@'`\ls -1 /usr/man/man4 | sed s%\\.4.\*\$%%`'@ \ - n@5@'`\ls -1 /usr/man/man5 | sed s%\\.5.\*\$%%`'@ \ - n@6@'`\ls -1 /usr/man/man6 | sed s%\\.6.\*\$%%`'@ \ - n@7@'`\ls -1 /usr/man/man7 | sed s%\\.7.\*\$%%`'@ \ - n@8@'`\ls -1 /usr/man/man8 | sed s%\\.8.\*\$%%`'@ \ - n@9@'`[ -r /usr/man/man9 ] && \ls -1 /usr/man/man9 | sed s%\\.9.\*\$%%`'@ \ - n@0@'`[ -r /usr/man/man0 ] && \ls -1 /usr/man/man0 | sed s%\\.0.\*\$%%`'@ \ - n@new@'`[ -r /usr/man/mann ] && \ls -1 /usr/man/mann | sed s%\\.n.\*\$%%`'@ \ - n@old@'`[ -r /usr/man/mano ] && \ls -1 /usr/man/mano | sed s%\\.o.\*\$%%`'@ \ +if ($?traditional_complete) then + # use of $MANPATH from Dan Nicolaescu + # use of 'find' adapted from Lubomir Host + complete man \ + 'n@1@`set q = "$MANPATH:as%:%/man1 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.1.\*\$%%`@'\ + 'n@2@`set q = "$MANPATH:as%:%/man2 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.2.\*\$%%`@'\ + 'n@3@`set q = "$MANPATH:as%:%/man3 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.3.\*\$%%`@'\ + 'n@4@`set q = "$MANPATH:as%:%/man4 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.4.\*\$%%`@'\ + 'n@5@`set q = "$MANPATH:as%:%/man5 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.5.\*\$%%`@'\ + 'n@6@`set q = "$MANPATH:as%:%/man6 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.6.\*\$%%`@'\ + 'n@7@`set q = "$MANPATH:as%:%/man7 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.7.\*\$%%`@'\ + 'n@8@`set q = "$MANPATH:as%:%/man8 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.8.\*\$%%`@'\ + 'n@9@`set q = "$MANPATH:as%:%/man9 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.9.\*\$%%`@'\ + 'n@0@`set q = "$MANPATH:as%:%/man0 %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.0.\*\$%%`@'\ + 'n@n@`set q = "$MANPATH:as%:%/mann %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.n.\*\$%%`@'\ + 'n@o@`set q = "$MANPATH:as%:%/mano %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.o.\*\$%%`@'\ + 'n@l@`set q = "$MANPATH:as%:%/manl %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.l.\*\$%%`@'\ + 'n@p@`set q = "$MANPATH:as%:%/manp %" ; \ls -1 $q |& sed -e s%^.\*:.\*\$%% -e s%\\.p.\*\$%%`@'\ + c@-@"(- f k M P s S t)"@ n@-f@c@ n@-k@x:''@ n@-[MP]@d@ \ + 'N@-[MP]@`\ls -1 $:-1/man? |& sed -n s%\\..\\+\$%%p`@' \ + 'n@-[sS]@`\ls -1 $MANPATH:as%:% % |& sed -n s%^man%%p | sort -u`@'\ + 'n@*@`find $MANPATH:as%:% % \( -type f -o -type l \) -printf "%f " |& sed -e "s%find: .*: No such file or directory%%" -e "s%\([^\.]\+\)\.\([^ ]*\) %\1 %g"`@' + #n@*@c@ # old way -- commands only +else + complete man n@1@'`\ls -1 /usr/man/man1 | sed s%\\.1.\*\$%%`'@ \ + n@2@'`\ls -1 /usr/man/man2 | sed s%\\.2.\*\$%%`'@ \ + n@3@'`\ls -1 /usr/man/man3 | sed s%\\.3.\*\$%%`'@ \ + n@4@'`\ls -1 /usr/man/man4 | sed s%\\.4.\*\$%%`'@ \ + n@5@'`\ls -1 /usr/man/man5 | sed s%\\.5.\*\$%%`'@ \ + n@6@'`\ls -1 /usr/man/man6 | sed s%\\.6.\*\$%%`'@ \ + n@7@'`\ls -1 /usr/man/man7 | sed s%\\.7.\*\$%%`'@ \ + n@8@'`\ls -1 /usr/man/man8 | sed s%\\.8.\*\$%%`'@ \ +n@9@'`[ -r /usr/man/man9 ] && \ls -1 /usr/man/man9 | sed s%\\.9.\*\$%%`'@ \ +n@0@'`[ -r /usr/man/man0 ] && \ls -1 /usr/man/man0 | sed s%\\.0.\*\$%%`'@ \ +n@new@'`[ -r /usr/man/mann ] && \ls -1 /usr/man/mann | sed s%\\.n.\*\$%%`'@ \ +n@old@'`[ -r /usr/man/mano ] && \ls -1 /usr/man/mano | sed s%\\.o.\*\$%%`'@ \ n@local@'`[ -r /usr/man/manl ] && \ls -1 /usr/man/manl | sed s%\\.l.\*\$%%`'@ \ n@public@'`[ -r /usr/man/manp ]&& \ls -1 /usr/man/manp | sed s%\\.p.\*\$%%`'@ \ - c/-/"(- f k P s t)"/ n/-f/c/ n/-k/x:''/ n/-P/d/ \ - N@-P@'`\ls -1 $:-1/man? | sed s%\\..\*\$%%`'@ n/*/c/ - endif - - complete ps c/-t/x:''/ c/-/"(a c C e g k l S t u v w x)"/ \ - n/-k/x:''/ N/-k/x:''/ n/*/x:''/ - complete compress c/-/"(c f v b)"/ n/-b/x:''/ n/*/f:^*.Z/ - complete uncompress c/-/"(c f v)"/ n/*/f:*.Z/ - - complete uuencode p/1/f/ p/2/x:''/ n/*/n/ - complete uudecode c/-/"(f)"/ n/-f/f:*.{uu,UU}/ p/1/f:*.{uu,UU}/ n/*/n/ - - complete xhost c/[+-]/\$hosts/ n/*/\$hosts/ - complete xpdf c/-/"(z g remote raise quit cmap rgb papercolor \ - eucjp t1lib freetype ps paperw paperh level1 \ - upw fullscreen cmd q v h help)"/ \ - n/-z/x:''/ \ - n/-g/x:''/ n/-remote/x:''/ \ - n/-rgb/x:''/ n/-papercolor/x:''/ \ - n/-{t1lib,freetype}/x:''/ \ - n/-ps/x:''/ n/-paperw/x:''/ \ - n/-paperh/x:''/ n/-upw/x:''/ \ - n/-/f:*.{pdf,PDF}/ \ - N/-{z,g,remote,rgb,papercolor,t1lib,freetype,ps,paperw,paperh,upw}/f:*.{pdf,PDF}/ \ - N/-/x:''/ p/1/f:*.{pdf,PDF}/ p/2/x:''/ - - complete tcsh c/-D*=/'x:'/ c/-D/'x:'/ \ - c/-/"(b c d D e f F i l m n q s t v V x X -version)"/ \ - n/-c/c/ n/{-l,--version}/n/ n/*/'f:*.{,t}csh'/ - - complete rpm c/--/"(query verify nodeps nofiles nomd5 noscripts \ - nogpg nopgp install upgrade freshen erase allmatches \ - notriggers repackage test rebuild recompile initdb \ - rebuilddb addsign resign querytags showrc setperms \ - setugids all file group package querybynumber qf \ - triggeredby whatprovides whatrequires changelog \ - configfiles docfiles dump filesbypkg info last list \ - provides queryformat requires scripts state triggers \ - triggerscripts allfiles badreloc excludepath checksig \ - excludedocs force hash ignoresize ignorearch ignoreos \ - includedocs justdb noorder oldpackage percent prefix \ - relocate replace-files replacepkgs buildroot clean \ - nobuild rmsource rmspec short-circuit sign target \ - help version quiet rcfile pipe dbpath root specfile)"/\ - c/-/"(q V K i U F e ba bb bp bc bi bl bs ta tb tp tc \ - ti tl ts a f g p c d l R s h ? v vv -)"/ \ - n/{-f,--file}/f/ n/{-g,--group}/g/ n/--pipe/c/ n/--dbpath/d/ \ - n/--querybynumber/x:''/ n/--triggeredby/x:''/\ - n/--what{provides,requires}/x:''/ n/--root/d/ \ - n/--{qf,queryformat}/x:''/ n/--buildroot/d/ \ - n/--excludepath/x:''/ n/--prefix/x:''/ \ - n/--relocate/x:''/ n/--target/x:''/\ - n/--rcfile/x:''/ n/--specfile/x:''/ \ - n/{-[iUFep],--{install,upgrade,freshen,erase,package}}/f:*.rpm/ - - # these conform to the latest GNU versions available at press time ... - # updates by John Gotts - if (-X emacs) then - # TW note: if your version of GNU Emacs supports the "--version" option, - # uncomment this line and comment the next to automatically - # detect the version, else set "_emacs_ver" to your version. - #set _emacs_ver=`emacs --version | sed -e 's%GNU Emacs %%' -e q | cut -d . -f1-2` - set _emacs_ver=21.3 - set _emacs_dir=`which emacs | sed s%/bin/emacs%%` - complete emacs c/--/"(batch terminal display no-windows no-init-file \ - user debug-init unibyte multibyte version help \ - no-site-file funcall load eval insert kill)"/ \ - c/-/"(t d nw q u f l -)"/ c/+/x:''/ \ - n/{-t,--terminal}/x:''/ n/{-d,--display}/x:''/ \ - n/{-u,--user}/u/ n/{-f,--funcall}/x:''/ \ - n@{-l,--load}@F:$_emacs_dir/share/emacs/$_emacs_ver/lisp@ \ - n/--eval/x:''/ n/--insert/f/ n/*/f:^*[\#~]/ - unset _emacs_ver _emacs_dir - endif + c/-/"(- f k P s t)"/ n/-f/c/ n/-k/x:''/ n/-P/d/ \ + N@-P@'`\ls -1 $:-1/man? | sed s%\\..\*\$%%`'@ n/*/c/ +endif - complete gzcat c/--/"(force help license quiet version)"/ \ - c/-/"(f h L q V -)"/ n/*/f:*.{gz,Z,z,zip}/ - complete gzip c/--/"(stdout to-stdout decompress uncompress \ - force help list license no-name quiet recurse \ - suffix test verbose version fast best)"/ \ - c/-/"(c d f h l L n q r S t v V 1 2 3 4 5 6 7 8 9 -)"/\ - n/{-S,--suffix}/x:''/ \ - n/{-d,--{de,un}compress}/f:*.{gz,Z,z,zip,taz,tgz}/ \ - N/{-d,--{de,un}compress}/f:*.{gz,Z,z,zip,taz,tgz}/ \ - n/*/f:^*.{gz,Z,z,zip,taz,tgz}/ - complete {gunzip,ungzip} c/--/"(stdout to-stdout force help list license \ - no-name quiet recurse suffix test verbose version)"/ \ - c/-/"(c f h l L n q r S t v V -)"/ \ - n/{-S,--suffix}/x:''/ \ - n/*/f:*.{gz,Z,z,zip,taz,tgz}/ - complete zgrep c/-*A/x:'<#_lines_after>'/ c/-*B/x:'<#_lines_before>'/\ - c/-/"(A b B c C e f h i l n s v V w x)"/ \ - p/1/x:''/ N/-*e/f/ \ - n/-*e/x:''/ n/-*f/f/ n/*/f/ - complete zegrep c/-*A/x:'<#_lines_after>'/ c/-*B/x:'<#_lines_before>'/\ - c/-/"(A b B c C e f h i l n s v V w x)"/ \ - p/1/x:''/ N/-*e/f/ \ - n/-*e/x:''/ n/-*f/f/ n/*/f/ - complete zfgrep c/-*A/x:'<#_lines_after>'/ c/-*B/x:'<#_lines_before>'/\ - c/-/"(A b B c C e f h i l n s v V w x)"/ \ - p/1/x:''/ N/-*e/f/ \ - n/-*e/x:''/ n/-*f/f/ n/*/f/ - complete znew c/-/"(f t v 9 P K)"/ n/*/f:*.Z/ - complete zmore n/*/f:*.{gz,Z,z,zip}/ - complete zfile n/*/f:*.{gz,Z,z,zip,taz,tgz}/ - complete ztouch n/*/f:*.{gz,Z,z,zip,taz,tgz}/ - complete zforce n/*/f:^*.{gz,tgz}/ - - complete dcop 'p/1/`$:0`/ /' \ - 'p/2/`$:0 $:1 | awk \{print\ \$1\}`/ /' \ - 'p/3/`$:0 $:1 $:2 | sed "s%.* \(.*\)(.*%\1%"`/ /' - - - complete grep c/-*A/x:'<#_lines_after>'/ c/-*B/x:'<#_lines_before>'/\ - c/--/"(extended-regexp fixed-regexp basic-regexp \ - regexp file ignore-case word-regexp line-regexp \ - no-messages revert-match version help byte-offset \ - line-number with-filename no-filename quiet silent \ - text directories recursive files-without-match \ - files-with-matches count before-context after-context \ - context binary unix-byte-offsets)"/ \ - 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 \ - v w x)"/ \ - p/1/x:''/ N/-*e/f/ \ - n/-*e/x:''/ n/-*f/f/ n/*/f/ - complete egrep c/-*A/x:'<#_lines_after>'/ c/-*B/x:'<#_lines_before>'/\ - c/--/"(extended-regexp fixed-regexp basic-regexp \ - regexp file ignore-case word-regexp line-regexp \ - no-messages revert-match version help byte-offset \ - line-number with-filename no-filename quiet silent \ - text directories recursive files-without-match \ - files-with-matches count before-context after-context \ - context binary unix-byte-offsets)"/ \ - 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 \ - v w x)"/ \ - p/1/x:''/ N/-*e/f/ \ - n/-*e/x:''/ n/-*f/f/ n/*/f/ - complete fgrep c/-*A/x:'<#_lines_after>'/ c/-*B/x:'<#_lines_before>'/\ - c/--/"(extended-regexp fixed-regexp basic-regexp \ - regexp file ignore-case word-regexp line-regexp \ - no-messages revert-match version help byte-offset \ - line-number with-filename no-filename quiet silent \ - text directories recursive files-without-match \ - files-with-matches count before-context after-context \ - context binary unix-byte-offsets)"/ \ - 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 \ - v w x)"/ \ - p/1/x:''/ N/-*e/f/ \ - n/-*e/x:''/ n/-*f/f/ n/*/f/ - - complete sed c/--/"(quiet silent version help expression file)"/ \ - c/-/"(n V e f -)"/ n/{-e,--expression}/x:'