#compdef surfraw sr local expl _arguments -A \ '-browser=[set browser]:browser:_command_names' \ '-elvi[list Surfraw mechanisms for conquering evil]' \ '-escape-url-args=[apply url escaping to arguments]:bool:(yes no)' \ '(-g -graphical)'{-g,-graphical}'[get some windowed sin]' \ '-help' \ '-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:]]##--*}' \ '*::arg:->subcmd' && return 0 case "$state" in (subcmd) case "$line[1]" in (alioth) _arguments \ '-type=-:Search type:(soft skill people)' \ '*:Search String:->string' ;; (altavista) _arguments \ '-results=-:[Number of results to return]:' \ '*:Search String:->string' ;; (amazon) _arguments \ '-country=-:Two letter domain-style country code:(uk de fr jp us)' \ '-search=-:Specialized search on topic:(all auctions books cars classical \ dvd electronics garden kitchen music \ outlet photo software toys tools \ vhs videogames zshops wireless)' \ '*:Search String:->string' ;; (ask) _message 'Search String' \ '*:Search String:->string' ;; (austlii) _arguments \ '-method=-:Search method:(any all phrase title boolean)' \ '-results=-:[Number of results to return]:' \ '*:Search String:->string' ;; (bbcnews) _arguments \ 'scope=-:Search scope:(world uk)' \ '*:Search String:->string' ;; (cddb) _arguments \ '-artists[Search artists]' \ '-albulms[Search albulms]' \ '-songs[Search songs]' \ '-all[Search all artists, albulms and songs]' \ '*:Search String:->string' ;; (cia) _message 'Search String' \ '*:Search String:->string' ;; (cite) _arguments \ '-results=-:[Number of results to return]:' \ '*:Search String:->string' ;; (cnn) _message 'Search String' \ '*:Search String:->string' ;; (currency) _arguments \ '-l[List all known currency symbols]' \ '-from=-:Symbol for currency to convert from:(EUR USD GBP CAD AUD JPY INR NZD CHF ZAR)' \ '-to=-:Symbol for currency to convert to:(EUR USD GBP CAD AUD JPY INR NZD CHF ZAR)' \ '*:Currency Amount:->string' ;; (cve) _message 'CVE Number' \ '*:CVE Number:->string' ;; (debbugs) _arguments \ '-search=:Search Type:(pkg src bug maint tag submitter)' \ '-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[Display merged bugs only once]' \ '-nohead[Do not show table of contents header]' \ '-nofoot[Do not show statistics in the footer]' \ '-mbox[View results in mbox format]' \ '-incstat=:Include statuses:_values -s , open forwarded pending fixed done' \ '-exstat=-:Exclude statuses:_values -s , open forwarded pending fixed done' \ '-incsev=-:Include severities:_values -s , critical grave serious important \ normal minor wishlist fixed' \ '-exsev=-:Exclude severities:_values -s , critical grave serious important \ normal minor wishlist fixed' \ '-inctag=-:Include tags:_values -s , 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 tags:_values -s , potato woody sarge sarge-ignore sid \ experimental confirmed d-i fixed \ fixed-in-experimental fixed-upstream \ help moreinfo patch pending security \ unreproducible upstream wontfix' _deb_packages avail ;; (debcontents) _arguments \ '-arch=-:Seach specific architecture:(i386 m68k alpha sparc powerpc arm)' \ '-distro=-:Search specific distribution:(stable testing unstable)' _deb_packages avail ;; (deblists) _arguments \ '-shelp[Go to search help page]' \ '-results=-[Number of results to return]' \ '-dates=-[Quarters to search]' \ '-case=-:Case sensitivity:(no yes)' \ '-errors=-:Allowed errors:(0 1 2 best)' \ '-partial:Partial matches:(no yes)' \ '-sameline:Semicolon separated words must appear on same line:(no yes)' \ '-lines=-:Maximum lines per message:(0 5 10 50 100)' \ '-list=-: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)' '*:Search String:->string' ;; (deblogs) _message 'Search String' \ '*:Search String:->string' ;; (debpackages) _arguments \ '-release=-:Search release:(all main non-US contrib non-free)' \ '-distro=-:Search distribution:(all stable testing unstable)' _deb_packages avail ;; (debpts) _arguments \ '-doc[Display documentation]' ;; (deja) _arguments \ '-results=-:[Number of results to return]:' \ '-m[Search for Message-ID]' \ '*:Search String:->string' ;; (dmoz) _arguments \ '-cat=-:Search category:(All Arts Business Computers Games Health Home \ Kids_and_Teens News Recreation Reference Regional \ Science Shopping Society Sports World Adult)' \ '-type=-:Search type:(c s b)' \ '-kids[Sites for kids]' \ '-teens[Sites for teens]' \ '-mteens[Sites for mature teens]' \ '*:Search String:->string' ;; (ebay) _arguments \ '-country=-:Country:(com de uk fr)' \ '-results=-:[Number of results to return]:' \ '*:Search String:->string' ;; (etym) _wanted dictword expl 'dictionary word' \ compadd $(look "${PREFIX}") ;; (excite) _message 'Search String' \ '*:Search String:->string' ;; (fast) _arguments \ '-type=-:Search type:(all any phrase)' \ '*:Search String:->string' ;; (filesearching) _message 'Search String' \ '*:Search String:->string' ;; (foldoc) _message 'Search String' \ '*:Search String:->string' ;; (freebsd) _arguments \ '-mail=-:Search mailinglists:(yes no)' \ '-gg=-:Search mailinglists at Google Groups:(yes no)' \ '-pr=-:Query problem reports:(yes no)' \ '-cvs=-:Query cvsweb:(yes no)' \ '-mid=-:Query mailing lists by Message-ID:(yes no)' \ '-ps=-:Teleport to the Port Survey Page:(yes no)' \ '-prs=-:Teleport to the Problem Report Survey Page:(yes no)' \ '-elogs=-:Teleport to the Build Error Logs Page:(yes no)' \ '*:Search String:->string' ;; (freedb) _arguments \ '-artists[Search artists]' \ '-albulms[Search albulms]' \ '-songs[Search songs]' \ '-rest[Search the rest of the data]' \ '-all[Search all fields]' \ '-bycat[Sort results by category]' \ '*-cat=-:Category to search:(all blues classical country data folk \ jazz misc newage reggae rock soundtrack)' \ '*:Search String:->string' ;; (freshmeat) _deb_packages avail ;; (google) _arguments \ '(-l --lucky)'{-l,--lucky}'[Feeling lucky?]' \ '-results=-:[Number of results to return]:' \ '-search=-:Search on topic:(bsd linux mac unclesam)' \ '*:Search String:->string' ;; (happypenguin) _message 'Search String' \ '*:Search String:->string' ;; (imdb) _arguments \ '-category=-:Category:(All Titles MyMovies People Characters Quotes Bios Plots)' \ '*:Search String:->string' ;; (jake) _arguments \ '-method=-:Search type:(title issn)' \ '-volume=-:[Volume]:' \ '-issue=-:[Issue]:' \ '-spage=-:[Start page]:' \ '-epage=-:[End page]:' \ '-year=-:[Year]:' \ '*:Search String:->string' ;; (leodict) _arguments \ '-tol=:Special character tolerance:(off standard high)' \ '-to=: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' && return 0 case "$state" in (dictword) _wanted dictword expl 'dictionary word' \ compadd $(look "${PREFIX}") ;; esac ;; (netbsd) _arguments \ '-mail=-:Search netbsd mailinglists:(no yes)' \ '-pr=-:Query problem reports:(no yes)' \ '*:Search String:->string' ;; (openbsd) _arguments \ '-mail=-:Search netbsd mailinglists:(no yes)' \ '-pr=-:Query problem reports:(no yes)' \ '*:Search String:->string' ;; (pgpkeys) _arguments \ '-s[Display key signatures]' \ '*:KeyID or Email:->string' ;; (pubmed) _arguments \ '-db=-:Search Database:(PubMed Nucleotide Protein Genome Structure Popset)' \ '*:Search String:->string' ;; (rfc) _arguments \ '-results=-:[Number of results to return]:' \ '-pdf[Return files as PDFs]' \ '-rev[Reverse order of results]' \ '-exact[Match exact words (instead of prefixes)]' \ '-abs[Show abstracts]' \ '-keywords[Show keywords]' \ '-nodirect[Do not try and go direct to RFC]' \ '-ftp[Retrieve RFCs via FTP instead of HTTP]' \ '-field=-:Search fields:(all number title author keyword)' \ '-search=-:Collection to search(all rfc std bcp fyi)' \ '*:Search String:->string' ;; (scaleplus) _arguments \ '-results=-:[Number of results to return]:' \ '*:Search String:->string' ;; (slashdot) _message 'Search String' \ '*:Search String:->string' ;; (slinuxdoc) _message 'Search String' \ '*:Search String:->string' ;; (sourceforge) _arguments \ '-exact=-:Require all words:(yes no)' \ '-type=:Type of search:(soft people freshmeat)' _deb_packages avail ;; (stockquote) _arguments \ '-provider=-:Quote provider(yahoo nasdaq quote)' \ '*:Search String:->string' ;; (sundocs) _message 'Search String' \ '*:Search String:->string' ;; (sunsolve) _message 'Search String' \ '*:Search String:->string' ;; (thesaurus) _wanted dictword expl 'thesaurus word' \ compadd $(look "${PREFIX}") ;; (webster) _wanted dictword expl 'dictionary word' \ compadd $(look "${PREFIX}") ;; (rae) _wanted dictionary expl 'palabra diccionario' \ compadd $(look "${PREFIX}") ;; (translate) _arguments \ '-from=-:From language:(de en es fr it ja ko pt ru zh)' \ '-to=-:To language:(de en es fr it ja ko pt ru zh)' \ '-provider=-:Translation service provider:(raging bablefish)' \ '*:dictionary word:->dictword' && return 0 case "$state" in (dictword) _wanted dictword expl 'dictionary word' \ compadd $(look "${PREFIX}") ;; esac ;; (rhyme) _arguments \ '-method=-:Type of word correlation:(perfect syn hom cons rel sub spell pic shake def)' \ '*:dictionary word:->dictword' && return 0 case "$state" in (dictword) _wanted dictword expl 'dictionary word' \ compadd $(look "${PREFIX}") ;; esac ;; (w3css) _arguments \ '-warnings=-:Level of warnings displayed:(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 ;; (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 ;; (w3link) _arguments \ '-r[Check linked documents recursively]' \ '-d=-:[Recursion depth]:' \ '-s[Summary only]' \ '-hiderd[Hide redirects]' \ '-dhiderd[Hide redirects for directories only]' \ '-nolang[Dont send the Accept-Language: header]' \ '-cookie[Save options in a cookie]' \ :URL:_urls ;; (w3rdf) _arguments \ '-output=-:Type of output displayed:(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 tags]' \ '-useme[I 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 Colour:(Black Blue Darkgreen Red)' \ '-arc=-:Arc Colour:(Black Blue Darkgreen Red)' \ '-arctext=-:Arc Text Colour:(Black Blue Darkgreen Red)' \ :URL:_urls ;; (wetandwild) _arguments \ '-city=-:[Town or City or (US only) zipcode]:' \ '-country=-:[Two letter domain-style country code]:' \ '-provider=-yahoo[Weather provision service (Yahoo only right now)]' \ '-state=-:[State, province or region]:' ;; (wikipedia) _arguments \ '-language=-:[Two letter language code]:' \ '*:Search String:->string' ;; (woffle) _arguments \ '-method=-:Search method:(and or bool)' \ '-format=-:Result format:(short long)' \ '-sort=-:Sort method:(score revscore time revtime title revtitle)' \ '*:Search String:->string' ;; (xxx) _message 'Search String' \ '*:Search String:->string' ;; (yahoo) _arguments \ '-results=-:[Number of results to return]:' \ '*:Search String:->string' ;; (yubnub) _message 'Yubnub Command' \ '*:Yubnub Command:->string' ;; esac ;; esac