diff options
author | Paul Ackersviller <packersv@users.sourceforge.net> | 2007-04-12 03:07:53 +0000 |
---|---|---|
committer | Paul Ackersviller <packersv@users.sourceforge.net> | 2007-04-12 03:07:53 +0000 |
commit | ef49f45c7fde6f13945a12ae34086c717f1b308f (patch) | |
tree | 48aa33bee8e3ddca0999a85fe57ea1f1b9056e1f /Completion/Unix | |
parent | a7589435512f24fce13ba09ffe204eee4b356e6e (diff) | |
download | zsh-ef49f45c7fde6f13945a12ae34086c717f1b308f.tar.gz zsh-ef49f45c7fde6f13945a12ae34086c717f1b308f.tar.xz zsh-ef49f45c7fde6f13945a12ae34086c717f1b308f.zip |
Merge from trunk of workers/{22052,22309,22425}.
Diffstat (limited to 'Completion/Unix')
-rw-r--r-- | Completion/Unix/Command/_surfraw | 432 |
1 files changed, 426 insertions, 6 deletions
diff --git a/Completion/Unix/Command/_surfraw b/Completion/Unix/Command/_surfraw index 20c8349d0..89da0b8e5 100644 --- a/Completion/Unix/Command/_surfraw +++ b/Completion/Unix/Command/_surfraw @@ -1,15 +1,435 @@ #compdef surfraw sr -_arguments \ +local curcontext="$curcontext" expl state line args ret=1 + +_arguments -C -A \ '-browser=[set browser]:browser:_command_names' \ - '-elvi[list Surfraw mechanisms for conquering evil]' \ + '-elvi[list web sites that can be searched]' \ '-escape-url-args=[apply url escaping to arguments]:bool:(yes no)' \ '(-g -graphical)'{-g,-graphical}'[get some windowed sin]' \ - '-p0rn=[yes, yes, harder, deeper, faster, oh baybe]:bool:(yes no)' \ - '-help' \ + '-help[display help information]' \ '-quiet:bool:(yes no)' \ '-new[start in a new window]' \ '(-t -text)'{-t,-text}'[back to the yellow brick road]' \ '(-q -quote)'{-q,-quote}'[quote arguments with quote characters]' \ - '-version[display Surfraw version]' \ - ':elvi: compadd ${${(f)"$(surfraw -elvi)"}%%[[:space:]]##--*}' + '-version[display version information]' \ + ':elvi:->elvi' \ + '*::arg:->subcmd' && ret=0 + +case $state in + subcmd) + args=( + '-help[display help information]' + '*:string:_guard "^-*" "search string"' + ) + case "$words[1]" in + ask|cia|cnn|deblogs|excite|filesearching|foldoc|happypenguin|slashdot|slinuxdoc|sundocs|sunsolve|xxx) + _message -e string 'search string' + ;; + alioth) + _arguments $args \ + '-type=-:search type:(soft skill people)' && ret=0 + ;; + altavista) + _arguments $args \ + '-results=-:[number of results to return]' && ret=0 + ;; + amazon) + _arguments $args \ + '-country=-:country code:(uk de fr jp us)' \ + '-search=-:topic:(all auctions books cars classical \ + dvd electronics garden kitchen music \ + outlet photo software toys tools \ + vhs videogames zshops wireless)' && ret=0 + ;; + austlii) + _arguments $args \ + '-method=-:search method:(any all phrase title boolean)' \ + '-results=-:[number of results to return]:number' && ret=0 + ;; + bbcnews) + _arguments $args \ + '-scope=-:search scope:(world uk)' && ret=0 + ;; + cddb) + _arguments $args \ + '-artists[search artists]' \ + '-albums[search albulms]' \ + '-songs[search songs]' \ + '-all[search all artists, albums and songs]' && ret=0 + ;; + cite) + _arguments \ + '-results=-:[number of results to return]' \ + '*:search string' && ret=0 + ;; + ctan) + _arguments $args \ + '-name[Search by filename]' \ + '-desc[Search descriptions (default)]'\ + '-doc[Search documentation]' + ;; + currency) + _arguments \ + '-l[List all known currency symbols]' \ + '-from=-:currency symbol:(EUR USD GBP CAD AUD JPY INR NZD CHF ZAR)' \ + '-to=-:currency symbol:(EUR USD GBP CAD AUD JPY INR NZD CHF ZAR)' \ + '*:currency amount' && ret=0 + ;; + cve) + _message -e numbers 'CVE Number' + ;; + debbugs) + _arguments \ + '-search=:search type:(pkg src bug maint tag submitter severity tag)' \ + '-arc[show archived bugs]' \ + '-raw[do not sort by status or severity]' \ + '-rb[reverse order of bugs shown]' \ + '-rst[reverse order of statuses shown]' \ + '-rse[reverse order of severities shown]' \ + '-merge[sisplay merged bugs only once]' \ + '-nohead[so not show table of contents header]' \ + '-nofoot[so not show statistics in the footer]' \ + '-mbox[view results in mbox format]' \ + '-incstat=-[include given status list]:status:_values -s , status open + forwarded pending fixed done' \ + '-exstat=-[exclude given status list]:status:_values -s , status open + forwarded pending fixed done' \ + '-incsev=-[include given severities]:severity:_values -s , severity + critical grave serious important normal minor wishlist fixed' \ + '-exsev=-[exclude given severities]:severity:_values -s , severity + critical grave serious important normal minor wishlist fixed' \ + '-inctag=-[include given tags]:tag:_values -s , tag potato woody sarge + sarge-ignore sid experimental confirmed d-i fixed + fixed-in-experimental fixed-upstream help moreinfo patch pending + security unreproducible upstream wontfix' \ + '-extag=-[exclude given tags]:tag:_values -s , tag potato woody sarge + sarge-ignore sid experimental confirmed d-i fixed + fixed-in-experimental fixed-upstream help moreinfo patch pending + security unreproducible upstream wontfix' \ + '*:package:_deb_packages avail' && ret=0 + ;; + debcontents) + _arguments \ + '-arch=-[search specific architecture]:architecture:(i386 m68k alpha sparc powerpc arm)' \ + '-distro=-[search specific distribution]:distribution:(stable testing unstable)' \ + '*:package:_deb_packages avail' && ret=0 + ;; + deblists) + _arguments $args \ + '-shelp[go to search help page]' \ + '-results=-[specifiy number of results to return]:number' \ + '-dates=-[quarters to search]:date' \ + '-case[use case sensitive search]' \ + '-errors=-[specify errors allowed]:errors:(0 1 2 best)' \ + '-partial[allow partial matches]' \ + '-sameline[semi-colon separated words must appear on same line]' \ + '-lines=-[specify maximum lines per message]:lines:(0 5 10 50 100)' \ + '-list=-[specify list to search]:list:(68k accessibility admintool + alpha amd64 announce apache arm autobuild beowulf books boot bsd + cd cd-vendors cdwrite changes chinese chinese-big5 chinese-gb + commercial consultants ctte curiosa custom dak debbugs deity + desktop devel devel-announce devel-changes devel-french + devel-games devel-italian devel-m68k-changes devel-portuguese + devel-powerpc-changes devel-s390-changes devel-spanish + devel-sparc-changes doc dpkg edu emacsen embedded esperanto + events-eu events-na faq firewall french gcc glibc gtk-gnome hams + handheld hppa hurd i18n ia64 ipv6 isp italian japanese java jr kde + kernel l10n-arabic l10n-catalan l10n-czech l10n-danish l10n-dutch + l10n-english l10n-finnish l10n-french l10n-german l10n-greek + l10n-hungarian l10n-italian l10n-korean l10n-polish + l10n-portuguese l10n-romanian l10n-russian l10n-spanish + l10n-turkish laespiral laptop lcs-eng legal lex lint-maint lsb + lsb-confcall lsb-discuss lsb-impl lsb-spec lsb-test med mentors + mips mirrors multimedia newmaint newmaint-admin newmaint-discuss + news news-french news-german news-portuguese nonprofit ocaml-maint + openoffice parisc perl pilot policy pool powerpc project publicity + python qa qa-packages qa-private qt-kde release ruby russian s390 + s390-changes security security-announce sgml simplified-chinese + snapshots sparc sparc-changes spi-announce spi-general ssh superh + testing tetex-maint toolchain ultralinux user user-catalan + user-danish user-de user-french user-german user-icelandic + user-indonesian user-polish user-portuguese user-spanish + user-swedish user-turkish user-ukrainian vgui-discuss vote win32 + wnpp women www x)' && ret=0 + ;; + debpackages) + _arguments \ + '-release=-:Search release:(all main non-US contrib non-free)' \ + '-distro=-:Search distribution:(all stable testing unstable)' \ + '*:package:_deb_packages avail' && ret=0 + ;; + debpts) + _arguments $args \ + '-doc[view PTS documentation]' && ret=0 + ;; + debsec) + _message -e string 'package name, bug number or CVE ID' + ;; + deja) + _arguments $args \ + '-results=-:[number of results to return]' \ + '-m[search for Message-ID]' && ret=0 + ;; + dmoz) + _arguments $args \ + '-cat=-[specify category]:category:(All Arts Business Computers Games + Health Home Kids_and_Teens News Recreation Reference Regional + Science Shopping Society Sports World Adult)' \ + '-type=-:type:((c\:categories\ only s\:sites\ only b\:both))' \ + '-kids[sites for kids]' \ + '-teens[sites for teens]' \ + '-mteens[sites for mature teens]' && ret=0 + ;; + ebay) + _arguments $args \ + '-country=-:country:(com de uk fr)' \ + '-results=-:[number of results to return]:number' && ret=0 + ;; + etym) + _wanted dictword expl 'dictionary word' \ + compadd $(look "${PREFIX}") && ret=0 + ;; + fast) + _arguments $args \ + '-type=-:search type:(all any phrase)' && ret=0 + ;; + freebsd) + _arguments $args \ + '-mail=-[search mailing lists]:enable:(yes no)' \ + '-gg=-[search [Google Groups]:enable:(yes no)' \ + '-pr=-[query problem reports]:enable:(yes no)' \ + '-cvs=-[query cvsweb]:enable:(yes no)' \ + '-mid=-[query mailing lists by Message-ID]:enable:(yes no)' \ + '-ps=-[go to the port survey page]:enable:(yes no)' \ + '-prs=-[go to the problem report survey page]:enable:(yes no)' \ + '-elogs=-[go to the build error logs page]:enable:(yes no)' && ret=0 + ;; + freedb) + _arguments $args \ + '-artists[search artists]' \ + '-albums[search albums]' \ + '-songs[search songs]' \ + '-rest[search the rest of the data]' \ + '-all[search all fields]' \ + '-bycat[sort results by category]' \ + '*-cat=-:category:(all blues classical country data folk + jazz misc newage reggae rock soundtrack)' && ret=0 + ;; + freshmeat) + _deb_packages avail && ret=0 + ;; + fsfdir) + _arguments $args + ;; + google) + _arguments $args \ + '(-l --lucky)'{-l,--lucky}'[feeling lucky?]' \ + '-results=-:[number of results to return]:' \ + '-search=-:topic:(bsd linux mac unclesam)' && ret=0 + ;; + gutenberg) + _arguments $args \ + '-title[Search titles (default)]' + '-author[Search authors]' + '-num[Search etext numbers]' + ;; + imdb) + _arguments $args \ + '-category=-:category:(All Titles MyMovies People Characters Quotes Bios Plots)' && ret=0 + ;; + ixquick) + _arguments $args \ + '-search=-:search type:(web pics)' \ + '-lang=-:language:(english dansk deutsch espanol francais italiano nederlands norsk polski portugues suomi svenska turkce jiantizhongwen nihongo fantizhengwen hangul)' + ;; + jake) + _arguments $args \ + '-method=-:search type:(title issn)' \ + '-volume=-:volume' \ + '-issue=-:issue' \ + '-spage=-:start page' \ + '-epage=-:end page' \ + '-year=-:year' && ret=0 + ;; + leodict) + _arguments \ + '-tol=:special character tolerance:(off standard high)' \ + '-to=:language:(de en either)' \ + '-lang=:Webpage is in this language:(en de)' \ + '-link=:Link results:(on off)' \ + '-head=:Display headlines:(on off)' \ + '-grid=:Show results in grid:(on off)' \ + '-spell=:Spelling tolerance:(off standard force)' \ + '*:dictionary word:->dictword' && ret=0 + + [[ "$state" = dictword ]] && _wanted words expl 'dictionary word' \ + compadd $(look "${PREFIX}") && ret=0 + ;; + netbsd|openbsd) + _arguments $args \ + '-mail=-[search mailinglists]:enable:(no yes)' \ + '-pr=-[query problem reports]:enable:(no yes)' && ret=0 + ;; + pgpkeys) + _arguments \ + '-s[display key signatures]' \ + '*:KeyID or email' && ret=0 + ;; + pubmed) + _arguments $args \ + '-db=-:[specify database]:database:(PubMed Nucleotide Protein Genome + Structure Popset)' && ret=0 + ;; + rfc) + _arguments $args \ + '-results=-:[specify number of results to return]:number' \ + '-pdf[return files as PDFs]' \ + '-rev[reverse order of results]' \ + '-exact[match exact words (instead of prefixes)]' \ + '-abs[show abstracts]' \ + '-keywords[show keywords]' \ + "-nodirect[don't try and go direct to RFC]" \ + '-ftp[retrieve RFCs via FTP instead of HTTP]' \ + '-field=-:search field:(all number title author keyword)' \ + '-search=-:collection:(all rfc std bcp fyi)' && ret=0 + ;; + scaleplus) + _arguments $args \ + '-results=-:[number of results to return]' && ret=0 + ;; + sourceforge) + _arguments \ + '-exact=-[require all words}:enable:(yes no)' \ + '-type=:search type:(soft people freshmeat)' \ + '*:project:_deb_packages avail' && ret=0 + ;; + stockquote) + _arguments $args \ + '-provider=-[select quote provider]:provider:(yahoo nasdaq quote)' && ret=0 + ;; + thesaurus|webster) + _wanted words expl 'word' compadd $(look "${PREFIX}") && ret=0 + ;; + rae) + _wanted dictionary expl 'palabra diccionario' \ + compadd $(look "${PREFIX}") && ret=0 + ;; + translate) + _arguments \ + '-from=-:language:(de en es fr it ja ko pt ru zh)' \ + '-to=-:language:(de en es fr it ja ko pt ru zh)' \ + '-provider=-[select translation service provider]:provider:(raging bablefish)' \ + '*:dictionary word:->dictword' && ret=0 + + [[ "$state" = dictword ]] && _wanted words expl 'dictionary word' \ + compadd $(look "${PREFIX}") && ret=0 + ;; + rhyme) + _arguments \ + '-method=-:type of word correlation:(perfect syn hom cons rel sub spell pic shake def)' \ + '*:dictionary word:->dictword' && ret=0 + + [[ "$state" = dictword ]] && _wanted words expl 'dictionary word' \ + compadd $(look "${PREFIX}") && ret=0 + ;; + w3css) + _arguments \ + '-warnings=-[specify level of warnings displayed]:warning level:(all normal important none)' \ + '-profile=-:CSS profile:(none css1 css2 css3 svg svgbasic svgtiny mobile atsv-tv tv)' \ + '-medium=-:user medium:(all aural braille embossed handheld print projection + screen tty tv presentation)' \ + :URL:_urls && ret=0 + ;; + w3html) + _arguments \ + '-usage[go to validator help page]' \ + '-encoding=-[set page encoding]' \ + '-encfb[fall back to encoding rather than override]' \ + '-doctype=-":[set page doctype]:' \ + '-docfb[fall back to doctype rather than override]' \ + '-nv[be less verbose]' \ + '-showsource[show page source]' \ + '-showoutline[show page outline (headings)]' \ + '-showparsetree[show parse tree]' \ + '-excludeatt[exclude attributes from parse tree]' \ + '-err[validate Error (404) pages]' \ + :URL:_urls && ret=0 + ;; + w3link) + _arguments \ + '-r[check linked documents recursively]' \ + '-d=-[recursion depth]:depth' \ + '-s[summary only]' \ + '-hiderd[hide redirects]' \ + '-dhiderd[hide redirects for directories only]' \ + "-nolang[don't send the Accept-Language: header]" \ + '-cookie[save options in a cookie]' \ + :URL:_urls && ret=0 + ;; + w3rdf) + _arguments \ + '-output=-:output type:(Triples Graphs Both)' \ + '-format=-:graph format:(PNG_EMBED PNG_LINK SVG_LINK SVG_EMBED + GIF_EMBED \ GIF_LINK PS_LINK HP_PCL_LINK HP_GL_LINK ISV_ZVTM)' \ + '-savedot[save GraphViz DOT file]' \ + '-ntriples[display triples in N-Triples format]' \ + '-embedded[RDF is not enclosed in <RDF> tags]' \ + '-useme[grant w3c permission to save the RDF for developing test cases]' \ + '-anon[make anonymous nodes unlabelled]' \ + '-fontsize=-:font Size:(10 12 14 16 20)' \ + '-orient=-:orientation:(TB LR)' \ + '-node=-:node Colour:(Black Blue Darkgreen Red)' \ + '-nodetext=-[node text color]:color:(Black Blue Darkgreen Red)' \ + '-arc=-[arc color]:color:(Black Blue Darkgreen Red)' \ + '-arctext=-:[arc text color]:color:(Black Blue Darkgreen Red)' \ + :URL:_urls && ret=0 + ;; + wayback) + _arguments $args \ + '-syear=-[Start search from this year]:year' \ + '-smonth=-:[Start search from this month]:month:(jan feb mar apr may jun jul aug sep oct nov dec)' \ + '-sday=-[Start search from this day]:number' \ + '-eyear=-[End search in this year]:year' \ + '-emonth=-[End search in this month]:month:(jan feb mar apr may jun jul aug sep oct nov dec)' \ + '-eday=-[End search in this day]:number' \ + '-list[List all pages that match search criteria]' \ + '-dups[Show dups]' \ + '-compare[Compare pages]' \ + '-pdf[Show as PDF]' \ + '-alias=-[How to handle site aliases]:alias:(merge show hide)' \ + '-redir=-[How to handle redirections]:redir:(hide flag show)' \ + '-type=-[File type to search for]:type:(image audio video binary text pdf)' + ;; + wetandwild) + _arguments \ + '-city=-[town or City or (US only) zipcode]:' \ + '-country=-[two letter domain-style country code]:' \ + '-state=-[specify state, province or region]:state' && ret=0 + ;; + wikipedia) + _arguments $args \ + '-language=-:[two letter language code]:' && ret=0 + ;; + woffle) + _arguments $args \ + '-method=-:search method:(and or bool)' \ + '-format=-:result format:(short long)' \ + '-sort=-:sort method:(score revscore time revtime title revtitle)' && ret=0 + ;; + yahoo) + _arguments $args \ + '-results=-[specify number of results to return]:number' && ret=0 + ;; + yubnub) + _message -e command 'Yubnub Command' + ;; + esac + ;; + elvi) + _wanted elvi expl elvi compadd \ + ${${${(f)"$(_call_program elvi surfraw -elvi)"}%%[[:space:]]##--*}%:*} && ret=0 + ;; +esac + +return ret |