1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142
|
#compdef xsltproc xmllint -value-,XML_CATALOG_FILES,-default-
# xmllint: using libxml version 20904
# xsltproc: using libxml 20904, libxslt 10129 and libexslt 817
local -a encoding
encoding=(
UTF-8
UTF-16
ISO-10646-UCS-2
ISO-10646-UCS-4
ISO-8859-1
ISO-8859-2
ISO-8859-3
ISO-8859-4
ISO-8859-5
ISO-8859-6
ISO-8859-7
ISO-8859-8
ISO-8859-9
ISO-2022-JP
SHIFT_JIS
EUC-JP
)
case $service in
xsltproc)
_arguments \
'(-)'{--version,-V}'[show libxml and libxslt versions]' \
'(--verbose -v)'{--verbose,-v}"[show logs of what's happening]" \
'(--output -o)'{--output,-o}'[specify output file]:output file:_files' \
'--timing[display the time used]' \
'--repeat[run the transformation 20 times]' \
'--debug[dump the tree of the result instead]' \
'--dumpextensions[dump registered extension elements and functions]' \
'--novalid[skip the DTD loading phase]' \
'--nodtdattr[do not default attributes from the DTD]' \
'--noout[do not dump the result]' \
'--maxdepth[increase the maximum depth]:depth' \
'--maxvars[increase the maximum variables]:variables' \
'--maxparserdepth[increase the maximum parser depth]:depth' \
'--seed-rand[initialise random number generator]:seed' \
'--html[input document is an HTML file]' \
'--encoding[the input document character encoding]:encoding:(${encoding[@]})' \
'*--param[pass a parameter,value pair]:name::value (xpath expression)' \
'*--stringparam[pass a parameter]:name::value' \
'--path[provide a set of paths for resources]:path:_dir_list' \
'--nonet[refuse to fetch DTDs or entities over network]' \
'--nowrite[refuse to write to any file or resource]' \
'--nomkdir[refuse to create directories]' \
'--writesubtree[allow file write only with the path subtree]:path:_files -/' \
'--catalogs[use SGML catalogs]' \
'--xinclude[do XInclude processing on document input]' \
'--xincludestyle[do XInclude processing on stylesheets]' \
'--load-trace[print trace of all external entities loaded]' \
{--profile,--norman}'[dump profiling information]' \
'1:stylesheet:_files -g "*.xslt#(-.)"' \
':file:_files -g "*.xml(-.)"' && return
;;
xmllint)
_arguments \
'--version[display the version of the XML library used]' \
'--debug[dump a debug tree of the in-memory document]' \
'--shell[run a navigating shell]' \
'--debugent[debug the entities defined in the document]' \
'--copy[used to test the internal copy implementation]' \
'--recover[output what was parsable on broken XML documents]' \
'--huge[remove any internal arbitrary parser limits]' \
'--noent[substitute entity references by their value]' \
'--noenc[ignore any encoding specified inside the document]' \
"(--output -o)--noout[don't output the result tree]" \
'--path[provide a set of paths for resources]:path:_dir_list' \
'--load-trace[print trace of all external entities loaded]' \
'--nonet[refuse to fetch DTDs or entities over network]' \
'--nocompact[do not generate compact text nodes]' \
'--htmlout[output results as HTML]' \
'--nowrap[do not put HTML doc wrapper]' \
'--valid[validate the document in addition to std well-formed check]' \
'(--dtdvalid --relaxng --schema)--postvalid[do a posteriori validation, i.e after parsing]' \
'(--postvalid --relaxng --schema --dtdvalidfpi)--dtdvalid[do a posteriori validation against a given DTD]:DTD:_webbrowser' \
'(--postvalid --relaxng --schema --dtdvalid)--dtdvalidfpi[as --dtdvalid but specify DTD with public identifier]:DTD identifier' \
'--quiet[be quiet when successful]' \
'--timing[print some timings]' \
'(--noout --output -o)'{--output,-o}'[save to a given file]:output file:_files' \
'--repeat[repeat 100 times, for timing or profiling]' \
'--insert[ad-hoc test for valid insertions]' \
'--compress[turn on gzip compression of output]' \
'--html[use the HTML parser]' \
'--xmlout[use the XML serializer when using --html]' \
'--nodefdtd[do not default HTML doctype]' \
'--push[use the push mode of the parser]' \
'--pushsmall[use the push mode of the parser using tiny increments]' \
'--memory[parse from memory]' \
'--maxmem[limit memory allocation]:bytes' \
'--nowarning[do not emit warnings from parser/validator]' \
'--noblanks[drop (ignorable?) blanks spaces]' \
'--nocdata[replace cdata section with text nodes]' \
'--format[reformat/reindent the input]' \
'--encode[output in the given encoding]:encoding:(${encoding[@]})' \
'--dropdtd[remove the DOCTYPE of the input docs]' \
"--pretty[pretty-print in a particular style]:style:((0\:don\'t\ pretty\ print 1\:reformat 2\:add\ whitespace))" \
'--c14n[save in W3C canonical format]' \
'--c14n11[save in W3C canonical format v1.1 (with comments)]' \
'--exc-c14n[save in W3C exclusive canonical format]' \
'--nsclean[remove redundant namespace declarations]' \
'(--nocatalogs)--catalogs[use SGML catalogs]' \
'(--catalogs)--nocatalogs[deactivate all catalogs]' \
'--auto[generate a small doc on the fly]' \
'(--noxincludenode)--xinclude[do XInclude processing]' \
'(--xinclude)--noxincludenode[do XInclude processing but do not generate XInclude nodes]' \
'--nofixup-base-uris[do not fixup xml:base uris]' \
'--loaddtd[fetch external DTD]' \
'--dtdattr[loaddtd + populate the tree with inherited attributes]' \
'--stream[use the streaming interface to process very large files]' \
'--walker[create a reader and walk though the resulting doc]' \
'--pattern[test the pattern support]:pattern value' \
'--chkregister[verify the node registration code]' \
'(--dtdvalid --postvalid --schema)--relaxng[do RelaxNG validation against specified schema]:schema:_webbrowser' \
'(--dtdvalid --postvalid --relaxng)--schema[do validation against specified WXS schema]:schema:_webbrowser' \
'(--dtdvalid --postvalid --relaxng)--schematron[do validation against specified schematron]:schema:_webbrowser' \
'--sax1[use the old SAX1 interfaces for processing]' \
'--sax[do not build a tree but work just at the SAX level]' \
'--oldxml10[use XML-1.0 parsing rules before the 5th edition]' \
'(--noout)--xpath[evaluate the XPath expression, implies --noout]:XPath expression' \
'*:XML file:_webbrowser' && return
;;
*XML_CATALOG_FILES*)
compset -q
if [[ -prefix *: ]]; then
_urls
return
fi
compset -S ':*'
_alternative \
'files:catalog file:_files' \
'url-schemas:URL schema:compadd -S "" file:///' && return
;;
esac
return 1
|