0
0
mirror of https://github.com/vim/vim.git synced 2025-09-29 04:34:16 -04:00

updated for version 7.0e03

This commit is contained in:
Bram Moolenaar
2006-04-19 21:23:36 +00:00
parent c1e37901fc
commit 8424a624ce
28 changed files with 4233 additions and 2351 deletions

View File

@@ -210,7 +210,14 @@ function! htmlcomplete#CompleteTags(findstart, base)
let tag = ''
else
let tag = split(context)[0]
if tag =~ '[A-Z]'
let uppercase_tag = 1
let tag = tolower(tag)
else
let uppercase_tag = 0
endif
endif
let g:ta = tag
" Get last word, it should be attr name
let attr = matchstr(context, '.*\s\zs.*')
" Possible situations where any prediction would be difficult:
@@ -438,10 +445,10 @@ function! htmlcomplete#CompleteTags(findstart, base)
endif
" Value of attribute completion {{{
" If attr contains =\s*[\"'] we catched value of attribute
if attr =~ "=\s*[\"']"
if attr =~ "=\s*[\"']" || attr =~ "=\s*$"
" Let do attribute specific completion
let attrname = matchstr(attr, '.*\ze\s*=')
let entered_value = matchstr(attr, ".*=\\s*[\"']\\zs.*")
let entered_value = matchstr(attr, ".*=\\s*[\"']\\?\\zs.*")
let values = []
if attrname == 'href'
" Now we are looking for local anchors defined by name or id
@@ -469,15 +476,21 @@ function! htmlcomplete#CompleteTags(findstart, base)
" We need special version of sbase
let attrbase = matchstr(context, ".*[\"']")
let attrquote = matchstr(attrbase, '.$')
if attrquote !~ "['\"]"
let attrquoteopen = '"'
let attrquote = '"'
else
let attrquoteopen = ''
endif
for m in values
" This if is needed to not offer all completions as-is
" alphabetically but sort them. Those beginning with entered
" part will be as first choices
if m =~ '^'.entered_value
call add(res, m . attrquote.' ')
call add(res, attrquoteopen . m . attrquote.' ')
elseif m =~ entered_value
call add(res2, m . attrquote.' ')
call add(res2, attrquoteopen . m . attrquote.' ')
endif
endfor
@@ -494,8 +507,12 @@ function! htmlcomplete#CompleteTags(findstart, base)
call htmlcomplete#LoadData()
endif
" }}}
"
let attrs = keys(g:html_omni[tag][1])
if has_key(g:html_omni, tag)
let attrs = keys(g:html_omni[tag][1])
else
return []
endif
for m in sort(attrs)
if m =~ '^'.attr
@@ -539,6 +556,7 @@ function! htmlcomplete#CompleteTags(findstart, base)
return [opentag.">"]
endif
endif
" }}}
" Load data {{{
if !exists("g:html_omni")
"runtime! autoload/xml/xhtml10s.vim
@@ -547,10 +565,9 @@ function! htmlcomplete#CompleteTags(findstart, base)
" }}}
" Tag completion {{{
" Deal with tag completion.
let opentag = xmlcomplete#GetLastOpenTag("b:unaryTagsStack")
let opentag = tolower(xmlcomplete#GetLastOpenTag("b:unaryTagsStack"))
" MM: TODO: GLOT works always the same but with some weird situation it
" behaves as intended in HTML but screws in PHP
let g:ot = opentag
if opentag == '' || &ft == 'php' && !has_key(g:html_omni, opentag)
" Hack for sometimes failing GetLastOpenTag.
" As far as I tested fail isn't GLOT fault but problem
@@ -559,9 +576,17 @@ function! htmlcomplete#CompleteTags(findstart, base)
let tags = keys(g:html_omni)
call filter(tags, 'v:val !~ "^vimxml"')
else
let tags = g:html_omni[opentag][0]
if has_key(g:html_omni, opentag)
let tags = g:html_omni[opentag][0]
else
return []
endif
endif
" }}}
if exists("uppercase_tag") && uppercase_tag == 1
let context = tolower(context)
endif
for m in sort(tags)
if m =~ '^'.context

View File

@@ -0,0 +1,325 @@
let g:xmldata_html401s = {
\ 'vimxmlentities' : ["AElig", "Aacute", "Acirc", "Agrave", "Alpha", "Aring", "Atilde", "Auml", "Beta", "Ccedil", "Chi", "Dagger", "Delta", "ETH", "Eacute", "Ecirc", "Egrave", "Epsilon", "Eta", "Euml", "Gamma", "Iacute", "Icirc", "Igrave", "Iota", "Iuml", "Kappa", "Lambda", "Mu", "Ntilde", "Nu", "OElig", "Oacute", "Ocirc", "Ograve", "Omega", "Omicron", "Oslash", "Otilde", "Ouml", "Phi", "Pi", "Prime", "Psi", "Rho", "Scaron", "Sigma", "THORN", "TITY", "Tau", "Theta", "Uacute", "Ucirc", "Ugrave", "Upsilon", "Uuml", "Xi", "Yacute", "Yuml", "Zeta", "amp", "aacute", "acirc", "acute", "aelig", "agrave", "alefsym", "alpha", "and", "ang", "apos", "aring", "asymp", "atilde", "auml", "bdquo", "beta", "brvbar", "bull", "cap", "ccedil", "cedil", "cent", "chi", "circ", "clubs", "copy", "cong", "crarr", "cup", "curren", "dArr", "dagger", "darr", "deg", "delta", "diams", "divide", "eacute", "ecirc", "egrave", "empty", "ensp", "emsp", "epsilon", "equiv", "eta", "eth", "euro", "euml", "exist", "fnof", "forall", "frac12", "frac14", "frac34", "frasl", "gt", "gamma", "ge", "hArr", "harr", "hearts", "hellip", "iacute", "icirc", "iexcl", "igrave", "image", "infin", "int", "iota", "iquest", "isin", "iuml", "kappa", "lt", "laquo", "lArr", "lambda", "lang", "larr", "lceil", "ldquo", "le", "lfloor", "lowast", "loz", "lrm", "lsaquo", "lsquo", "macr", "mdash", "micro", "middot", "minus", "mu", "nbsp", "nabla", "ndash", "ne", "ni", "not", "notin", "nsub", "ntilde", "nu", "oacute", "ocirc", "oelig", "ograve", "oline", "omega", "omicron", "oplus", "or", "ordf", "ordm", "oslash", "otilde", "otimes", "ouml", "para", "part", "permil", "perp", "phi", "pi", "piv", "plusmn", "pound", "prime", "prod", "prop", "psi", "quot", "rArr", "raquo", "radic", "rang", "rarr", "rceil", "rdquo", "real", "reg", "rfloor", "rho", "rlm", "rsaquo", "rsquo", "sbquo", "scaron", "sdot", "sect", "shy", "sigma", "sigmaf", "sim", "spades", "sub", "sube", "sum", "sup", "sup1", "sup2", "sup3", "supe", "szlig", "tau", "there4", "theta", "thetasym", "thinsp", "thorn", "tilde", "times", "trade", "uArr", "uacute", "uarr", "ucirc", "ugrave", "uml", "upsih", "upsilon", "uuml", "weierp", "xi", "yacute", "yen", "yuml", "zeta", "zwj", "zwnj"],
\ 'vimxmlroot': ['html'],
\ 'a': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'rel': [], 'accesskey': [], 'coords': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onkeydown': [], 'onkeyup': [], 'href': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'tabindex': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'name': [], 'style': [], 'charset': [], 'hreflang': [], 'onkeypress': [], 'onmousedown': [], 'rev': [], 'class': [], 'title': [], 'onclick': [], 'type': [], 'shape': ['rect', 'rect', 'circle', 'poly', 'default']}
\ ],
\ 'abbr': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'acronym': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'address': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'area': [
\ [],
\ { 'accesskey': [], 'coords': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onkeydown': [], 'nohref': ['nohref'], 'onfocus': [], 'onkeyup': [], 'href': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'alt': [], 'tabindex': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'shape': ['rect', 'rect', 'circle', 'poly', 'default'], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'b': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'base': [
\ [],
\ { 'href': []}
\ ],
\ 'bdo': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'dir': ['ltr', 'rtl'], 'id': [], 'lang': [], 'style': [], 'class': [], 'title': []}
\ ],
\ 'big': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'blockquote': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', 'script'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'cite': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'body': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', 'script'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onunload': [], 'onkeypress': [], 'onmousedown': [], 'onload': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'br': [
\ [],
\ { 'id': [], 'style': [], 'class': [], 'title': []}
\ ],
\ 'button': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'accesskey': [], 'disabled': ['disabled'], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onkeydown': [], 'onfocus': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'tabindex': [], 'value': [], 'name': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'type': ['submit', 'button', 'submit', 'reset']}
\ ],
\ 'caption': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'cite': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'code': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'col': [
\ [],
\ { 'width': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'charoff': [], 'onmouseover': [], 'lang': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'char': [], 'span': ['1'], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'colgroup': [
\ ['col'],
\ { 'width': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'charoff': [], 'onmouseover': [], 'lang': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'char': [], 'span': ['1'], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'dd': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'del': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'datetime': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'cite': [], 'onmouseover': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'dfn': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'div': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'dl': [
\ ['dt', 'dd'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'dt': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'em': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'fieldset': [
\ ['legend', 'p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'form': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', 'script'],
\ { 'enctype': ['application/x-www-form-urlencoded'], 'onsubmit': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'onreset': [], 'id': [], 'method': ['GET', 'GET', 'POST'], 'onmouseover': [], 'lang': [], 'accept': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'name': [], 'accept-charset': [], 'onkeypress': [], 'onmousedown': [], 'action': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h1': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'h2': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'h3': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'h4': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'h5': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'h6': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'head': [
\ ['title', 'base'],
\ { 'profile': [], 'dir': ['ltr', 'rtl'], 'lang': []}
\ ],
\ 'hr': [
\ [],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'html': [
\ ['head', 'body'],
\ { 'dir': ['ltr', 'rtl'], 'lang': []}
\ ],
\ 'i': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'img': [
\ [],
\ { 'width': [], 'usemap': [], 'ismap': ['ismap'], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'alt': [], 'lang': [], 'src': [], 'longdesc': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'name': [], 'height': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'input': [
\ [],
\ { 'ondblclick': [], 'onkeydown': [], 'readonly': ['readonly'], 'onchange': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'value': [], 'src': [], 'name': [], 'checked': ['checked'], 'onkeypress': [], 'onmousedown': [], 'type': ['TEXT', 'TEXT', 'PASSWORD', 'CHECKBOX', 'RADIO', 'SUBMIT', 'RESET', 'FILE', 'IMAGE', 'BUTTON'], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'disabled': ['disabled'], 'usemap': [], 'ismap': ['ismap'], 'dir': ['ltr', 'rtl'], 'size': [], 'onblur': [], 'onfocus': [], 'maxlength': [], 'onselect': [], 'accept': [], 'alt': [], 'tabindex': [], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'ins': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'datetime': [], 'cite': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'kbd': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'label': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'for': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'legend': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'li': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'link': [
\ [],
\ { 'rel': [], 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'href': [], 'media': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'charset': [], 'hreflang': [], 'onkeypress': [], 'onmousedown': [], 'rev': [], 'class': [], 'title': [], 'onclick': [], 'type': [], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'map': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', 'area'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'name': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'meta': [
\ [],
\ { 'http-equiv': [], 'content': [], 'lang': [], 'name': [], 'scheme': [], 'dir': ['ltr', 'rtl']}
\ ],
\ 'noscript': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'object': [
\ ['param', 'p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'name': [], 'data': [], 'declare': ['declare'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'type': [], 'width': [], 'usemap': [], 'dir': ['ltr', 'rtl'], 'archive': [], 'standby': [], 'tabindex': [], 'classid': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'height': [], 'codetype': [], 'codebase': []}
\ ],
\ 'ol': [
\ ['li'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'optgroup': [
\ ['option'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'label': [], 'disabled': ['disabled'], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'option': [
\ [''],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'value': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'label': [], 'disabled': ['disabled'], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': [], 'selected': ['selected']}
\ ],
\ 'p': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'param': [
\ [],
\ { 'id': [], 'value': [], 'name': [], 'type': [], 'valuetype': ['DATA', 'DATA', 'REF', 'OBJECT']}
\ ],
\ 'pre': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'q': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'cite': [], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'samp': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'script': [
\ ['cdata'],
\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': [], 'defer': ['defer']}
\ ],
\ 'select': [
\ ['optgroup', 'option'],
\ { 'ondblclick': [], 'onkeydown': [], 'onchange': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'name': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'disabled': ['disabled'], 'dir': ['ltr', 'rtl'], 'size': [], 'onblur': [], 'onfocus': [], 'tabindex': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'multiple': ['multiple']}
\ ],
\ 'small': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'span': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'strong': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'style': [
\ ['cdata'],
\ { 'media': [], 'lang': [], 'type': [], 'title': [], 'dir': ['ltr', 'rtl']}
\ ],
\ 'sub': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'sup': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'table': [
\ ['caption', 'col', 'colgroup', 'thead', 'tfoot', 'tbody'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'datapagesize': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'width': [], 'frame': ['void', 'above', 'below', 'hsides', 'lhs', 'rhs', 'vsides', 'box', 'border'], 'rules': ['none', 'groups', 'rows', 'cols', 'all'], 'dir': ['ltr', 'rtl'], 'summary': [], 'cellspacing': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'border': [], 'cellpadding': []}
\ ],
\ 'tbody': [
\ ['tr'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'lang': [], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'td': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'axis': [], 'onkeydown': [], 'abbr': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'scope': ['row', 'col', 'rowgroup', 'colgroup'], 'onmouseover': [], 'lang': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'headers': [], 'dir': ['ltr', 'rtl'], 'rowspan': ['1'], 'colspan': ['1'], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'textarea': [
\ [''],
\ { 'ondblclick': [], 'cols': [], 'onkeydown': [], 'readonly': ['readonly'], 'onchange': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'name': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'disabled': ['disabled'], 'rows': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onselect': [], 'tabindex': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'tfoot': [
\ ['tr'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'lang': [], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'th': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'axis': [], 'onkeydown': [], 'abbr': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'scope': ['row', 'col', 'rowgroup', 'colgroup'], 'onmouseover': [], 'lang': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'headers': [], 'dir': ['ltr', 'rtl'], 'rowspan': ['1'], 'colspan': ['1'], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'thead': [
\ ['tr'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'lang': [], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'title': [
\ [''],
\ { 'lang': [], 'dir': ['ltr', 'rtl']}
\ ],
\ 'tr': [
\ ['th', 'td'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'lang': [], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'tt': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'ul': [
\ ['li'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'var': [
\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'vimxmltaginfo': {
\ 'area': ['/>', ''],
\ 'base': ['/>', ''],
\ 'br': ['/>', ''],
\ 'col': ['/>', ''],
\ 'hr': ['/>', ''],
\ 'img': ['/>', ''],
\ 'input': ['/>', ''],
\ 'link': ['/>', ''],
\ 'meta': ['/>', ''],
\ 'param': ['/>', ''],
\ }
\ }
" vim:ft=vim:ff=unix

View File

@@ -0,0 +1,375 @@
let g:xmldata_html401t = {
\ 'vimxmlentities' : ["AElig", "Aacute", "Acirc", "Agrave", "Alpha", "Aring", "Atilde", "Auml", "Beta", "Ccedil", "Chi", "Dagger", "Delta", "ETH", "Eacute", "Ecirc", "Egrave", "Epsilon", "Eta", "Euml", "Gamma", "Iacute", "Icirc", "Igrave", "Iota", "Iuml", "Kappa", "Lambda", "Mu", "Ntilde", "Nu", "OElig", "Oacute", "Ocirc", "Ograve", "Omega", "Omicron", "Oslash", "Otilde", "Ouml", "Phi", "Pi", "Prime", "Psi", "Rho", "Scaron", "Sigma", "THORN", "TITY", "Tau", "Theta", "Uacute", "Ucirc", "Ugrave", "Upsilon", "Uuml", "Xi", "Yacute", "Yuml", "Zeta", "amp", "aacute", "acirc", "acute", "aelig", "agrave", "alefsym", "alpha", "and", "ang", "apos", "aring", "asymp", "atilde", "auml", "bdquo", "beta", "brvbar", "bull", "cap", "ccedil", "cedil", "cent", "chi", "circ", "clubs", "copy", "cong", "crarr", "cup", "curren", "dArr", "dagger", "darr", "deg", "delta", "diams", "divide", "eacute", "ecirc", "egrave", "empty", "ensp", "emsp", "epsilon", "equiv", "eta", "eth", "euro", "euml", "exist", "fnof", "forall", "frac12", "frac14", "frac34", "frasl", "gt", "gamma", "ge", "hArr", "harr", "hearts", "hellip", "iacute", "icirc", "iexcl", "igrave", "image", "infin", "int", "iota", "iquest", "isin", "iuml", "kappa", "lt", "laquo", "lArr", "lambda", "lang", "larr", "lceil", "ldquo", "le", "lfloor", "lowast", "loz", "lrm", "lsaquo", "lsquo", "macr", "mdash", "micro", "middot", "minus", "mu", "nbsp", "nabla", "ndash", "ne", "ni", "not", "notin", "nsub", "ntilde", "nu", "oacute", "ocirc", "oelig", "ograve", "oline", "omega", "omicron", "oplus", "or", "ordf", "ordm", "oslash", "otilde", "otimes", "ouml", "para", "part", "permil", "perp", "phi", "pi", "piv", "plusmn", "pound", "prime", "prod", "prop", "psi", "quot", "rArr", "raquo", "radic", "rang", "rarr", "rceil", "rdquo", "real", "reg", "rfloor", "rho", "rlm", "rsaquo", "rsquo", "sbquo", "scaron", "sdot", "sect", "shy", "sigma", "sigmaf", "sim", "spades", "sub", "sube", "sum", "sup", "sup1", "sup2", "sup3", "supe", "szlig", "tau", "there4", "theta", "thetasym", "thinsp", "thorn", "tilde", "times", "trade", "uArr", "uacute", "uarr", "ucirc", "ugrave", "uml", "upsih", "upsilon", "uuml", "weierp", "xi", "yacute", "yen", "yuml", "zeta", "zwj", "zwnj"],
\ 'vimxmlroot': ['html'],
\ 'a': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'rel': [], 'accesskey': [], 'coords': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onkeydown': [], 'onfocus': [], 'target': [], 'onkeyup': [], 'href': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'tabindex': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'name': [], 'charset': [], 'hreflang': [], 'onkeypress': [], 'onmousedown': [], 'rev': [], 'class': [], 'title': [], 'onclick': [], 'type': [], 'shape': ['rect', 'rect', 'circle', 'poly', 'default']}
\ ],
\ 'abbr': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'acronym': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'address': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button', 'p'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'applet': [
\ ['param', 'p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'width': [], 'object': [], 'id': [], 'code': [], 'vspace': [], 'archive': [], 'alt': [], 'align': ['top', 'middle', 'bottom', 'left', 'right'], 'style': [], 'name': [], 'height': [], 'hspace': [], 'title': [], 'class': [], 'codebase': []}
\ ],
\ 'area': [
\ [],
\ { 'accesskey': [], 'coords': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onkeydown': [], 'target': [], 'nohref': ['nohref'], 'onfocus': [], 'onkeyup': [], 'href': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'alt': [], 'tabindex': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'shape': ['rect', 'rect', 'circle', 'poly', 'default'], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'b': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'base': [
\ [],
\ { 'target': [], 'href': []}
\ ],
\ 'basefont': [
\ [],
\ { 'size': [], 'face': [], 'color': [], 'id': []}
\ ],
\ 'bdo': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'dir': ['ltr', 'rtl'], 'id': [], 'lang': [], 'style': [], 'class': [], 'title': []}
\ ],
\ 'big': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'blockquote': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'cite': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'body': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'vlink': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'alink': [], 'onkeyup': [], 'bgcolor': [], 'text': [], 'onmouseup': [], 'id': [], 'link': [], 'onmouseover': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'background': [], 'onunload': [], 'onkeypress': [], 'onmousedown': [], 'onload': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'br': [
\ [],
\ { 'clear': ['none', 'left', 'all', 'right', 'none'], 'id': [], 'style': [], 'class': [], 'title': []}
\ ],
\ 'button': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'accesskey': [], 'disabled': ['disabled'], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onkeydown': [], 'onfocus': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'tabindex': [], 'value': [], 'name': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'type': ['submit', 'button', 'submit', 'reset']}
\ ],
\ 'caption': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['top', 'bottom', 'left', 'right'], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'center': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'cite': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'code': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'col': [
\ [],
\ { 'width': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'charoff': [], 'onmouseover': [], 'lang': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'char': [], 'span': ['1'], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'colgroup': [
\ ['col'],
\ { 'width': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'charoff': [], 'onmouseover': [], 'lang': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'char': [], 'span': ['1'], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'dd': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'del': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'datetime': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'cite': [], 'onmouseover': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'dfn': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'dir': [
\ ['li'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'compact': ['compact'], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'div': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify'], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'dl': [
\ ['dt', 'dd'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'compact': ['compact'], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'dt': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'em': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'fieldset': [
\ ['legend', 'p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'font': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'dir': ['ltr', 'rtl'], 'size': [], 'face': [], 'color': [], 'id': [], 'lang': [], 'style': [], 'class': [], 'title': []}
\ ],
\ 'form': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'enctype': ['application/x-www-form-urlencoded'], 'onsubmit': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'target': [], 'onkeyup': [], 'onmouseup': [], 'onreset': [], 'id': [], 'method': ['GET', 'GET', 'POST'], 'onmouseover': [], 'lang': [], 'accept': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'name': [], 'accept-charset': [], 'onkeypress': [], 'onmousedown': [], 'action': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h1': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify'], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h2': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify'], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h3': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify'], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h4': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify'], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h5': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify'], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h6': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify'], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'head': [
\ ['title', 'isindex', 'base'],
\ { 'profile': [], 'dir': ['ltr', 'rtl'], 'lang': []}
\ ],
\ 'hr': [
\ [],
\ { 'width': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'size': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right'], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'noshade': ['noshade'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'html': [
\ ['head', 'body'],
\ { 'dir': ['ltr', 'rtl'], 'lang': [], 'version': ['-//W3C//DTD HTML 4.01 Transitional//EN']}
\ ],
\ 'i': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'iframe': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'width': [], 'scrolling': ['auto', 'yes', 'no', 'auto'], 'marginwidth': [], 'id': [], 'marginheight': [], 'align': ['top', 'middle', 'bottom', 'left', 'right'], 'longdesc': [], 'src': [], 'style': [], 'name': [], 'height': [], 'frameborder': ['1', '1', '0'], 'title': [], 'class': []}
\ ],
\ 'img': [
\ [],
\ { 'width': [], 'usemap': [], 'ismap': ['ismap'], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'vspace': [], 'onmouseover': [], 'alt': [], 'lang': [], 'align': ['top', 'middle', 'bottom', 'left', 'right'], 'src': [], 'longdesc': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'name': [], 'height': [], 'border': [], 'hspace': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'input': [
\ [],
\ { 'ondblclick': [], 'onkeydown': [], 'readonly': ['readonly'], 'onchange': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'align': ['top', 'middle', 'bottom', 'left', 'right'], 'value': [], 'src': [], 'name': [], 'checked': ['checked'], 'onkeypress': [], 'onmousedown': [], 'type': ['TEXT', 'TEXT', 'PASSWORD', 'CHECKBOX', 'RADIO', 'SUBMIT', 'RESET', 'FILE', 'IMAGE', 'BUTTON'], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'disabled': ['disabled'], 'usemap': [], 'ismap': ['ismap'], 'dir': ['ltr', 'rtl'], 'size': [], 'onblur': [], 'onfocus': [], 'maxlength': [], 'onselect': [], 'tabindex': [], 'accept': [], 'alt': [], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'ins': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'datetime': [], 'cite': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'isindex': [
\ [],
\ { 'id': [], 'lang': [], 'prompt': [], 'class': [], 'title': [], 'dir': ['ltr', 'rtl'], 'style': []}
\ ],
\ 'kbd': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'label': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'for': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'legend': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['top', 'bottom', 'left', 'right'], 'lang': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'li': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'value': [], 'onkeypress': [], 'onmousedown': [], 'type': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'link': [
\ [],
\ { 'rel': [], 'ondblclick': [], 'onkeydown': [], 'target': [], 'onkeyup': [], 'href': [], 'media': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'charset': [], 'hreflang': [], 'onkeypress': [], 'onmousedown': [], 'rev': [], 'class': [], 'title': [], 'onclick': [], 'type': [], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'map': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', 'area'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'name': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'menu': [
\ ['li'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'compact': ['compact'], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'meta': [
\ [],
\ { 'http-equiv': [], 'content': [], 'lang': [], 'name': [], 'scheme': [], 'dir': ['ltr', 'rtl']}
\ ],
\ 'noframes': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'noscript': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'object': [
\ ['param', 'p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'align': ['top', 'middle', 'bottom', 'left', 'right'], 'name': [], 'data': [], 'declare': ['declare'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'type': [], 'width': [], 'usemap': [], 'dir': ['ltr', 'rtl'], 'vspace': [], 'tabindex': [], 'standby': [], 'archive': [], 'classid': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'height': [], 'border': [], 'codetype': [], 'hspace': [], 'codebase': []}
\ ],
\ 'ol': [
\ ['li'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'compact': ['compact'], 'onmouseover': [], 'lang': [], 'onkeypress': [], 'onmousedown': [], 'type': [], 'class': [], 'title': [], 'onclick': [], 'start': [], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'optgroup': [
\ ['option'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'label': [], 'disabled': ['disabled'], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'option': [
\ [''],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'value': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'label': [], 'disabled': ['disabled'], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': [], 'selected': ['selected']}
\ ],
\ 'p': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify'], 'lang': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'param': [
\ [],
\ { 'id': [], 'value': [], 'name': [], 'type': [], 'valuetype': ['DATA', 'DATA', 'REF', 'OBJECT']}
\ ],
\ 'pre': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'width': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'q': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'cite': [], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 's': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'samp': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'script': [
\ ['cdata'],
\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': [], 'defer': ['defer'], 'language': []}
\ ],
\ 'select': [
\ ['optgroup', 'option'],
\ { 'ondblclick': [], 'onkeydown': [], 'onchange': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'name': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'disabled': ['disabled'], 'dir': ['ltr', 'rtl'], 'size': [], 'onblur': [], 'onfocus': [], 'tabindex': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'multiple': ['multiple']}
\ ],
\ 'small': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'span': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'strike': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'strong': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'style': [
\ ['cdata'],
\ { 'media': [], 'lang': [], 'type': [], 'title': [], 'dir': ['ltr', 'rtl']}
\ ],
\ 'sub': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'sup': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'table': [
\ ['caption', 'col', 'colgroup', 'thead', 'tfoot', 'tbody'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'datapagesize': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'align': ['left', 'center', 'right'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'width': [], 'frame': ['void', 'above', 'below', 'hsides', 'lhs', 'rhs', 'vsides', 'box', 'border'], 'rules': ['none', 'groups', 'rows', 'cols', 'all'], 'dir': ['ltr', 'rtl'], 'summary': [], 'bgcolor': [], 'cellspacing': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'border': [], 'cellpadding': []}
\ ],
\ 'tbody': [
\ ['tr'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'lang': [], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'td': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'axis': [], 'onkeydown': [], 'abbr': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'scope': ['row', 'col', 'rowgroup', 'colgroup'], 'onmouseover': [], 'lang': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'width': [], 'headers': [], 'nowrap': ['nowrap'], 'dir': ['ltr', 'rtl'], 'rowspan': ['1'], 'colspan': ['1'], 'bgcolor': [], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'height': [], 'char': []}
\ ],
\ 'textarea': [
\ [''],
\ { 'ondblclick': [], 'cols': [], 'onkeydown': [], 'readonly': ['readonly'], 'onchange': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'name': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'disabled': ['disabled'], 'rows': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onselect': [], 'tabindex': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'tfoot': [
\ ['tr'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'lang': [], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'th': [
\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', 'address', '#pcdata', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'axis': [], 'onkeydown': [], 'abbr': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'scope': ['row', 'col', 'rowgroup', 'colgroup'], 'onmouseover': [], 'lang': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'width': [], 'headers': [], 'nowrap': ['nowrap'], 'dir': ['ltr', 'rtl'], 'rowspan': ['1'], 'colspan': ['1'], 'bgcolor': [], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'height': [], 'char': []}
\ ],
\ 'thead': [
\ ['tr'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'lang': [], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'title': [
\ [''],
\ { 'lang': [], 'dir': ['ltr', 'rtl']}
\ ],
\ 'tr': [
\ ['th', 'td'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right', 'justify', 'char'], 'lang': [], 'valign': ['top', 'middle', 'bottom', 'baseline'], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'bgcolor': [], 'charoff': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'char': []}
\ ],
\ 'tt': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'u': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'ul': [
\ ['li'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'compact': ['compact'], 'onmouseover': [], 'lang': [], 'onkeypress': [], 'onmousedown': [], 'type': ['disc', 'square', 'circle'], 'class': [], 'title': [], 'onclick': [], 'dir': ['ltr', 'rtl'], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'var': [
\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo', 'iframe', 'input', 'select', 'textarea', 'label', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': [], 'dir': ['ltr', 'rtl'], 'style': [], 'onmousemove': [], 'onmouseout': []}
\ ],
\ 'vimxmltaginfo': {
\ 'area': ['/>', ''],
\ 'base': ['/>', ''],
\ 'basefont': ['/>', ''],
\ 'br': ['/>', ''],
\ 'col': ['/>', ''],
\ 'hr': ['/>', ''],
\ 'img': ['/>', ''],
\ 'input': ['/>', ''],
\ 'isindex': ['/>', ''],
\ 'link': ['/>', ''],
\ 'meta': ['/>', ''],
\ 'param': ['/>', ''],
\ }
\ }
" vim:ft=vim:ff=unix

View File

@@ -1,7 +1,7 @@
" Vim completion script
" Language: XML
" Maintainer: Mikolaj Machowski ( mikmach AT wp DOT pl )
" Last Change: 2006 Apr 12
" Last Change: 2006 Apr 19
" This function will create Dictionary with users namespace strings and values
" canonical (system) names of data files. Names should be lowercase,
@@ -186,16 +186,20 @@ function! xmlcomplete#CompleteTags(findstart, base)
if context =~ '\s'
" If attr contains =\s*[\"'] we catched value of attribute
if attr =~ "=\s*[\"']"
if attr =~ "=\s*[\"']" || attr =~ "=\s*$"
" Let do attribute specific completion
let attrname = matchstr(attr, '.*\ze\s*=')
let entered_value = matchstr(attr, ".*=\\s*[\"']\\zs.*")
let entered_value = matchstr(attr, ".*=\\s*[\"']\\?\\zs.*")
if tag =~ '^[?!]'
" Return nothing if we are inside of ! or ? tag
return []
else
let values = g:xmldata{'_'.g:xmldata_connection[b:xml_namespace]}[tag][1][attrname]
if has_key(g:xmldata{'_'.g:xmldata_connection[b:xml_namespace]}, tag) && has_key(g:xmldata{'_'.g:xmldata_connection[b:xml_namespace]}[tag][1], attrname)
let values = g:xmldata{'_'.g:xmldata_connection[b:xml_namespace]}[tag][1][attrname]
else
return []
endif
endif
if len(values) == 0
@@ -205,15 +209,21 @@ function! xmlcomplete#CompleteTags(findstart, base)
" We need special version of sbase
let attrbase = matchstr(context, ".*[\"']")
let attrquote = matchstr(attrbase, '.$')
if attrquote !~ "['\"]"
let attrquoteopen = '"'
let attrquote = '"'
else
let attrquoteopen = ''
endif
for m in values
" This if is needed to not offer all completions as-is
" alphabetically but sort them. Those beginning with entered
" part will be as first choices
if m =~ '^'.entered_value
call add(res, m . attrquote.' ')
call add(res, attrquoteopen . m . attrquote.' ')
elseif m =~ entered_value
call add(res2, m . attrquote.' ')
call add(res2, attrquoteopen . m . attrquote.' ')
endif
endfor

View File

@@ -1,4 +1,4 @@
*map.txt* For Vim version 7.0e. Last change: 2006 Apr 11
*map.txt* For Vim version 7.0e. Last change: 2006 Apr 19
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -239,6 +239,16 @@ Here is an example that inserts a list number that increases: >
CTRL-L inserts the next number, CTRL-R resets the count. CTRL-R returns an
empty string, so that nothing is inserted.
Note that there are some tricks to make special keys work and escape CSI bytes
in the text. The |:map| command also does this, thus you must avoid that it
is done twice. This does not work: >
:imap <expr> <F3> "<Char-0x611B>"
Because the <Char- sequence is escaped for being a |:imap| argument and then
again for using <expr>. This does work: >
:imap <expr> <F3> "\u611B"
Using 0x80 as a single byte before other text does not work, it will be seen
as a special key.
1.3 MAPPING AND MODES *:map-modes*

View File

@@ -1,4 +1,4 @@
*todo.txt* For Vim version 7.0e. Last change: 2006 Apr 18
*todo.txt* For Vim version 7.0e. Last change: 2006 Apr 19
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,6 +30,15 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs*
-------------------- Known bugs and current work -----------------------
Hang in omni completion when 'lines' is 6. (dtsfan)
Crash in "z=" when the change triggers checking out the file, FileChangedRO
event. Problem in move_lines()? FileChangedShell also involved? (Neil Bird)
Added a few checks for valid buffer, did that help?
Check findoption() return value.
Other coverity false positives?
Add more tests for all new functionality in Vim 7. Especially new functions.
Win32: Describe how to do debugging. (George Reilly)
@@ -777,6 +786,7 @@ Macintosh:
8 Xterm sends ^[[H for <Home> and ^[[F for <End> in some mode. Also
recognize these keys? Mostly useful for xterm simulators, like gnometerm.
See http://dickey.his.com/xterm/xterm.faq.html#xterm_pc_style.
8 For xterm also recognize keypad up/down/left/right and insert.
8 '[ and '] should be set to start/end of line when using a linewise operator
(e.g., ":w").
8 CTRL-A can't handle big "long" numbers, they become negative. Check for

View File

@@ -1,4 +1,4 @@
*version7.txt* For Vim version 7.0e. Last change: 2006 Apr 18
*version7.txt* For Vim version 7.0e. Last change: 2006 Apr 19
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2556,4 +2556,7 @@ the tab page label was wrong and an error message would be given.
The taglist() function could hang on a tags line with a non-ASCII character.
Win32: When 'encoding' differs from the system encoding tab page labels with
non-ASCII characters looked wrong. (Yegappan Lakshmanan)
vim:tw=78:ts=8:ft=help:norl:

View File

@@ -1,7 +1,7 @@
" Vim support file to detect file types
"
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2006 Apr 18
" Last Change: 2006 Apr 19
" Listen very carefully, I will say this only once
if exists("did_load_filetypes")
@@ -2082,6 +2082,9 @@ au! BufNewFile,BufRead *jarg*
\| call s:StarSetf('jargon')
\|endif
" Kconfig
au BufNewFile,BufRead Kconfig.* call s:StarSetf('kconfig')
" Makefile
au BufNewFile,BufRead [mM]akefile* call s:StarSetf('make')

View File

@@ -0,0 +1,38 @@
" filetype plugin for TeX and variants
" Language: TeX (ft=initex)
" Maintainer: Benji Fisher, Ph.D. <benji@member.AMS.org>
" Version: 1.0
" Last Change: Wed 19 Apr 2006
" Only do this when not done yet for this buffer.
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer.
let b:did_ftplugin = 1
" Avoid problems if running in 'compatible' mode.
let s:save_cpo = &cpo
set cpo&vim
let b:undo_ftplugin = "setl com< cms< define< include< sua<"
" Set 'comments' to format dashed lists in comments
setlocal com=sO:%\ -,mO:%\ \ ,eO:%%,:%
" Set 'commentstring' to recognize the % comment character:
" (Thanks to Ajit Thakkar.)
setlocal cms=%%s
" Allow "[d" to be used to find a macro definition:
let &l:define='\\\([egx]\|char\|mathchar\|count\|dimen\|muskip\|skip\|toks\)\='
\ . 'def\|\\font\|\\\(future\)\=let'
" Tell Vim to recognize \input bar :
let &l:include = '\\input'
setlocal suffixesadd=.tex
let &cpo = s:save_cpo
" vim:sts=2:sw=2:

View File

@@ -10,5 +10,3 @@ let b:did_ftplugin = 1
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql

View File

@@ -0,0 +1,12 @@
" Vim filetype plugin file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-03-27
if exists("b:did_ftplugin")
finish
endif
let b:did_ftplugin = 1
let b:undo_ftplugin = "setl com< cms< fo<"
setlocal comments=:# commentstring=#\ %s formatoptions-=t formatoptions+=croql

View File

@@ -1,46 +1,34 @@
" plain TeX filetype plugin
" Language: plain TeX (ft=plaintex)
" Maintainer: Benji Fisher, Ph.D. <benji@member.AMS.org>
" Version: 1.0
" Last Change: Wed 22 Mar 2006 09:36:32 AM EST
" Version: 1.1
" Last Change: Wed 19 Apr 2006
" Only do this when not done yet for this buffer.
if exists("b:did_ftplugin")
finish
endif
" Don't load another plugin for this buffer.
let b:did_ftplugin = 1
" Start with initex. This will also define b:did_ftplugin and b:undo_ftplugin .
source $VIMRUNTIME/ftplugin/initex.vim
" Avoid problems if running in 'compatible' mode.
let s:save_cpo = &cpo
set cpo&vim
" Set 'comments' to format dashed lists in comments
setlocal com=sO:%\ -,mO:%\ \ ,eO:%%,:%
" Set 'commentstring' to recognize the % comment character:
" (Thanks to Ajit Thakkar.)
setlocal cms=%%s
let b:undo_ftplugin .= "| unlet! b:match_ignorecase b:match_skip b:match_words"
" Allow "[d" to be used to find a macro definition:
let &l:define='\\\([egx]\|char\|mathchar\|count\|dimen\|muskip\|skip\|toks\)\='
\ . 'def\|\\font\|\\\(future\)\=let'
\ . '\|\\new\(count\|dimen\|skip\|muskip\|box\|toks\|read\|write'
let &l:define .= '\|\\new\(count\|dimen\|skip\|muskip\|box\|toks\|read\|write'
\ . '\|fam\|insert\)'
" Tell Vim to recognize \input bar :
let &l:include = '\\input'
setlocal suffixesadd=.tex
" The following lines enable the macros/matchit.vim plugin for
" extended matching with the % key.
" There is no default meaning for \(...\) etc., but many users define one.
if exists("loaded_matchit")
let b:match_ignorecase = 0
\ | let b:match_skip = 'r:\\\@<!\%(\\\\\)*%'
\ | let b:match_words = '(:),\[:],{:},\\(:\\),\\\[:\\],' .
\ '\\begin\s*\({\a\+\*\=}\):\\end\s*\1'
\ | let b:match_words = '(:),\[:],{:},\\(:\\),\\\[:\\],\\{:\\}'
endif " exists("loaded_matchit")
let &cpo = s:save_cpo

View File

@@ -1,8 +1,8 @@
" LaTeX filetype plugin
" Language: LaTeX (ft=tex)
" Maintainer: Benji Fisher, Ph.D. <benji@member.AMS.org>
" Version: 1.3
" Last Change: Wed 22 Mar 2006 09:36:32 AM EST
" Version: 1.4
" Last Change: Wed 19 Apr 2006
" URL: http://www.vim.org/script.php?script_id=411
" Only do this when not done yet for this buffer.
@@ -17,6 +17,8 @@ source $VIMRUNTIME/ftplugin/plaintex.vim
let s:save_cpo = &cpo
set cpo&vim
let b:undo_ftplugin .= "| setl inex<"
" Allow "[d" to be used to find a macro definition:
" Recognize plain TeX \def as well as LaTeX \newcommand and \renewcommand .
" I may as well add the AMS-LaTeX DeclareMathOperator as well.
@@ -33,9 +35,9 @@ let &l:includeexpr = "substitute(v:fname, '^.\\{-}{\\|}.*', '', 'g')"
" The following lines enable the macros/matchit.vim plugin for
" extended matching with the % key.
" ftplugin/plaintex.vim already defines b:match_skip and b:match_ignorecase
" and matches \(, \), \[, and \].
" and matches \(, \), \[, \], \{, and \} .
if exists("loaded_matchit")
let b:match_words .= '\\begin\s*\({\a\+\*\=}\):\\end\s*\1'
let b:match_words .= ',\\begin\s*\({\a\+\*\=}\):\\end\s*\1'
endif " exists("loaded_matchit")
let &cpo = s:save_cpo

View File

@@ -1,6 +1,8 @@
" Menu Translations: Simplified Chinese (UTF-8)
" Translated By: Wang Jun <junw@turbolinux.com.cn>
" Last Change: Tue Sep 4 11:26:52 CST 2001
" Menu Translations: Simplified Chinese <i18n-translation@lists.linux.net.cn>
" Translated By: Yuheng Xie <elephant@linux.net.cn>
" Last Change: Tue Apr 18 22:00:00 2006
" vim: ts=8 sw=8 noet
" Quit when menu translations have already been done.
if exists("did_menu_trans")
@@ -14,62 +16,68 @@ scriptencoding utf-8
menutrans &Help 帮助(&H)
menutrans &Overview<Tab><F1> 预览(&O)<Tab><F1>
menutrans &User\ Manual 用户手册(&U)
menutrans &GUI 图形界面(&G)
menutrans &How-to\ links HOWTO文档\.\.\.(&H)
menutrans &How-to\ links How-to\ 连接(&H)
menutrans &Find\.\.\. 查找(&F)\.\.\.
menutrans &Credits 作者(&C)
menutrans Co&pying 版权(&P)
menutrans &Version 版本(&V)
menutrans &About 关于\ Vim(&A)
menutrans &Sponsor/Register 赞助/注册(&S)
menutrans O&rphans 孤儿(&R)
menutrans &Version 版本(&V)
menutrans &About 关于(&A)
" File menu
menutrans &File 文件(&F)
menutrans &Open\.\.\.<Tab>:e 打开(&O)\.\.\.<Tab>:e
menutrans Sp&lit-Open\.\.\.<Tab>:sp 分割窗口并打开(&L)<Tab>:sp
menutrans Sp&lit-Open\.\.\.<Tab>:sp 分割并打开(&L)\.\.\.<Tab>:sp
menutrans Open\ Tab\.\.\.<Tab>:tabnew 打开标签\.\.\.<Tab>:tabnew
menutrans &New<Tab>:enew 新建(&N)<Tab>:enew
menutrans &Close<Tab>:close 关闭(&C)<Tab>:close
menutrans &Save<Tab>:w 保存(&S)<Tab>:w
menutrans Save\ &As\.\.\.<Tab>:sav 另存为(&A)\.\.\.<Tab>:sav
menutrans Split\ &Diff\ with\.\.\. 分割比较(&Diff)\.\.\.
menutrans Split\ Patched\ &By\.\.\. 分割打补丁(&Patch)\.\.\.
menutrans Split\ &Diff\ with\.\.\. 分割比较(Diff)(&D)\.\.\.
menutrans Split\ Patched\ &By\.\.\. 分割打补丁(Patch)(&B)\.\.\.
menutrans &Print 打印(&P)
menutrans Sa&ve-Exit<Tab>:wqa 保存并退出(&V)<Tab>:wqa
menutrans E&xit<Tab>:qa 退出(&X)<Tab>:qa
" Edit menu
menutrans &Edit 编辑(&E)
menutrans &Undo<Tab>u 恢复(&U)<Tab>u
menutrans &Undo<Tab>u 撤销(&U)<Tab>u
menutrans &Redo<Tab>^R 重做(&R)<Tab>^R
menutrans Rep&eat<Tab>\. 重复上次(&E)<Tab>\.
menutrans Rep&eat<Tab>\. 重复上次(&E)<Tab>\.
menutrans Cu&t<Tab>"+x 剪切(&T)<Tab>"+x
menutrans &Copy<Tab>"+y 复制(&C)<Tab>"+y
menutrans &Paste<Tab>"+gP 粘(&P)<Tab>"+gP
menutrans Put\ &Before<Tab>[p 贴到光标前(&B)<Tab>[p
menutrans Put\ &After<Tab>]p 贴到光标后(&A)<Tab>]p
menutrans &Paste<Tab>"+gP 粘(&P)<Tab>"+gP
menutrans Put\ &Before<Tab>[p 贴到光标前(&B)<Tab>[p
menutrans Put\ &After<Tab>]p 贴到光标后(&A)<Tab>]p
menutrans &Delete<Tab>x 删除(&D)<Tab>x
menutrans &Select\ all<Tab>ggVG 全选(&S)<Tab>ggvG
menutrans &Select\ all<Tab>ggVG 全选(&S)<Tab>ggVG
menutrans &Find\.\.\. 查找(&F)\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. 查找替换(&L)\.\.\.
menutrans Find\ and\ Rep&lace\.\.\. 查找替换(&L)\.\.\.
menutrans &Find<Tab>/ 查找(&F)<Tab>/
menutrans Find\ and\ Rep&lace<Tab>:%s 查找和替换(&L)<Tab>:%s
menutrans Settings\ &Window 设定窗口(&W)
menutrans Startup\ &Settings 启动设定(&S)
menutrans &Global\ Settings 全局设定(&G)
" Build boolean options
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! /增量查找模式<Tab>:set\ hls!
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! /关忽略大小写模式<Tab>:set\ ic!
menutrans Toggle\ &Showmatch<Tab>:set\ sm! /匹配显示<Tab>:set sm!
" Edit/Global Settings
menutrans Toggle\ Pattern\ &Highlight<Tab>:set\ hls! /关模式高亮(&H)<Tab>:set\ hls!
menutrans Toggle\ &Ignore-case<Tab>:set\ ic! /关忽略大小写(&I)<Tab>:set\ ic!
menutrans Toggle\ &Showmatch<Tab>:set\ sm! /关显示配对(&S)<Tab>:set\ sm!
menutrans &Context\ lines 上下文行数(&C)
menutrans &Virtual\ Edit 可视化编辑模式(&V)
menutrans &Virtual\ Edit 虚拟编辑(&V)
menutrans Never 从不
menutrans Block\ Selection 块选择
menutrans Insert\ mode 插入模式
menutrans Block\ and\ Insert 块选择插入模式
menutrans Always 所有模式
menutrans Block\ and\ Insert 块选择插入模式
menutrans Always 总是
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! /关插入模式<Tab>:set\ im!
menutrans Search\ &Path\.\.\. 查找路径\.\.\.(&P)
menutrans Ta&g\ Files\.\.\. 标签文件\.\.\.(&g)
menutrans Toggle\ Insert\ &Mode<Tab>:set\ im! /关插入模式(&M)<Tab>:set\ im!
menutrans Toggle\ Vi\ C&ompatible<Tab>:set\ cp! /\ Vi\ 兼容<Tab>:set\ cp!
menutrans Search\ &Path\.\.\. 查找路径(&P)\.\.\.
menutrans Ta&g\ Files\.\.\. Tag\ 文件(&T)\.\.\.
" GUI options
menutrans Toggle\ &Toolbar /关工具条(&T)
@@ -77,87 +85,111 @@ menutrans Toggle\ &Bottom\ Scrollbar 开/关底部滚动条(&B)
menutrans Toggle\ &Left\ Scrollbar /关左端滚动条(&L)
menutrans Toggle\ &Right\ Scrollbar /关右端滚动条(&R)
" Edit/File Settings
menutrans F&ile\ Settings 文件设定(&i)
menutrans F&ile\ Settings 文件设定(&I)
" Boolean options
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! /关显示行号<Tab>:set\ nu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! /显示Tab<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! /自动折行<Tab>:set\ wrap!
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! /词尾折行<Tab>:set\ lbr!
menutrans Toggle\ &expand-tab<Tab>:set\ et! /expand-tab<Tab>:set\ et!
menutrans Toggle\ &auto-indent<Tab>:set\ ai! /auto-indent<Tab>:set\ ai!
menutrans Toggle\ &C-indenting<Tab>:set\ cin! /C-indent<Tab>:set\ cin!
menutrans Toggle\ Line\ &Numbering<Tab>:set\ nu! /关显示行号(&N)<Tab>:set\ nu!
menutrans Toggle\ &List\ Mode<Tab>:set\ list! /\ list\ 模式(&L)<Tab>:set\ list!
menutrans Toggle\ Line\ &Wrap<Tab>:set\ wrap! /关折行(&W)<Tab>:set\ wrap!
menutrans Toggle\ W&rap\ at\ word<Tab>:set\ lbr! /整词折行(&R)<Tab>:set\ lbr!
menutrans Toggle\ &expand-tab<Tab>:set\ et! /扩展\ tab(&E)<Tab>:set\ et!
menutrans Toggle\ &auto-indent<Tab>:set\ ai! /自动缩进(&A)<Tab>:set\ ai!
menutrans Toggle\ &C-indenting<Tab>:set\ cin! /\ C\ 缩进(&C)<Tab>:set\ cin!
" other options
menutrans &Shiftwidth 宽度(&S)
menutrans Soft\ &Tabstop 伪Tab宽度(&T)
menutrans Te&xt\ Width\.\.\. 页面宽度(&x)\.\.\.
menutrans &Shiftwidth 宽度(&S)
menutrans Soft\ &Tabstop Soft\ Tab\ 宽度(&T)
menutrans Te&xt\ Width\.\.\. 文本宽度(&X)\.\.\.
menutrans &File\ Format\.\.\. 文件格式(&F)\.\.\.
menutrans C&olor\ Scheme 调色板(&o)
menutrans Select\ Fo&nt\.\.\. 选择字体(&n)\.\.\.
menutrans C&olor\ Scheme 配色方案(&O)
menutrans Select\ Fo&nt\.\.\. 选择字体(&N)\.\.\.
menutrans &Keymap Keymap(&K)
" Programming menu
menutrans &Tools 工具(&T)
menutrans &Jump\ to\ this\ tag<Tab>g^] 检索光标处的标签关键字(tag)(&J)<Tab>g^]
menutrans Jump\ &back<Tab>^T 跳回检索前的位置(&B)<Tab>^T
menutrans Build\ &Tags\ File 建立标签索引文件\ Tags(&T)
menutrans &Folding Folding设定(&F)
menutrans &Diff 比较(&D)
menutrans &Make<Tab>:make 执行\ Make(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl 列出编译错误(&E)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! 列出所有信息(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn 一个编译错误(&N)<Tab>:cn
menutrans &Previous\ Error<Tab>:cp 一个编译错误(&P)<Tab>:cp
menutrans &Older\ List<Tab>:cold 旧错误列表(&O)<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew 新错误列表(&E)<Tab>:cnew
menutrans Error\ &Window 错误信息窗口(&W)
menutrans &Set\ Compiler 设置编译器(&S)
menutrans &Convert\ to\ HEX<Tab>:%!xxd 转换成16进制<Tab>:%!xxd
menutrans Conve&rt\ back<Tab>:%!xxd\ -r 从16进制转换回文字<Tab>:%!xxd\ -r
menutrans &Jump\ to\ this\ tag<Tab>g^] 跳转到这个\ tag(&J)<Tab>g^]
menutrans Jump\ &back<Tab>^T 转返(&B)<Tab>^T
menutrans Build\ &Tags\ File 建立 Tags 文件(&T)
" Tools.Spelling Menu
menutrans &Spelling 拼写检查(&S)
menutrans &Spell\ Check\ On 打开拼写检查(&S)
menutrans Spell\ Check\ &Off 关闭拼写检查(&O)
menutrans To\ &Next\ error<Tab>]s 一个错误(&N)<Tab>]s
menutrans To\ &Previous\ error<Tab>[s 一个错误(&P)<Tab>[s
menutrans Suggest\ &Corrections<Tab>z= 修正建议(&C)<Tab>z=
menutrans &Repeat\ correction<Tab>:spellrepall 重复修正(&R)<Tab>:spellrepall
menutrans Set\ language\ to\ "en" 设定语言为\ "en"
menutrans Set\ language\ to\ "en_au" 设定语言为\ "en_au"
menutrans Set\ language\ to\ "en_ca" 设定语言为\ "en_ca"
menutrans Set\ language\ to\ "en_gb" 设定语言为\ "en_gb"
menutrans Set\ language\ to\ "en_nz" 设定语言为\ "en_nz"
menutrans Set\ language\ to\ "en_us" 设定语言为\ "en_us"
menutrans &Find\ More\ Languages 查找更多语言(&F)
" Tools.Fold Menu
menutrans &Enable/Disable\ folds<Tab>zi 使用/不使用Folding(&E)<Tab>zi
" open close folds
menutrans &Folding 折叠(&F)
menutrans &Enable/Disable\ folds<Tab>zi 启用/禁用折叠(&E)<Tab>zi
menutrans &View\ Cursor\ Line<Tab>zv 查看此行(&V)<Tab>zv
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx 查看此行(&W)<Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm 关闭Folds(&L)<Tab>zm
menutrans &Close\ all\ folds<Tab>zM 关闭所有Folds(&C)<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr 展开Folds(&P)<Tab>zr
menutrans &Open\ all\ folds<Tab>zR 开所有Folds(&O)<Tab>zR
menutrans Vie&w\ Cursor\ Line\ only<Tab>zMzx 查看此行(&W)<Tab>zMzx
menutrans C&lose\ more\ folds<Tab>zm 关闭更多折叠(&L)<Tab>zm
menutrans &Close\ all\ folds<Tab>zM 关闭所有折叠(&C)<Tab>zM
menutrans O&pen\ more\ folds<Tab>zr 打开更多折叠(&P)<Tab>zr
menutrans &Open\ all\ folds<Tab>zR 开所有折叠(&O)<Tab>zR
" fold method
menutrans Fold\ Met&hod Fold方式(&H)
menutrans Create\ &Fold<Tab>zf 建立Fold(&F)<Tab>zf
menutrans &Delete\ Fold<Tab>zd 删除Fold(&D)<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD 删除所有Fold(&A)<Tab>zD
menutrans Fold\ Met&hod 折叠方法(&H)
menutrans M&anual 手工(&A)
menutrans I&ndent 缩进(&N)
menutrans E&xpression 表达式(&X)
menutrans S&yntax 语法(&Y)
menutrans &Diff 比较(Diff)(&D)
menutrans Ma&rker 标记(&R)
" create and delete folds
menutrans Create\ &Fold<Tab>zf 创建折叠(&F)<Tab>zf
menutrans &Delete\ Fold<Tab>zd 删除折叠(&D)<Tab>zd
menutrans Delete\ &All\ Folds<Tab>zD 删除所有折叠(&A)<Tab>zD
" moving around in folds
menutrans Fold\ column\ &width 设定Fold栏宽(&W)
menutrans Fold\ column\ &width 折叠栏宽(&W)
" Tools.Diff Menu
menutrans &Update 更新(&U)
menutrans &Get\ Block 取得不同部分(&G)
menutrans &Put\ Block 将不同部分应用到对方(&P)
menutrans &Diff 比较(Diff)(&D)
menutrans &Update 更新(&U)
menutrans &Get\ Block 得到块(&G)
menutrans &Put\ Block 放置块(&P)
menutrans &Make<Tab>:make Make(&M)<Tab>:make
menutrans &List\ Errors<Tab>:cl 列出错误(&L)<Tab>:cl
menutrans L&ist\ Messages<Tab>:cl! 列出消息(&I)<Tab>:cl!
menutrans &Next\ Error<Tab>:cn 下一个错误(&N)<Tab>:cn
menutrans &Previous\ Error<Tab>:cp 上一个错误(&P)<Tab>:cp
menutrans &Older\ List<Tab>:cold 更旧的错误列表(&O)<Tab>:cold
menutrans N&ewer\ List<Tab>:cnew 更新的错误列表(&E)<Tab>:cnew
menutrans Error\ &Window 错误窗口(&W)
menutrans &Update<Tab>:cwin 更新(&U)<Tab>:cwin
menutrans &Open<Tab>:copen 打开(&O)<Tab>:copen
menutrans &Close<Tab>:cclose 关闭(&C)<Tab>:cclose
menutrans &Convert\ to\ HEX<Tab>:%!xxd 转换成十六进制<Tab>:%!xxd
menutrans Conve&rt\ back<Tab>:%!xxd\ -r 转换返回<Tab>:%!xxd\ -r
menutrans Se&T\ Compiler 设定编译器(&T)
" Names for buffer menu.
menutrans &Buffers 缓冲区(&B)
menutrans &Refresh\ menu 更新(&R)
menutrans &Refresh\ menu 更新菜单(&R)
menutrans &Delete 删除(&D)
menutrans &Alternate 修改(&L)
menutrans &Alternate 交替(&A)
menutrans &Next 下一个(&N)
menutrans &Previous 一个(&P)
menutrans &Previous 一个(&P)
" Window menu
menutrans &Window 窗口(&W)
menutrans &New<Tab>^Wn 新建窗口(&N)<Tab>^Wn
menutrans S&plit<Tab>^Ws 分割窗口(&P)<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ 分割到#(&L)<Tab>^W^^
menutrans &New<Tab>^Wn 新建(&N)<Tab>^Wn
menutrans S&plit<Tab>^Ws 分割(&P)<Tab>^Ws
menutrans Sp&lit\ To\ #<Tab>^W^^ 分割到\ #(&L)<Tab>^W^^
menutrans Split\ &Vertically<Tab>^Wv 垂直分割(&V)<Tab>^Wv
menutrans Split\ File\ E&xplorer 文件浏览器式分割(&X)
menutrans &Close<Tab>^Wc 关闭窗口(&C)<Tab>^Wc
menutrans Split\ File\ E&xplorer 分割文件浏览器(&X)
menutrans &Close<Tab>^Wc 关闭(&C)<Tab>^Wc
menutrans Close\ &Other(s)<Tab>^Wo 关闭其它窗口(&O)<Tab>^Wo
menutrans Move\ &To 移动到(&T)
menutrans &Top<Tab>^WK 顶端(&T)<Tab>^WK
@@ -166,13 +198,13 @@ menutrans &Left\ side<Tab>^WH 左边(&L)<Tab>^WH
menutrans &Right\ side<Tab>^WL 右边(&R)<Tab>^WL
" menutrans Ne&xt<Tab>^Ww 下一个(&X)<Tab>^Ww
" menutrans P&revious<Tab>^WW 上一个(&R)<Tab>^WW
menutrans Rotate\ &Up<Tab>^WR 上移窗口(&U)<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr 下移窗口(&D)<Tab>^Wr
menutrans &Equal\ Size<Tab>^W= 所有窗口等高(&E)<Tab>^W=
menutrans Rotate\ &Up<Tab>^WR 向上轮换(&U)<Tab>^WR
menutrans Rotate\ &Down<Tab>^Wr 向下轮换(&D)<Tab>^Wr
menutrans &Equal\ Size<Tab>^W= 等大(&E)<Tab>^W=
menutrans &Max\ Height<Tab>^W_ 最大高度(&M)<Tab>^W
menutrans M&in\ Height<Tab>^W1_ 最小高度(&i)<Tab>^W1_
menutrans M&in\ Height<Tab>^W1_ 最小高度(&I)<Tab>^W1_
menutrans Max\ &Width<Tab>^W\| 最大宽度(&W)<Tab>^W\|
menutrans Min\ Widt&h<Tab>^W1\| 最小宽度(&h)<Tab>^W1\|
menutrans Min\ Widt&h<Tab>^W1\| 最小宽度(&H)<Tab>^W1\|
"
" The popup menu
menutrans &Undo 撤销(&U)
@@ -180,8 +212,10 @@ menutrans Cu&t 剪切(&T)
menutrans &Copy 复制(&C)
menutrans &Paste 粘帖(&P)
menutrans &Delete 删除(&D)
menutrans Select\ Blockwise Blockwise选择
menutrans Select\ Blockwise 选择
menutrans Select\ &Word 选择单词(&W)
menutrans Select\ &Sentence 选择句子(&S)
menutrans Select\ Pa&ragraph 选择段落(&R)
menutrans Select\ &Line 选择行(&L)
menutrans Select\ &Block 选择块(&B)
menutrans Select\ &All 全选(&A)
@@ -196,35 +230,35 @@ if has("toolbar")
tmenu ToolBar.Save 保存当前文件
tmenu ToolBar.SaveAll 保存全部文件
tmenu ToolBar.Print 打印
tmenu ToolBar.Undo 撤销上次修改
tmenu ToolBar.Redo 重做上次撤销的动作
tmenu ToolBar.Cut 剪切剪贴板
tmenu ToolBar.Undo 撤销
tmenu ToolBar.Redo 重做
tmenu ToolBar.Cut 剪切剪贴板
tmenu ToolBar.Copy 复制到剪贴板
tmenu ToolBar.Paste 剪贴板粘帖
tmenu ToolBar.Paste 剪贴板粘帖
tmenu ToolBar.Find 查找...
tmenu ToolBar.FindNext 查找下一个
tmenu ToolBar.FindPrev 查找上一个
tmenu ToolBar.Replace 替换...
tmenu ToolBar.Replace 查找和替换...
tmenu ToolBar.LoadSesn 加载会话
tmenu ToolBar.SaveSesn 保存当前会话
tmenu ToolBar.RunScript 运行Vim脚本
tmenu ToolBar.Make 执行 Make
tmenu ToolBar.Shell 打开一个命令窗口
tmenu ToolBar.RunCtags 执行 ctags
tmenu ToolBar.TagJump 跳到当前光标位置的标签
tmenu ToolBar.SaveSesn 保存当前会话
tmenu ToolBar.RunScript 运行 Vim 脚本
tmenu ToolBar.Make 执行 Make (:make)
tmenu ToolBar.RunCtags 在当前目录建立 tags (!ctags -R .)
tmenu ToolBar.TagJump 跳转到光标位置的 tag
tmenu ToolBar.Help Vim 帮助
tmenu ToolBar.FindHelp 查找 Vim 帮助
endfun
endif
" Syntax menu
menutrans &Syntax 语法(&S)
menutrans Set\ '&syntax'\ only 只设定\ 'syntax'(&s)
menutrans Set\ '&filetype'\ too 也设定\ 'filetype'(&f)
menutrans &Off (&O)
menutrans &Manual 手动设定(&M)
menutrans A&utomatic 自动设定(&U)
menutrans on/off\ for\ &This\ file 只对这个文件打开/关闭(&T)
menutrans Co&lor\ test 色彩显示测试(&L)
menutrans &Highlight\ test 语法效果测试(&H)
menutrans &Convert\ to\ HTML 转换成\ HTML\ 格式(&C)
menutrans &Syntax 语法(&S)
menutrans &Manual 手工(&M)
menutrans A&utomatic 自动(&U)
menutrans on/off\ for\ &This\ file 仅对这个文件开/(&T)
menutrans &Show\ filetypes\ in\ menu 在菜单中显示文件类型(&S)
menutrans &Off 关闭(&O)
menutrans Co&lor\ test 色彩测试(&L)
menutrans &Highlight\ test 高亮测试(&H)
menutrans &Convert\ to\ HTML 转换成\ HTML(&C)
menutrans Set\ '&syntax'\ only 仅设定\ 'syntax'(&S)
menutrans Set\ '&filetype'\ too 也设定\ 'filetype'(&F)

View File

@@ -1,6 +1,6 @@
" Vim syntax support file
" Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2006 Apr 18
" Last Change: 2006 Apr 19
" (modified by David Ne\v{c}as (Yeti) <yeti@physics.muni.cz>)
" (XHTML support by Panagiotis Issaris <takis@lumumba.luc.ac.be>)
@@ -112,9 +112,10 @@ function! s:HtmlFormat(text, style_name)
" Replace the reserved html characters
let formatted = substitute(substitute(substitute(substitute(substitute(formatted, '&', '\&amp;', 'g'), '<', '\&lt;', 'g'), '>', '\&gt;', 'g'), '"', '\&quot;', 'g'), "\x0c", '<hr class="PAGE-BREAK">', 'g')
" Replace double spaces
" Replace double spaces and leading spaces
if ' ' != s:HtmlSpace
let formatted = substitute(formatted, ' ', s:HtmlSpace . s:HtmlSpace, 'g')
let formatted = substitute(formatted, '^ ', s:HtmlSpace, 'g')
endif
" Enclose in a span of class style_name
@@ -363,7 +364,7 @@ while s:lnum <= s:end
let s:len = strlen(s:line)
if s:numblines
let s:new = '<span class="lnr">' . s:new . '</span>'
let s:new = s:HtmlFormat(s:new, "lnr")
endif
" Get the diff attribute, if any.
@@ -419,7 +420,7 @@ if exists("html_no_pre")
if exists("use_xhtml")
exe "normal! a</p>\n</body>\n</html>\e"
else
exe "normal! a\n</body>\n</html>\e"
exe "normal! a</body>\n</html>\e"
endif
else
if exists("use_xhtml")
@@ -470,7 +471,7 @@ if s:numblines
if exists("html_use_css")
execute "normal! A\n.lnr { " . s:CSS1(hlID("LineNr")) . "}\e"
else
execute '%s+<span class="lnr">\([^<]*\)</span>+' . s:HtmlOpening(hlID("LineNr")) . '\1' . s:HtmlClosing(hlID("LineNr")) . '+g'
execute '%s+^<span class="lnr">\([^<]*\)</span>+' . s:HtmlOpening(hlID("LineNr")) . '\1' . s:HtmlClosing(hlID("LineNr")) . '+g'
endif
endif

View File

@@ -1,377 +0,0 @@
" Vim syntax file
" Language: TeX (core definition)
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-03-26
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" This follows the grouping (sort of) found at
" http://www.tug.org/utilities/plain/cseq.html#top-fam
syn keyword coretexTodo TODO FIXME XXX NOTE
syn match coretexComment display contains=coretexTodo
\ '\\\@<!\%(\\\\\)*\zs%.*$'
syn match coretexDimension display contains=@NoSpell
\ '[+-]\=\s*\%(\d\+\%([.,]\d*\)\=\|[.,]\d\+\)\s*\%(true\)\=\s*\%(p[tc]\|in\|bp\|c[mc]\|m[mu]\|dd\|sp\|e[mx]\)\>'
syn cluster coretexBox
\ contains=coretexBoxCommand,coretexBoxInternalQuantity,
\ coretexBoxParameterDimen,coretexBoxParameterInteger,
\ coretexBoxParameterToken
syn cluster coretexCharacter
\ contains=coretexCharacterCommand,coretexCharacterInternalQuantity,
\ coretexCharacterParameterInteger
syn cluster coretexDebugging
\ contains=coretexDebuggingCommand,coretexDebuggingParameterInteger,
\ coretexDebuggingParameterToken
syn cluster coretexFileIO
\ contains=coretexFileIOCommand,coretexFileIOInternalQuantity,
\ coretexFileIOParameterToken
syn cluster coretexFonts
\ contains=coretexFontsCommand,coretexFontsInternalQuantity
syn cluster coretexGlue
\ contains=coretexGlueCommand,coretexGlueDerivedCommand
syn cluster coretexHyphenation
\ contains=coretexHyphenationCommand,coretexHyphenationDerivedCommand,
\ coretexHyphenationInternalQuantity,coretexHyphenationParameterInteger
syn cluster coretexInserts
\ contains=coretexInsertsCommand,coretexInsertsParameterDimen,
\ coretexInsertsParameterGlue,coretexInsertsParameterInteger
syn cluster coretexJob
\ contains=coretexJobCommand,coretexJobInternalQuantity,
\ coretexJobParameterInteger
syn cluster coretexKern
\ contains=coretexKernCommand,coretexKernInternalQuantity
syn cluster coretexLogic
\ contains=coretexLogicCommand
syn cluster coretexMacro
\ contains=coretexMacroCommand,coretexMacroDerivedCommand,
\ coretexMacroParameterInteger
syn cluster coretexMarks
\ contains=coretexMarksCommand
syn cluster coretexMath
\ contains=coretexMathCommand,coretexMathDerivedCommand,
\ coretexMathInternalQuantity,coretexMathParameterDimen,
\ coretexMathParameterGlue,coretexMathParameterInteger,
\ coretexMathParameterMuglue,coretexMathParameterToken
syn cluster coretexPage
\ contains=coretexPageInternalQuantity,coretexPageParameterDimen,
\ coretexPageParameterGlue
syn cluster coretexParagraph
\ contains=coretexParagraphCommand,coretexParagraphInternalQuantity,
\ coretexParagraphParameterDimen,coretexParagraphParameterGlue,
\ coretexParagraphParameterInteger,coretexParagraphParameterToken
syn cluster coretexPenalties
\ contains=coretexPenaltiesCommand,coretexPenaltiesInternalQuantity,
\ coretexPenaltiesParameterInteger
syn cluster coretexRegisters
\ contains=coretexRegistersCommand,coretexRegistersInternalQuantity
syn cluster coretexTables
\ contains=coretexTablesCommand,coretexTablesParameterGlue,
\ coretexTablesParameterToken
syn cluster coretexCommand
\ contains=coretexBoxCommand,coretexCharacterCommand,
\ coretexDebuggingCommand,coretexFileIOCommand,
\ coretexFontsCommand,coretexGlueCommand,
\ coretexHyphenationCommand,coretexInsertsCommand,
\ coretexJobCommand,coretexKernCommand,coretexLogicCommand,
\ coretexMacroCommand,coretexMarksCommand,coretexMathCommand,
\ coretexParagraphCommand,coretexPenaltiesCommand,coretexRegistersCommand,
\ coretexTablesCommand
syn match coretexBoxCommand display contains=@NoSpell
\ '\\\%([hv]\=box\|[cx]\=leaders\|copy\|[hv]rule\|lastbox\|setbox\|un[hv]\%(box\|copy\)\|vtop\)\>'
syn match coretexCharacterCommand display contains=@NoSpell
\ '\\\%([] ]\|\%(^^M\|accent\|char\|\%(lower\|upper\)case\|number\|romannumeral\|string\)\>\)'
syn match coretexDebuggingCommand display contains=@NoSpell
\ '\\\%(\%(batch\|\%(non\|error\)stop\|scroll\)mode\|\%(err\)\=message\|meaning\|show\%(box\%(breadth\|depth\)\=\|lists\|the\)\)\>'
syn match coretexFileIOCommand display contains=@NoSpell
\ '\\\%(\%(close\|open\)\%(in\|out\)\|endinput\|immediate\|input\|read\|shipout\|special\|write\)\>'
syn match coretexFontsCommand display contains=@NoSpell
\ '\\\%(/\|fontname\)\>'
syn match coretexGlueCommand display contains=@NoSpell
\ '\\\%([hv]\|un\)skip\>'
syn match coretexHyphenationCommand display contains=@NoSpell
\ '\\\%(discretionary\|hyphenation\|patterns\|setlanguage\)\>'
syn match coretexInsertsCommand display contains=@NoSpell
\ '\\\%(insert\|split\%(bot\|first\)mark\|vsplit\)\>'
syn match coretexJobCommand display contains=@NoSpell
\ '\\\%(dump\|end\|jobname\)\>'
syn match coretexKernCommand display contains=@NoSpell
\ '\\\%(kern\|lower\|move\%(left\|right\)\|raise\|unkern\)\>'
syn match coretexLogicCommand display contains=@NoSpell
\ '\\\%(else\|fi\|if[a-zA-Z@]\+\|or\)\>'
" \ '\\\%(else\|fi\|if\%(case\|cat\|dim\|eof\|false\|[hv]box\|[hmv]mode\|inner\|num\|odd\|true\|void\|x\)\=\|or\)\>'
syn match coretexMacroCommand display contains=@NoSpell
\ '\\\%(after\%(assignment\|group\)\|\%(begin\|end\)group\|\%(end\)\=csname\|e\=def\|expandafter\|futurelet\|global\|let\|long\|noexpand\|outer\|relax\|the\)\>'
syn match coretexMarksCommand display contains=@NoSpell
\ '\\\%(bot\|first\|top\)\=mark\>'
syn match coretexMathCommand display contains=@NoSpell
\ '\\\%(abovewithdelims\|delimiter\|display\%(limits\|style\)\|l\=eqno\|left\|\%(no\)\=limits\|math\%(accent\|bin\|char\|choice\|close\|code\|inner\|op\|open\|ord\|punct\|rel\)\|mkern\|mskip\|muskipdef\|nonscript\|\%(over\|under\)line\|radical\|right\|\%(\%(script\)\{1,2}\|text\)style\|vcenter\)\>'
syn match coretexParagraphCommand display contains=@NoSpell
\ '\\\%(ignorespaces\|indent\|no\%(boundary\|indent\)\|par\|vadjust\)\>'
syn match coretexPenaltiesCommand display contains=@NoSpell
\ '\\\%(un\)\=penalty\>'
syn match coretexRegistersCommand display contains=@NoSpell
\ '\\\%(advance\|\%(count\|dimen\|skip\|toks\)def\|divide\|multiply\)\>'
syn match coretexTablesCommand display contains=@NoSpell
\ '\\\%(cr\|crcr\|[hv]align\|noalign\|omit\|span\)\>'
syn cluster coretexDerivedCommand
\ contains=coretexGlueDerivedCommand,coretexHyphenationDerivedCommand,
\ coretexMacroDerivedCommand,coretexMathDerivedCommand
syn match coretexGlueDerivedCommand display contains=@NoSpell
\ '\\\%([hv]fil\%(l\|neg\)\=\|[hv]ss\)\>'
syn match coretexHyphenationDerivedCommand display contains=@NoSpell
\ '\\-'
syn match coretexMacroDerivedCommand display contains=@NoSpell
\ '\\[gx]def\>'
syn match coretexMathDerivedCommand display contains=@NoSpell
\ '\\\%(above\|atop\%(withdelims\)\=\|mathchardef\|over\|overwithdelims\)\>'
syn cluster coretexInternalQuantity
\ contains=coretexBoxInternalQuantity,coretexCharacterInternalQuantity,
\ coretexFileIOInternalQuantity,coretexFontsInternalQuantity,
\ coretexHyphenationInternalQuantity,coretexJobInternalQuantity,
\ coretexKernInternalQuantity,coretexMathInternalQuantity,
\ coretexPageInternalQuantity,coretexParagraphInternalQuantity,
\ coretexPenaltiesInternalQuantity,coretexRegistersInternalQuantity
syn match coretexBoxInternalQuantity display contains=@NoSpell
\ '\\\%(badness\|dp\|ht\|prevdepth\|wd\)\>'
syn match coretexCharacterInternalQuantity display contains=@NoSpell
\ '\\\%(catcode\|chardef\|\%([ul]c\|sf\)code\)\>'
syn match coretexFileIOInternalQuantity display contains=@NoSpell
\ '\\inputlineno\>'
syn match coretexFontsInternalQuantity display contains=@NoSpell
\ '\\\%(font\%(dimen\)\=\|nullfont\)\>'
syn match coretexHyphenationInternalQuantity display contains=@NoSpell
\ '\\hyphenchar\>'
syn match coretexJobInternalQuantity display contains=@NoSpell
\ '\\deadcycles\>'
syn match coretexKernInternalQuantity display contains=@NoSpell
\ '\\lastkern\>'
syn match coretexMathInternalQuantity display contains=@NoSpell
\ '\\\%(delcode\|mathcode\|muskip\|\%(\%(script\)\{1,2}\|text\)font\|skewchar\)\>'
syn match coretexPageInternalQuantity display contains=@NoSpell
\ '\\page\%(depth\|fil\{1,3}stretch\|goal\|shrink\|stretch\|total\)\>'
syn match coretexParagraphInternalQuantity display contains=@NoSpell
\ '\\\%(prevgraf\|spacefactor\)\>'
syn match coretexPenaltiesInternalQuantity display contains=@NoSpell
\ '\\lastpenalty\>'
syn match coretexRegistersInternalQuantity display contains=@NoSpell
\ '\\\%(count\|dimen\|skip\|toks\)\d\+\>'
syn cluster coretexParameterDimen
\ contains=coretexBoxParameterDimen,coretexInsertsParameterDimen,
\ coretexMathParameterDimen,coretexPageParameterDimen,
\ coretexParagraphParameterDimen
syn match coretexBoxParameterDimen display contains=@NoSpell
\ '\\\%(boxmaxdepth\|[hv]fuzz\|overfullrule\)\>'
syn match coretexInsertsParameterDimen display contains=@NoSpell
\ '\\splitmaxdepth\>'
syn match coretexMathParameterDimen display contains=@NoSpell
\ '\\\%(delimitershortfall\|display\%(indent\|width\)\|mathsurround\|nulldelimiterspace\|predisplaysize\|scriptspace\)\>'
syn match coretexPageParameterDimen display contains=@NoSpell
\ '\\\%([hv]offset\|maxdepth\|vsize\)\>'
syn match coretexParagraphParameterDimen display contains=@NoSpell
\ '\\\%(emergencystretch\|\%(hang\|par\)indent\|hsize\|lineskiplimit\)\>'
syn cluster coretexParameterGlue
\ contains=coretexInsertsParameterGlue,coretexMathParameterGlue,
\ coretexPageParameterGlue,coretexParagraphParameterGlue,
\ coretexTablesParameterGlue
syn match coretexInsertsParameterGlue display contains=@NoSpell
\ '\\splittopskip\>'
syn match coretexMathParameterGlue display contains=@NoSpell
\ '\\\%(above\|below\)display\%(short\)\=skip\>'
syn match coretexPageParameterGlue display contains=@NoSpell
\ '\\topskip\>'
syn match coretexParagraphParameterGlue display contains=@NoSpell
\ '\\\%(baseline\|left\|line\|par\%(fill\)\=\|right\|x\=space\)skip\>'
syn match coretexTablesParameterGlue display contains=@NoSpell
\ '\\tabskip\>'
syn cluster coretexParameterInteger
\ contains=coretexBoxParameterInteger,coretexCharacterParameterInteger,
\ coretexDebuggingParameterInteger,coretexHyphenationParameterInteger,
\ coretexInsertsParameterInteger,coretexJobParameterInteger,
\ coretexMacroParameterInteger,coretexMathParameterInteger,
\ coretexParagraphParameterInteger,coretexPenaltiesParameterInteger,
syn match coretexBoxParameterInteger display contains=@NoSpell
\ '\\[hv]badness\>'
syn match coretexCharacterParameterInteger display contains=@NoSpell
\ '\\\%(\%(endline\|escape\|newline\)char\)\>'
syn match coretexDebuggingParameterInteger display contains=@NoSpell
\ '\\\%(errorcontextlines\|pausing\|tracing\%(commands\|lostchars\|macros\|online\|output\|pages\|paragraphs\|restores|stats\)\)\>'
syn match coretexHyphenationParameterInteger display contains=@NoSpell
\ '\\\%(defaulthyphenchar\|language\|\%(left\|right\)hyphenmin\|uchyph\)\>'
syn match coretexInsertsParameterInteger display contains=@NoSpell
\ '\\\%(holdinginserts\)\>'
syn match coretexJobParameterInteger display contains=@NoSpell
\ '\\\%(day\|mag\|maxdeadcycles\|month\|time\|year\)\>'
syn match coretexMacroParameterInteger display contains=@NoSpell
\ '\\globaldefs\>'
syn match coretexMathParameterInteger display contains=@NoSpell
\ '\\\%(binoppenalty\|defaultskewchar\|delimiterfactor\|displaywidowpenalty\|fam\|\%(post\|pre\)displaypenalty\|relpenalty\)\>'
syn match coretexParagraphParameterInteger display contains=@NoSpell
\ '\\\%(\%(adj\|\%(double\|final\)hyphen\)demerits\|looseness\|\%(pre\)\=tolerance\)\>'
syn match coretexPenaltiesParameterInteger display contains=@NoSpell
\ '\\\%(broken\|club\|exhyphen\|floating\|hyphen\|interline\|line\|output\|widow\)penalty\>'
syn cluster coretexParameterMuglue
\ contains=coretexMathParameterMuglue
syn match coretexMathParameterMuglue display contains=@NoSpell
\ '\\\%(med\|thick\|thin\)muskip\>'
syn cluster coretexParameterDimen
\ contains=coretexBoxParameterToken,coretexDebuggingParameterToken,
\ coretexFileIOParameterToken,coretexMathParameterToken,
\ coretexParagraphParameterToken,coretexTablesParameterToken
syn match coretexBoxParameterToken display contains=@NoSpell
\ '\\every[hv]box\>'
syn match coretexDebuggingParameterToken display contains=@NoSpell
\ '\\errhelp\>'
syn match coretexFileIOParameterToken display contains=@NoSpell
\ '\\output\>'
syn match coretexMathParameterToken display contains=@NoSpell
\ '\\every\%(display\|math\)\>'
syn match coretexParagraphParameterToken display contains=@NoSpell
\ '\\everypar\>'
syn match coretexTablesParameterToken display contains=@NoSpell
\ '\\everycr\>'
hi def link coretexCharacter Character
hi def link coretexNumber Number
hi def link coretexIdentifier Identifier
hi def link coretexStatement Statement
hi def link coretexConditional Conditional
hi def link coretexPreProc PreProc
hi def link coretexMacro Macro
hi def link coretexType Type
hi def link coretexDebug Debug
hi def link coretexTodo Todo
hi def link coretexComment Comment
hi def link coretexDimension coretexNumber
hi def link coretexCommand coretexStatement
hi def link coretexBoxCommand coretexCommand
hi def link coretexCharacterCommand coretexCharacter
hi def link coretexDebuggingCommand coretexDebug
hi def link coretexFileIOCommand coretexCommand
hi def link coretexFontsCommand coretexType
hi def link coretexGlueCommand coretexCommand
hi def link coretexHyphenationCommand coretexCommand
hi def link coretexInsertsCommand coretexCommand
hi def link coretexJobCommand coretexPreProc
hi def link coretexKernCommand coretexCommand
hi def link coretexLogicCommand coretexConditional
hi def link coretexMacroCommand coretexMacro
hi def link coretexMarksCommand coretexCommand
hi def link coretexMathCommand coretexCommand
hi def link coretexParagraphCommand coretexCommand
hi def link coretexPenaltiesCommand coretexCommand
hi def link coretexRegistersCommand coretexCommand
hi def link coretexTablesCommand coretexCommand
hi def link coretexDerivedCommand coretexStatement
hi def link coretexGlueDerivedCommand coretexDerivedCommand
hi def link coretexHyphenationDerivedCommand coretexDerivedCommand
hi def link coretexMacroDerivedCommand coretexDerivedCommand
hi def link coretexMathDerivedCommand coretexDerivedCommand
hi def link coretexInternalQuantity coretexIdentifier
hi def link coretexBoxInternalQuantity coretexInternalQuantity
hi def link coretexCharacterInternalQuantity coretexInternalQuantity
hi def link coretexFileIOInternalQuantity coretexInternalQuantity
hi def link coretexFontsInternalQuantity coretexInternalQuantity
hi def link coretexHyphenationInternalQuantity coretexInternalQuantity
hi def link coretexJobInternalQuantity coretexInternalQuantity
hi def link coretexKernInternalQuantity coretexInternalQuantity
hi def link coretexMathInternalQuantity coretexInternalQuantity
hi def link coretexPageInternalQuantity coretexInternalQuantity
hi def link coretexParagraphInternalQuantity coretexInternalQuantity
hi def link coretexPenaltiesInternalQuantity coretexInternalQuantity
hi def link coretexRegistersInternalQuantity coretexInternalQuantity
hi def link coretexParameterDimen coretexNumber
hi def link coretexBoxParameterDimen coretexParameterDimen
hi def link coretexInsertsParameterDimen coretexParameterDimen
hi def link coretexMathParameterDimen coretexParameterDimen
hi def link coretexPageParameterDimen coretexParameterDimen
hi def link coretexParagraphParameterDimen coretexParameterDimen
hi def link coretexParameterGlue coretexNumber
hi def link coretexInsertsParameterGlue coretexParameterGlue
hi def link coretexMathParameterGlue coretexParameterGlue
hi def link coretexPageParameterGlue coretexParameterGlue
hi def link coretexParagraphParameterGlue coretexParameterGlue
hi def link coretexTablesParameterGlue coretexParameterGlue
hi def link coretexParameterInteger coretexNumber
hi def link coretexBoxParameterInteger coretexParameterInteger
hi def link coretexCharacterParameterInteger coretexParameterInteger
hi def link coretexDebuggingParameterInteger coretexParameterInteger
hi def link coretexHyphenationParameterInteger coretexParameterInteger
hi def link coretexInsertsParameterInteger coretexParameterInteger
hi def link coretexJobParameterInteger coretexParameterInteger
hi def link coretexMacroParameterInteger coretexParameterInteger
hi def link coretexMathParameterInteger coretexParameterInteger
hi def link coretexParagraphParameterInteger coretexParameterInteger
hi def link coretexPenaltiesParameterInteger coretexParameterInteger
hi def link coretexParameterMuglue coretexNumber
hi def link coretexMathParameterMuglue coretexParameterMuglue
hi def link coretexParameterToken coretexIdentifier
hi def link coretexBoxParameterToken coretexParameterToken
hi def link coretexDebuggingParameterToken coretexParameterToken
hi def link coretexFileIOParameterToken coretexParameterToken
hi def link coretexMathParameterToken coretexParameterToken
hi def link coretexParagraphParameterToken coretexParameterToken
hi def link coretexTablesParameterToken coretexParameterToken
let b:current_syntax = "coretex"
let &cpo = s:cpo_save
unlet s:cpo_save

376
runtime/syntax/initex.vim Normal file
View File

@@ -0,0 +1,376 @@
" Vim syntax file
" Language: TeX (core definition)
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
endif
let s:cpo_save = &cpo
set cpo&vim
" This follows the grouping (sort of) found at
" http://www.tug.org/utilities/plain/cseq.html#top-fam
syn keyword initexTodo TODO FIXME XXX NOTE
syn match initexComment display contains=initexTodo
\ '\\\@<!\%(\\\\\)*\zs%.*$'
syn match initexDimension display contains=@NoSpell
\ '[+-]\=\s*\%(\d\+\%([.,]\d*\)\=\|[.,]\d\+\)\s*\%(true\)\=\s*\%(p[tc]\|in\|bp\|c[mc]\|m[mu]\|dd\|sp\|e[mx]\)\>'
syn cluster initexBox
\ contains=initexBoxCommand,initexBoxInternalQuantity,
\ initexBoxParameterDimen,initexBoxParameterInteger,
\ initexBoxParameterToken
syn cluster initexCharacter
\ contains=initexCharacterCommand,initexCharacterInternalQuantity,
\ initexCharacterParameterInteger
syn cluster initexDebugging
\ contains=initexDebuggingCommand,initexDebuggingParameterInteger,
\ initexDebuggingParameterToken
syn cluster initexFileIO
\ contains=initexFileIOCommand,initexFileIOInternalQuantity,
\ initexFileIOParameterToken
syn cluster initexFonts
\ contains=initexFontsCommand,initexFontsInternalQuantity
syn cluster initexGlue
\ contains=initexGlueCommand,initexGlueDerivedCommand
syn cluster initexHyphenation
\ contains=initexHyphenationCommand,initexHyphenationDerivedCommand,
\ initexHyphenationInternalQuantity,initexHyphenationParameterInteger
syn cluster initexInserts
\ contains=initexInsertsCommand,initexInsertsParameterDimen,
\ initexInsertsParameterGlue,initexInsertsParameterInteger
syn cluster initexJob
\ contains=initexJobCommand,initexJobInternalQuantity,
\ initexJobParameterInteger
syn cluster initexKern
\ contains=initexKernCommand,initexKernInternalQuantity
syn cluster initexLogic
\ contains=initexLogicCommand
syn cluster initexMacro
\ contains=initexMacroCommand,initexMacroDerivedCommand,
\ initexMacroParameterInteger
syn cluster initexMarks
\ contains=initexMarksCommand
syn cluster initexMath
\ contains=initexMathCommand,initexMathDerivedCommand,
\ initexMathInternalQuantity,initexMathParameterDimen,
\ initexMathParameterGlue,initexMathParameterInteger,
\ initexMathParameterMuglue,initexMathParameterToken
syn cluster initexPage
\ contains=initexPageInternalQuantity,initexPageParameterDimen,
\ initexPageParameterGlue
syn cluster initexParagraph
\ contains=initexParagraphCommand,initexParagraphInternalQuantity,
\ initexParagraphParameterDimen,initexParagraphParameterGlue,
\ initexParagraphParameterInteger,initexParagraphParameterToken
syn cluster initexPenalties
\ contains=initexPenaltiesCommand,initexPenaltiesInternalQuantity,
\ initexPenaltiesParameterInteger
syn cluster initexRegisters
\ contains=initexRegistersCommand,initexRegistersInternalQuantity
syn cluster initexTables
\ contains=initexTablesCommand,initexTablesParameterGlue,
\ initexTablesParameterToken
syn cluster initexCommand
\ contains=initexBoxCommand,initexCharacterCommand,
\ initexDebuggingCommand,initexFileIOCommand,
\ initexFontsCommand,initexGlueCommand,
\ initexHyphenationCommand,initexInsertsCommand,
\ initexJobCommand,initexKernCommand,initexLogicCommand,
\ initexMacroCommand,initexMarksCommand,initexMathCommand,
\ initexParagraphCommand,initexPenaltiesCommand,initexRegistersCommand,
\ initexTablesCommand
syn match initexBoxCommand display contains=@NoSpell
\ '\\\%([hv]\=box\|[cx]\=leaders\|copy\|[hv]rule\|lastbox\|setbox\|un[hv]\%(box\|copy\)\|vtop\)\>'
syn match initexCharacterCommand display contains=@NoSpell
\ '\\\%([] ]\|\%(^^M\|accent\|char\|\%(lower\|upper\)case\|number\|romannumeral\|string\)\>\)'
syn match initexDebuggingCommand display contains=@NoSpell
\ '\\\%(\%(batch\|\%(non\|error\)stop\|scroll\)mode\|\%(err\)\=message\|meaning\|show\%(box\%(breadth\|depth\)\=\|lists\|the\)\)\>'
syn match initexFileIOCommand display contains=@NoSpell
\ '\\\%(\%(close\|open\)\%(in\|out\)\|endinput\|immediate\|input\|read\|shipout\|special\|write\)\>'
syn match initexFontsCommand display contains=@NoSpell
\ '\\\%(/\|fontname\)\>'
syn match initexGlueCommand display contains=@NoSpell
\ '\\\%([hv]\|un\)skip\>'
syn match initexHyphenationCommand display contains=@NoSpell
\ '\\\%(discretionary\|hyphenation\|patterns\|setlanguage\)\>'
syn match initexInsertsCommand display contains=@NoSpell
\ '\\\%(insert\|split\%(bot\|first\)mark\|vsplit\)\>'
syn match initexJobCommand display contains=@NoSpell
\ '\\\%(dump\|end\|jobname\)\>'
syn match initexKernCommand display contains=@NoSpell
\ '\\\%(kern\|lower\|move\%(left\|right\)\|raise\|unkern\)\>'
syn match initexLogicCommand display contains=@NoSpell
\ '\\\%(else\|fi\|if[a-zA-Z@]\+\|or\)\>'
" \ '\\\%(else\|fi\|if\%(case\|cat\|dim\|eof\|false\|[hv]box\|[hmv]mode\|inner\|num\|odd\|true\|void\|x\)\=\|or\)\>'
syn match initexMacroCommand display contains=@NoSpell
\ '\\\%(after\%(assignment\|group\)\|\%(begin\|end\)group\|\%(end\)\=csname\|e\=def\|expandafter\|futurelet\|global\|let\|long\|noexpand\|outer\|relax\|the\)\>'
syn match initexMarksCommand display contains=@NoSpell
\ '\\\%(bot\|first\|top\)\=mark\>'
syn match initexMathCommand display contains=@NoSpell
\ '\\\%(abovewithdelims\|delimiter\|display\%(limits\|style\)\|l\=eqno\|left\|\%(no\)\=limits\|math\%(accent\|bin\|char\|choice\|close\|code\|inner\|op\|open\|ord\|punct\|rel\)\|mkern\|mskip\|muskipdef\|nonscript\|\%(over\|under\)line\|radical\|right\|\%(\%(script\)\{1,2}\|text\)style\|vcenter\)\>'
syn match initexParagraphCommand display contains=@NoSpell
\ '\\\%(ignorespaces\|indent\|no\%(boundary\|indent\)\|par\|vadjust\)\>'
syn match initexPenaltiesCommand display contains=@NoSpell
\ '\\\%(un\)\=penalty\>'
syn match initexRegistersCommand display contains=@NoSpell
\ '\\\%(advance\|\%(count\|dimen\|skip\|toks\)def\|divide\|multiply\)\>'
syn match initexTablesCommand display contains=@NoSpell
\ '\\\%(cr\|crcr\|[hv]align\|noalign\|omit\|span\)\>'
syn cluster initexDerivedCommand
\ contains=initexGlueDerivedCommand,initexHyphenationDerivedCommand,
\ initexMacroDerivedCommand,initexMathDerivedCommand
syn match initexGlueDerivedCommand display contains=@NoSpell
\ '\\\%([hv]fil\%(l\|neg\)\=\|[hv]ss\)\>'
syn match initexHyphenationDerivedCommand display contains=@NoSpell
\ '\\-'
syn match initexMacroDerivedCommand display contains=@NoSpell
\ '\\[gx]def\>'
syn match initexMathDerivedCommand display contains=@NoSpell
\ '\\\%(above\|atop\%(withdelims\)\=\|mathchardef\|over\|overwithdelims\)\>'
syn cluster initexInternalQuantity
\ contains=initexBoxInternalQuantity,initexCharacterInternalQuantity,
\ initexFileIOInternalQuantity,initexFontsInternalQuantity,
\ initexHyphenationInternalQuantity,initexJobInternalQuantity,
\ initexKernInternalQuantity,initexMathInternalQuantity,
\ initexPageInternalQuantity,initexParagraphInternalQuantity,
\ initexPenaltiesInternalQuantity,initexRegistersInternalQuantity
syn match initexBoxInternalQuantity display contains=@NoSpell
\ '\\\%(badness\|dp\|ht\|prevdepth\|wd\)\>'
syn match initexCharacterInternalQuantity display contains=@NoSpell
\ '\\\%(catcode\|chardef\|\%([ul]c\|sf\)code\)\>'
syn match initexFileIOInternalQuantity display contains=@NoSpell
\ '\\inputlineno\>'
syn match initexFontsInternalQuantity display contains=@NoSpell
\ '\\\%(font\%(dimen\)\=\|nullfont\)\>'
syn match initexHyphenationInternalQuantity display contains=@NoSpell
\ '\\hyphenchar\>'
syn match initexJobInternalQuantity display contains=@NoSpell
\ '\\deadcycles\>'
syn match initexKernInternalQuantity display contains=@NoSpell
\ '\\lastkern\>'
syn match initexMathInternalQuantity display contains=@NoSpell
\ '\\\%(delcode\|mathcode\|muskip\|\%(\%(script\)\{1,2}\|text\)font\|skewchar\)\>'
syn match initexPageInternalQuantity display contains=@NoSpell
\ '\\page\%(depth\|fil\{1,3}stretch\|goal\|shrink\|stretch\|total\)\>'
syn match initexParagraphInternalQuantity display contains=@NoSpell
\ '\\\%(prevgraf\|spacefactor\)\>'
syn match initexPenaltiesInternalQuantity display contains=@NoSpell
\ '\\lastpenalty\>'
syn match initexRegistersInternalQuantity display contains=@NoSpell
\ '\\\%(count\|dimen\|skip\|toks\)\d\+\>'
syn cluster initexParameterDimen
\ contains=initexBoxParameterDimen,initexInsertsParameterDimen,
\ initexMathParameterDimen,initexPageParameterDimen,
\ initexParagraphParameterDimen
syn match initexBoxParameterDimen display contains=@NoSpell
\ '\\\%(boxmaxdepth\|[hv]fuzz\|overfullrule\)\>'
syn match initexInsertsParameterDimen display contains=@NoSpell
\ '\\splitmaxdepth\>'
syn match initexMathParameterDimen display contains=@NoSpell
\ '\\\%(delimitershortfall\|display\%(indent\|width\)\|mathsurround\|nulldelimiterspace\|predisplaysize\|scriptspace\)\>'
syn match initexPageParameterDimen display contains=@NoSpell
\ '\\\%([hv]offset\|maxdepth\|vsize\)\>'
syn match initexParagraphParameterDimen display contains=@NoSpell
\ '\\\%(emergencystretch\|\%(hang\|par\)indent\|hsize\|lineskiplimit\)\>'
syn cluster initexParameterGlue
\ contains=initexInsertsParameterGlue,initexMathParameterGlue,
\ initexPageParameterGlue,initexParagraphParameterGlue,
\ initexTablesParameterGlue
syn match initexInsertsParameterGlue display contains=@NoSpell
\ '\\splittopskip\>'
syn match initexMathParameterGlue display contains=@NoSpell
\ '\\\%(above\|below\)display\%(short\)\=skip\>'
syn match initexPageParameterGlue display contains=@NoSpell
\ '\\topskip\>'
syn match initexParagraphParameterGlue display contains=@NoSpell
\ '\\\%(baseline\|left\|line\|par\%(fill\)\=\|right\|x\=space\)skip\>'
syn match initexTablesParameterGlue display contains=@NoSpell
\ '\\tabskip\>'
syn cluster initexParameterInteger
\ contains=initexBoxParameterInteger,initexCharacterParameterInteger,
\ initexDebuggingParameterInteger,initexHyphenationParameterInteger,
\ initexInsertsParameterInteger,initexJobParameterInteger,
\ initexMacroParameterInteger,initexMathParameterInteger,
\ initexParagraphParameterInteger,initexPenaltiesParameterInteger,
syn match initexBoxParameterInteger display contains=@NoSpell
\ '\\[hv]badness\>'
syn match initexCharacterParameterInteger display contains=@NoSpell
\ '\\\%(\%(endline\|escape\|newline\)char\)\>'
syn match initexDebuggingParameterInteger display contains=@NoSpell
\ '\\\%(errorcontextlines\|pausing\|tracing\%(commands\|lostchars\|macros\|online\|output\|pages\|paragraphs\|restores|stats\)\)\>'
syn match initexHyphenationParameterInteger display contains=@NoSpell
\ '\\\%(defaulthyphenchar\|language\|\%(left\|right\)hyphenmin\|uchyph\)\>'
syn match initexInsertsParameterInteger display contains=@NoSpell
\ '\\\%(holdinginserts\)\>'
syn match initexJobParameterInteger display contains=@NoSpell
\ '\\\%(day\|mag\|maxdeadcycles\|month\|time\|year\)\>'
syn match initexMacroParameterInteger display contains=@NoSpell
\ '\\globaldefs\>'
syn match initexMathParameterInteger display contains=@NoSpell
\ '\\\%(binoppenalty\|defaultskewchar\|delimiterfactor\|displaywidowpenalty\|fam\|\%(post\|pre\)displaypenalty\|relpenalty\)\>'
syn match initexParagraphParameterInteger display contains=@NoSpell
\ '\\\%(\%(adj\|\%(double\|final\)hyphen\)demerits\|looseness\|\%(pre\)\=tolerance\)\>'
syn match initexPenaltiesParameterInteger display contains=@NoSpell
\ '\\\%(broken\|club\|exhyphen\|floating\|hyphen\|interline\|line\|output\|widow\)penalty\>'
syn cluster initexParameterMuglue
\ contains=initexMathParameterMuglue
syn match initexMathParameterMuglue display contains=@NoSpell
\ '\\\%(med\|thick\|thin\)muskip\>'
syn cluster initexParameterDimen
\ contains=initexBoxParameterToken,initexDebuggingParameterToken,
\ initexFileIOParameterToken,initexMathParameterToken,
\ initexParagraphParameterToken,initexTablesParameterToken
syn match initexBoxParameterToken display contains=@NoSpell
\ '\\every[hv]box\>'
syn match initexDebuggingParameterToken display contains=@NoSpell
\ '\\errhelp\>'
syn match initexFileIOParameterToken display contains=@NoSpell
\ '\\output\>'
syn match initexMathParameterToken display contains=@NoSpell
\ '\\every\%(display\|math\)\>'
syn match initexParagraphParameterToken display contains=@NoSpell
\ '\\everypar\>'
syn match initexTablesParameterToken display contains=@NoSpell
\ '\\everycr\>'
hi def link initexCharacter Character
hi def link initexNumber Number
hi def link initexIdentifier Identifier
hi def link initexStatement Statement
hi def link initexConditional Conditional
hi def link initexPreProc PreProc
hi def link initexMacro Macro
hi def link initexType Type
hi def link initexDebug Debug
hi def link initexTodo Todo
hi def link initexComment Comment
hi def link initexDimension initexNumber
hi def link initexCommand initexStatement
hi def link initexBoxCommand initexCommand
hi def link initexCharacterCommand initexCharacter
hi def link initexDebuggingCommand initexDebug
hi def link initexFileIOCommand initexCommand
hi def link initexFontsCommand initexType
hi def link initexGlueCommand initexCommand
hi def link initexHyphenationCommand initexCommand
hi def link initexInsertsCommand initexCommand
hi def link initexJobCommand initexPreProc
hi def link initexKernCommand initexCommand
hi def link initexLogicCommand initexConditional
hi def link initexMacroCommand initexMacro
hi def link initexMarksCommand initexCommand
hi def link initexMathCommand initexCommand
hi def link initexParagraphCommand initexCommand
hi def link initexPenaltiesCommand initexCommand
hi def link initexRegistersCommand initexCommand
hi def link initexTablesCommand initexCommand
hi def link initexDerivedCommand initexStatement
hi def link initexGlueDerivedCommand initexDerivedCommand
hi def link initexHyphenationDerivedCommand initexDerivedCommand
hi def link initexMacroDerivedCommand initexDerivedCommand
hi def link initexMathDerivedCommand initexDerivedCommand
hi def link initexInternalQuantity initexIdentifier
hi def link initexBoxInternalQuantity initexInternalQuantity
hi def link initexCharacterInternalQuantity initexInternalQuantity
hi def link initexFileIOInternalQuantity initexInternalQuantity
hi def link initexFontsInternalQuantity initexInternalQuantity
hi def link initexHyphenationInternalQuantity initexInternalQuantity
hi def link initexJobInternalQuantity initexInternalQuantity
hi def link initexKernInternalQuantity initexInternalQuantity
hi def link initexMathInternalQuantity initexInternalQuantity
hi def link initexPageInternalQuantity initexInternalQuantity
hi def link initexParagraphInternalQuantity initexInternalQuantity
hi def link initexPenaltiesInternalQuantity initexInternalQuantity
hi def link initexRegistersInternalQuantity initexInternalQuantity
hi def link initexParameterDimen initexNumber
hi def link initexBoxParameterDimen initexParameterDimen
hi def link initexInsertsParameterDimen initexParameterDimen
hi def link initexMathParameterDimen initexParameterDimen
hi def link initexPageParameterDimen initexParameterDimen
hi def link initexParagraphParameterDimen initexParameterDimen
hi def link initexParameterGlue initexNumber
hi def link initexInsertsParameterGlue initexParameterGlue
hi def link initexMathParameterGlue initexParameterGlue
hi def link initexPageParameterGlue initexParameterGlue
hi def link initexParagraphParameterGlue initexParameterGlue
hi def link initexTablesParameterGlue initexParameterGlue
hi def link initexParameterInteger initexNumber
hi def link initexBoxParameterInteger initexParameterInteger
hi def link initexCharacterParameterInteger initexParameterInteger
hi def link initexDebuggingParameterInteger initexParameterInteger
hi def link initexHyphenationParameterInteger initexParameterInteger
hi def link initexInsertsParameterInteger initexParameterInteger
hi def link initexJobParameterInteger initexParameterInteger
hi def link initexMacroParameterInteger initexParameterInteger
hi def link initexMathParameterInteger initexParameterInteger
hi def link initexParagraphParameterInteger initexParameterInteger
hi def link initexPenaltiesParameterInteger initexParameterInteger
hi def link initexParameterMuglue initexNumber
hi def link initexMathParameterMuglue initexParameterMuglue
hi def link initexParameterToken initexIdentifier
hi def link initexBoxParameterToken initexParameterToken
hi def link initexDebuggingParameterToken initexParameterToken
hi def link initexFileIOParameterToken initexParameterToken
hi def link initexMathParameterToken initexParameterToken
hi def link initexParagraphParameterToken initexParameterToken
hi def link initexTablesParameterToken initexParameterToken
let b:current_syntax = "initex"
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -1,6 +1,6 @@
" Vim syntax file
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-04-13
" Latest Revision: 2006-04-14
if exists("b:current_syntax")
finish
@@ -677,6 +677,7 @@ syn keyword kconfigPreProc source
syn keyword kconfigTriState y m n
syn match kconfigSpecialChar contained '\\.'
syn match kconfigSpecialChar '\\$'
syn region kconfigPath matchgroup=kconfigPath
\ start=+"+ skip=+\\\\\|\\\"+ end=+"+

View File

@@ -1,254 +1,297 @@
" Vim syntax file
" Language: Lua 4.0 and Lua 5.0
" Maintainer: Marcus Aurelius Farias <marcus.cf 'at' bol.com.br>
" First Author: Carlos Augusto Teixeira Mendes <cmendes 'at' inf puc-rio br>
" Last Change: 2004 Aug 29
" Options: lua_version = 4 or 5 [default]
"
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
if !exists("lua_version")
let lua_version = 5
endif
syn case match
" Comments
syn keyword luaTodo contained TODO FIXME XXX
syn match luaComment "--.*$" contains=luaTodo
if lua_version > 4
syn region luaComment matchgroup=luaComment start="--\[\[" end="\]\]" contains=luaTodo,luaInnerComment
syn region luaInnerComment contained transparent start="\[\[" end="\]\]"
endif
" First line may start with #!
syn match luaComment "\%^#!.*"
" catch errors caused by wrong parenthesis and wrong curly brackets or
" keywords placed outside their respective blocks
syn region luaParen transparent start='(' end=')' contains=ALLBUT,luaError,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement
syn match luaError ")"
syn match luaError "}"
syn match luaError "\<\%(end\|else\|elseif\|then\|until\|in\)\>"
" Function declaration
syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
" if then else elseif end
syn keyword luaCond contained else
" then ... end
syn region luaCondEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaRepeat
" elseif ... then
syn region luaCondElseif contained transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
" if ... then
syn region luaCondStart transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaCondEnd skipwhite skipempty
" do ... end
syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
" repeat ... until
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
" while ... do
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaBlock skipwhite skipempty
" for ... do and for ... in ... do
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd nextgroup=luaBlock skipwhite skipempty
" Following 'else' example. This is another item to those
" contains=ALLBUT,... because only the 'for' luaRepeatBlock contains it.
syn keyword luaRepeat contained in
" other keywords
syn keyword luaStatement return local break
syn keyword luaOperator and or not
syn keyword luaConstant nil
if lua_version > 4
syn keyword luaConstant true false
endif
" Pre processor doesn't exist since Lua 4.0
" syn match luaPreProc "^\s*$\%(debug\|nodebug\|if\|ifnot\|end\|else\|endinput\)\>"
" Strings
syn match luaSpecial contained "\\[\\abfnrtv\'\"[\]]\|\\\d\{,3}"
syn region luaString start=+'+ end=+'+ skip=+\\\\\|\\'+ contains=luaSpecial
syn region luaString start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=luaSpecial
" Nested strings
syn region luaString2 matchgroup=luaString start=+\[\[+ end=+\]\]+ contains=luaString2
" integer number
syn match luaNumber "\<[0-9]\+\>"
" floating point number, with dot, optional exponent
syn match luaFloat "\<[0-9]\+\.[0-9]*\%(e[-+]\=[0-9]\+\)\=\>"
" floating point number, starting with a dot, optional exponent
syn match luaFloat "\.[0-9]\+\%(e[-+]\=[0-9]\+\)\=\>"
" floating point number, without dot, with exponent
syn match luaFloat "\<[0-9]\+e[-+]\=[0-9]\+\>"
" tables
syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement
syn keyword luaFunc assert collectgarbage dofile error gcinfo next
syn keyword luaFunc print rawget rawset tonumber tostring type _VERSION
if lua_version == 4
syn keyword luaFunc _ALERT _ERRORMESSAGE
syn keyword luaFunc call copytagmethods dostring
syn keyword luaFunc foreach foreachi getglobal getn
syn keyword luaFunc gettagmethod globals newtag
syn keyword luaFunc setglobal settag settagmethod sort
syn keyword luaFunc tag tinsert tremove
syn keyword luaFunc _INPUT _OUTPUT _STDIN _STDOUT _STDERR
syn keyword luaFunc openfile closefile flush seek
syn keyword luaFunc setlocale execute remove rename tmpname
syn keyword luaFunc getenv date clock exit
syn keyword luaFunc readfrom writeto appendto read write
syn keyword luaFunc PI abs sin cos tan asin
syn keyword luaFunc acos atan atan2 ceil floor
syn keyword luaFunc mod frexp ldexp sqrt min max log
syn keyword luaFunc log10 exp deg rad random
syn keyword luaFunc randomseed strlen strsub strlower strupper
syn keyword luaFunc strchar strrep ascii strbyte
syn keyword luaFunc format strfind gsub
syn keyword luaFunc getinfo getlocal setlocal setcallhook setlinehook
else
syn keyword luaFunc _G getfenv getmetatable ipairs loadfile
syn keyword luaFunc loadlib loadstring pairs pcall rawequal
syn keyword luaFunc require setfenv setmetatable unpack xpcall
syn keyword luaFunc LUA_PATH _LOADED _REQUIREDNAME
" Not sure if all these functions need to be highlighted...
syn match luaFunc /coroutine\.create/
syn match luaFunc /coroutine\.resume/
syn match luaFunc /coroutine\.status/
syn match luaFunc /coroutine\.wrap/
syn match luaFunc /coroutine\.yield/
syn match luaFunc /string\.byte/
syn match luaFunc /string\.char/
syn match luaFunc /string\.dump/
syn match luaFunc /string\.find/
syn match luaFunc /string\.len/
syn match luaFunc /string\.lower/
syn match luaFunc /string\.rep/
syn match luaFunc /string\.sub/
syn match luaFunc /string\.upper/
syn match luaFunc /string\.format/
syn match luaFunc /string\.gfind/
syn match luaFunc /string\.gsub/
syn match luaFunc /table\.concat/
syn match luaFunc /table\.foreach/
syn match luaFunc /table\.foreachi/
syn match luaFunc /table\.getn/
syn match luaFunc /table\.sort/
syn match luaFunc /table\.insert/
syn match luaFunc /table\.remove/
syn match luaFunc /table\.setn/
syn match luaFunc /math\.abs/
syn match luaFunc /math\.acos/
syn match luaFunc /math\.asin/
syn match luaFunc /math\.atan/
syn match luaFunc /math\.atan2/
syn match luaFunc /math\.ceil/
syn match luaFunc /math\.cos/
syn match luaFunc /math\.deg/
syn match luaFunc /math\.exp/
syn match luaFunc /math\.floor/
syn match luaFunc /math\.log/
syn match luaFunc /math\.log10/
syn match luaFunc /math\.max/
syn match luaFunc /math\.min/
syn match luaFunc /math\.mod/
syn match luaFunc /math\.pow/
syn match luaFunc /math\.rad/
syn match luaFunc /math\.sin/
syn match luaFunc /math\.sqrt/
syn match luaFunc /math\.tan/
syn match luaFunc /math\.frexp/
syn match luaFunc /math\.ldexp/
syn match luaFunc /math\.random/
syn match luaFunc /math\.randomseed/
syn match luaFunc /math\.pi/
syn match luaFunc /io\.stdin/
syn match luaFunc /io\.stdout/
syn match luaFunc /io\.stderr/
syn match luaFunc /io\.close/
syn match luaFunc /io\.flush/
syn match luaFunc /io\.input/
syn match luaFunc /io\.lines/
syn match luaFunc /io\.open/
syn match luaFunc /io\.output/
syn match luaFunc /io\.popen/
syn match luaFunc /io\.read/
syn match luaFunc /io\.tmpfile/
syn match luaFunc /io\.type/
syn match luaFunc /io\.write/
syn match luaFunc /os\.clock/
syn match luaFunc /os\.date/
syn match luaFunc /os\.difftime/
syn match luaFunc /os\.execute/
syn match luaFunc /os\.exit/
syn match luaFunc /os\.getenv/
syn match luaFunc /os\.remove/
syn match luaFunc /os\.rename/
syn match luaFunc /os\.setlocale/
syn match luaFunc /os\.time/
syn match luaFunc /os\.tmpname/
syn match luaFunc /debug\.debug/
syn match luaFunc /debug\.gethook/
syn match luaFunc /debug\.getinfo/
syn match luaFunc /debug\.getlocal/
syn match luaFunc /debug\.getupvalue/
syn match luaFunc /debug\.setlocal/
syn match luaFunc /debug\.setupvalue/
syn match luaFunc /debug\.sethook/
syn match luaFunc /debug\.traceback/
endif
"syncing method
syn sync minlines=100
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_lua_syntax_inits")
if version < 508
let did_lua_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
HiLink luaStatement Statement
HiLink luaRepeat Repeat
HiLink luaString String
HiLink luaString2 String
HiLink luaNumber Number
HiLink luaFloat Float
HiLink luaOperator Operator
HiLink luaConstant Constant
HiLink luaCond Conditional
HiLink luaFunction Function
HiLink luaComment Comment
HiLink luaTodo Todo
HiLink luaTable Structure
HiLink luaError Error
HiLink luaSpecial SpecialChar
" HiLink luaPreProc PreProc
HiLink luaFunc Identifier
delcommand HiLink
endif
let b:current_syntax = "lua"
" vim: noet ts=8
" Vim syntax file
" Language: Lua 4.0, Lua 5.0 and Lua 5.1
" Maintainer: Marcus Aurelius Farias <marcus.cf 'at' bol.com.br>
" First Author: Carlos Augusto Teixeira Mendes <cmendes 'at' inf puc-rio br>
" Last Change: 2006 Apr. 19
" Options: lua_version = 4 or 5
" lua_subversion = 0 (4.0, 5.0) or 1 (5.1)
" default 5.1
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
if version < 600
syntax clear
elseif exists("b:current_syntax")
finish
endif
if !exists("lua_version")
" Default is lua 5.1
let lua_version = 5
let lua_subversion = 1
elseif !exists("lua_subversion")
" lua_version exists, but lua_subversion doesn't. So, set it to 0
let lua_subversion = 0
endif
syn case match
" syncing method
syn sync minlines=100
" Comments
syn keyword luaTodo contained TODO FIXME XXX
syn match luaComment "--.*$" contains=luaTodo
if lua_version == 5 && lua_subversion == 0
syn region luaComment matchgroup=luaComment start="--\[\[" end="\]\]" contains=luaTodo,luaInnerComment
syn region luaInnerComment contained transparent start="\[\[" end="\]\]"
elseif lua_version > 5 || (lua_version == 5 && lua_subversion >= 1)
" Comments in Lua 5.1: [[ ... ]], [=[ ... ]=], [===[ ... ]===], etc.
syn region luaComment matchgroup=luaComment start="--\[\z(=*\)\[" end="\]\z1\]"
endif
" First line may start with #!
syn match luaComment "\%^#!.*"
" catch errors caused by wrong parenthesis and wrong curly brackets or
" keywords placed outside their respective blocks
syn region luaParen transparent start='(' end=')' contains=ALLBUT,luaError,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement
syn match luaError ")"
syn match luaError "}"
syn match luaError "\<\%(end\|else\|elseif\|then\|until\|in\)\>"
" Function declaration
syn region luaFunctionBlock transparent matchgroup=luaFunction start="\<function\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
" if then else elseif end
syn keyword luaCond contained else
" then ... end
syn region luaCondEnd contained transparent matchgroup=luaCond start="\<then\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaRepeat
" elseif ... then
syn region luaCondElseif contained transparent matchgroup=luaCond start="\<elseif\>" end="\<then\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
" if ... then
syn region luaCondStart transparent matchgroup=luaCond start="\<if\>" end="\<then\>"me=e-4 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaCondEnd skipwhite skipempty
" do ... end
syn region luaBlock transparent matchgroup=luaStatement start="\<do\>" end="\<end\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
" repeat ... until
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<repeat\>" end="\<until\>" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat
" while ... do
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<while\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaRepeat nextgroup=luaBlock skipwhite skipempty
" for ... do and for ... in ... do
syn region luaRepeatBlock transparent matchgroup=luaRepeat start="\<for\>" end="\<do\>"me=e-2 contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd nextgroup=luaBlock skipwhite skipempty
" Following 'else' example. This is another item to those
" contains=ALLBUT,... because only the 'for' luaRepeatBlock contains it.
syn keyword luaRepeat contained in
" other keywords
syn keyword luaStatement return local break
syn keyword luaOperator and or not
syn keyword luaConstant nil
if lua_version > 4
syn keyword luaConstant true false
endif
" Strings
syn match luaSpecial contained "\\[\\abfnrtv\'\"[\]]\|\\\d\{,3}"
syn region luaString start=+'+ end=+'+ skip=+\\\\\|\\'+ contains=luaSpecial
syn region luaString start=+"+ end=+"+ skip=+\\\\\|\\"+ contains=luaSpecial
" Nested strings
if (lua_version == 5 && lua_subversion == 0) || lua_version < 5
syn region luaString2 matchgroup=luaString start=+\[\[+ end=+\]\]+ contains=luaString2
elseif lua_version > 5 || (lua_version == 5 && lua_subversion >= 1)
syn region luaString2 matchgroup=luaString start="\[\z(=*\)\[" end="\]\z1\]"
endif
" integer number
syn match luaNumber "\<[0-9]\+\>"
" floating point number, with dot, optional exponent
syn match luaFloat "\<[0-9]\+\.[0-9]*\%(e[-+]\=[0-9]\+\)\=\>"
" floating point number, starting with a dot, optional exponent
syn match luaFloat "\.[0-9]\+\%(e[-+]\=[0-9]\+\)\=\>"
" floating point number, without dot, with exponent
syn match luaFloat "\<[0-9]\+e[-+]\=[0-9]\+\>"
" tables
syn region luaTableBlock transparent matchgroup=luaTable start="{" end="}" contains=ALLBUT,luaTodo,luaSpecial,luaCond,luaCondElseif,luaCondEnd,luaCondStart,luaBlock,luaRepeatBlock,luaRepeat,luaStatement
syn keyword luaFunc assert collectgarbage dofile error gcinfo next
syn keyword luaFunc print rawget rawset tonumber tostring type _VERSION
if lua_version == 4
syn keyword luaFunc _ALERT _ERRORMESSAGE
syn keyword luaFunc call copytagmethods dostring
syn keyword luaFunc foreach foreachi getglobal getn
syn keyword luaFunc gettagmethod globals newtag
syn keyword luaFunc setglobal settag settagmethod sort
syn keyword luaFunc tag tinsert tremove
syn keyword luaFunc _INPUT _OUTPUT _STDIN _STDOUT _STDERR
syn keyword luaFunc openfile closefile flush seek
syn keyword luaFunc setlocale execute remove rename tmpname
syn keyword luaFunc getenv date clock exit
syn keyword luaFunc readfrom writeto appendto read write
syn keyword luaFunc PI abs sin cos tan asin
syn keyword luaFunc acos atan atan2 ceil floor
syn keyword luaFunc mod frexp ldexp sqrt min max log
syn keyword luaFunc log10 exp deg rad random
syn keyword luaFunc randomseed strlen strsub strlower strupper
syn keyword luaFunc strchar strrep ascii strbyte
syn keyword luaFunc format strfind gsub
syn keyword luaFunc getinfo getlocal setlocal setcallhook setlinehook
elseif lua_version == 5
" Not sure if all these functions need to be highlighted...
syn keyword luaFunc _G getfenv getmetatable ipairs loadfile
syn keyword luaFunc loadstring pairs pcall rawequal
syn keyword luaFunc require setfenv setmetatable unpack xpcall
if lua_subversion == 0
syn keyword luaFunc loadlib LUA_PATH _LOADED _REQUIREDNAME
elseif lua_subversion == 1
syn keyword luaFunc load module select
syn match luaFunc /package\.cpath/
syn match luaFunc /package\.loaded/
syn match luaFunc /package\.loadlib/
syn match luaFunc /package\.path/
syn match luaFunc /package\.preload/
syn match luaFunc /package\.seeall/
syn match luaFunc /coroutine\.running/
endif
syn match luaFunc /coroutine\.create/
syn match luaFunc /coroutine\.resume/
syn match luaFunc /coroutine\.status/
syn match luaFunc /coroutine\.wrap/
syn match luaFunc /coroutine\.yield/
syn match luaFunc /string\.byte/
syn match luaFunc /string\.char/
syn match luaFunc /string\.dump/
syn match luaFunc /string\.find/
syn match luaFunc /string\.len/
syn match luaFunc /string\.lower/
syn match luaFunc /string\.rep/
syn match luaFunc /string\.sub/
syn match luaFunc /string\.upper/
syn match luaFunc /string\.format/
syn match luaFunc /string\.gsub/
if lua_subversion == 0
syn match luaFunc /string\.gfind/
elseif lua_subversion == 1
syn match luaFunc /string\.gmatch/
syn match luaFunc /string\.match/
syn match luaFunc /string\.reverse/
syn match luaFunc /table\.maxn/
endif
syn match luaFunc /table\.concat/
syn match luaFunc /table\.foreach/
syn match luaFunc /table\.foreachi/
syn match luaFunc /table\.getn/
syn match luaFunc /table\.sort/
syn match luaFunc /table\.insert/
syn match luaFunc /table\.remove/
syn match luaFunc /table\.setn/
syn match luaFunc /math\.abs/
syn match luaFunc /math\.acos/
syn match luaFunc /math\.asin/
syn match luaFunc /math\.atan/
syn match luaFunc /math\.atan2/
syn match luaFunc /math\.ceil/
syn match luaFunc /math\.sin/
syn match luaFunc /math\.cos/
syn match luaFunc /math\.tan/
syn match luaFunc /math\.deg/
syn match luaFunc /math\.exp/
syn match luaFunc /math\.floor/
syn match luaFunc /math\.log/
syn match luaFunc /math\.log10/
syn match luaFunc /math\.max/
syn match luaFunc /math\.min/
if lua_subversion == 0
syn match luaFunc /math\.mod/
elseif lua_subversion == 1
syn match luaFunc /math\.fmod/
syn match luaFunc /math\.modf/
syn match luaFunc /math\.cosh/
syn match luaFunc /math\.sinh/
syn match luaFunc /math\.tanh/
endif
syn match luaFunc /math\.pow/
syn match luaFunc /math\.rad/
syn match luaFunc /math\.sqrt/
syn match luaFunc /math\.frexp/
syn match luaFunc /math\.ldexp/
syn match luaFunc /math\.random/
syn match luaFunc /math\.randomseed/
syn match luaFunc /math\.pi/
syn match luaFunc /io\.stdin/
syn match luaFunc /io\.stdout/
syn match luaFunc /io\.stderr/
syn match luaFunc /io\.close/
syn match luaFunc /io\.flush/
syn match luaFunc /io\.input/
syn match luaFunc /io\.lines/
syn match luaFunc /io\.open/
syn match luaFunc /io\.output/
syn match luaFunc /io\.popen/
syn match luaFunc /io\.read/
syn match luaFunc /io\.tmpfile/
syn match luaFunc /io\.type/
syn match luaFunc /io\.write/
syn match luaFunc /os\.clock/
syn match luaFunc /os\.date/
syn match luaFunc /os\.difftime/
syn match luaFunc /os\.execute/
syn match luaFunc /os\.exit/
syn match luaFunc /os\.getenv/
syn match luaFunc /os\.remove/
syn match luaFunc /os\.rename/
syn match luaFunc /os\.setlocale/
syn match luaFunc /os\.time/
syn match luaFunc /os\.tmpname/
syn match luaFunc /debug\.debug/
syn match luaFunc /debug\.gethook/
syn match luaFunc /debug\.getinfo/
syn match luaFunc /debug\.getlocal/
syn match luaFunc /debug\.getupvalue/
syn match luaFunc /debug\.setlocal/
syn match luaFunc /debug\.setupvalue/
syn match luaFunc /debug\.sethook/
syn match luaFunc /debug\.traceback/
if lua_subversion == 1
syn match luaFunc /debug\.getfenv/
syn match luaFunc /debug\.getmetatable/
syn match luaFunc /debug\.getregistry/
syn match luaFunc /debug\.setfenv/
syn match luaFunc /debug\.setmetatable/
endif
endif
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
" For version 5.8 and later: only when an item doesn't have highlighting yet
if version >= 508 || !exists("did_lua_syntax_inits")
if version < 508
let did_lua_syntax_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
endif
HiLink luaStatement Statement
HiLink luaRepeat Repeat
HiLink luaString String
HiLink luaString2 String
HiLink luaNumber Number
HiLink luaFloat Float
HiLink luaOperator Operator
HiLink luaConstant Constant
HiLink luaCond Conditional
HiLink luaFunction Function
HiLink luaComment Comment
HiLink luaTodo Todo
HiLink luaTable Structure
HiLink luaError Error
HiLink luaSpecial SpecialChar
HiLink luaFunc Identifier
delcommand HiLink
endif
let b:current_syntax = "lua"
" vim: et ts=8

View File

@@ -1,7 +1,7 @@
" Vim syntax file
" Language: TeX (plain.tex format)
" Maintainer: Nikolai Weibull <now@bitwi.se>
" Latest Revision: 2006-03-26
" Latest Revision: 2006-04-19
if exists("b:current_syntax")
finish
@@ -13,10 +13,10 @@ set cpo&vim
syn match plaintexControlSequence display contains=@NoSpell
\ '\\[a-zA-Z@]\+'
runtime! syntax/coretex.vim
runtime! syntax/initex.vim
syn match plaintexComment display
\ contains=ALLBUT,coretexComment,plaintexComment
\ contains=ALLBUT,initexComment,plaintexComment
\ '^\s*%[CDM].*$'
if exists("g:plaintex_delimiters")
@@ -59,12 +59,14 @@ syn match plaintexRegistersCommand display contains=@NoSpell
syn match plaintexTablesCommand display contains=@NoSpell
\ '&\|\\+\|\\\%(cleartabs\|endline\|hidewidth\|ialign\|multispan\|settabs\|tabalign\)\>'
syn region plaintexMath matchgroup=plaintexMath
if !exists("g:plaintex_no_math")
syn region plaintexMath matchgroup=plaintexMath
\ contains=@plaintexMath
\ start='\$' skip='\\\\\|\\\$' end='\$'
syn region plaintexMath matchgroup=plaintexMath
syn region plaintexMath matchgroup=plaintexMath
\ contains=@plaintexMath keepend
\ start='\$\$' skip='\\\\\|\\\$' end='\$\$'
endif
syn cluster plaintexMath
\ contains=plaintexMathCommand,plaintexMathBoxCommand,
@@ -122,16 +124,16 @@ hi def link plaintexComment Comment
hi def link plaintexInclude Include
hi def link plaintexRepeat Repeat
hi def link plaintexCommand coretexCommand
hi def link plaintexCommand initexCommand
hi def link plaintexBoxCommand plaintexCommand
hi def link plaintexCharacterCommand coretexCharacterCommand
hi def link plaintexDebuggingCommand coretexDebuggingCommand
hi def link plaintexFontsCommand coretexFontsCommand
hi def link plaintexCharacterCommand initexCharacterCommand
hi def link plaintexDebuggingCommand initexDebuggingCommand
hi def link plaintexFontsCommand initexFontsCommand
hi def link plaintexGlueCommand plaintexCommand
hi def link plaintexInsertsCommand plaintexCommand
hi def link plaintexJobCommand coretexJobCommand
hi def link plaintexJobCommand initexJobCommand
hi def link plaintexKernCommand plaintexCommand
hi def link plaintexMacroCommand coretexMacroCommand
hi def link plaintexMacroCommand initexMacroCommand
hi def link plaintexPageCommand plaintexCommand
hi def link plaintexParagraphCommand plaintexCommand
hi def link plaintexPenaltiesCommand plaintexCommand
@@ -151,16 +153,15 @@ hi def link plaintexMathOperator plaintexOperator
hi def link plaintexMathPunctuation plaintexCharacterCommand
hi def link plaintexMathRelation plaintexOperator
hi def link plaintexParameterDimen coretexParameterDimen
hi def link plaintexMathParameterDimen coretexMathParameterDimen
hi def link plaintexParagraphParameterGlue coretexParagraphParameterGlue
hi def link plaintexFontParameterInteger coretexFontParameterInteger
hi def link plaintexJobParameterInteger coretexJobParameterInteger
hi def link plaintexPageParameterInteger coretexPageParameterInteger
hi def link plaintexPageParameterToken coretexParameterToken
hi def link plaintexParameterDimen initexParameterDimen
hi def link plaintexMathParameterDimen initexMathParameterDimen
hi def link plaintexParagraphParameterGlue initexParagraphParameterGlue
hi def link plaintexFontParameterInteger initexFontParameterInteger
hi def link plaintexJobParameterInteger initexJobParameterInteger
hi def link plaintexPageParameterInteger initexPageParameterInteger
hi def link plaintexPageParameterToken initexParameterToken
let b:current_syntax = "plaintex"
let &cpo = s:cpo_save
unlet s:cpo_save

View File

@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Vim 7.0 script
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change: Apr 18, 2006
" Version: 7.0-44
" Last Change: April 19, 2006
" Version: 7.0-45
" Automatically generated keyword lists: {{{1
" Quit when a syntax file was already loaded {{{2
@@ -55,7 +55,7 @@ syn match vimHLGroup contained "Conceal"
syn case match
" Function Names {{{2
syn keyword vimFuncName contained add append argc argidx argv browse browsedir bufexists buflisted bufloaded bufname bufnr bufwinnr byte2line byteidx call changenr char2nr cindent col complete complete_add complete_check confirm copy count cscope_connection cursor deepcopy delete did_filetype diff_filler diff_hlID empty escape eval eventhandler executable exists expand expr8 extend filereadable filewritable filter finddir findfile fnamemodify foldclosed foldclosedend foldlevel foldtext foldtextresult foreground function garbagecollect get getbufline getbufvar getchar getcharmod getcmdline getcmdpos getcmdtype getcwd getfontname getfperm getfsize getftime getftype getline getloclist getpos getqflist getreg getregtype getwinposx getwinposy getwinvar glob globpath has has_key hasmapto histadd histdel histget histnr hlexists hlID hostname iconv indent index input inputdialog inputlist inputrestore inputsave inputsecret insert isdirectory islocked items join keys len libcall libcallnr line line2byte lispindent localtime map maparg mapcheck match matcharg matchend matchlist matchstr max min mkdir mode nextnonblank nr2char pathshorten prevnonblank printf pumvisible range readfile reltime reltimestr remote_expr remote_foreground remote_peek remote_read remote_send remove rename repeat resolve reverse search searchdecl searchpair searchpairpos searchpos server2client serverlist setbufvar setcmdpos setline setloclist setpos setqflist setreg setwinvar simplify sort soundfold spellbadword spellsuggest split str2nr strftime stridx string strlen strpart strridx strtrans submatch substitute synID synIDattr synIDtrans system tabpagebuflist tabpagenr tabpagewinnr tagfiles taglist tempname tolower toupper tr type values virtcol visualmode winbufnr wincol winheight winline winnr winrestcmd winrestview winsaveview winwidth writefile
syn keyword vimFuncName contained add append argc argidx argv browse browsedir bufexists buflisted bufloaded bufname bufnr bufwinnr byte2line byteidx call changenr char2nr cindent col complete complete_add complete_check confirm copy count cscope_connection cursor deepcopy delete did_filetype diff_filler diff_hlID empty escape eval eventhandler executable exists expand expr8 extend filereadable filewritable filter finddir findfile fnamemodify foldclosed foldclosedend foldlevel foldtext foldtextresult foreground function garbagecollect get getbufline getbufvar getchar getcharmod getcmdline getcmdpos getcmdtype getcwd getfontname getfperm getfsize getftime getftype getline getloclist getpos getqflist getreg getregtype gettabwinvar getwinposx getwinposy getwinvar glob globpath has has_key hasmapto histadd histdel histget histnr hlexists hlID hostname iconv indent index input inputdialog inputlist inputrestore inputsave inputsecret insert isdirectory islocked items join keys len libcall libcallnr line line2byte lispindent localtime map maparg mapcheck match matcharg matchend matchlist matchstr max min mkdir mode nextnonblank nr2char pathshorten prevnonblank printf pumvisible range readfile reltime reltimestr remote_expr remote_foreground remote_peek remote_read remote_send remove rename repeat resolve reverse search searchdecl searchpair searchpairpos searchpos server2client serverlist setbufvar setcmdpos setline setloclist setpos setqflist setreg settabwinvar setwinvar simplify sort soundfold spellbadword spellsuggest split str2nr strftime stridx string strlen strpart strridx strtrans submatch substitute synID synIDattr synIDtrans system tabpagebuflist tabpagenr tabpagewinnr tagfiles taglist tempname tolower toupper tr type values virtcol visualmode winbufnr wincol winheight winline winnr winrestcmd winrestview winsaveview winwidth writefile
"--- syntax above generated by mkvimvim ---
" Special Vim Highlighting (not automatic) {{{1

View File

@@ -6482,7 +6482,7 @@ buf_reload(buf, orig_mode)
{
/* Allocate a buffer without putting it in the buffer list. */
savebuf = buflist_new(NULL, NULL, (linenr_T)1, BLN_DUMMY);
if (savebuf != NULL)
if (savebuf != NULL && buf == curbuf)
{
/* Open the memline. */
curbuf = savebuf;
@@ -6491,7 +6491,7 @@ buf_reload(buf, orig_mode)
curbuf = buf;
curwin->w_buffer = buf;
}
if (savebuf == NULL || saved == FAIL
if (savebuf == NULL || saved == FAIL || buf != curbuf
|| move_lines(buf, savebuf) == FAIL)
{
EMSG2(_("E462: Could not prepare for reloading \"%s\""),
@@ -6514,18 +6514,17 @@ buf_reload(buf, orig_mode)
if (!aborting())
#endif
EMSG2(_("E321: Could not reload \"%s\""), buf->b_fname);
if (savebuf != NULL)
if (savebuf != NULL && buf_valid(savebuf) && buf == curbuf)
{
/* Put the text back from the save buffer. First
* delete any lines that readfile() added. */
while (!bufempty())
if (ml_delete(curbuf->b_ml.ml_line_count, FALSE)
== FAIL)
if (ml_delete(buf->b_ml.ml_line_count, FALSE) == FAIL)
break;
(void)move_lines(savebuf, buf);
}
}
else
else if (buf == curbuf)
{
/* Mark the buffer as unmodified and free undo info. */
unchanged(buf, TRUE);
@@ -6535,12 +6534,12 @@ buf_reload(buf, orig_mode)
}
vim_free(ea.cmd);
if (savebuf != NULL)
if (savebuf != NULL && buf_valid(savebuf))
wipe_buffer(savebuf, FALSE);
#ifdef FEAT_DIFF
/* Invalidate diff info if necessary. */
diff_invalidate(buf);
diff_invalidate(curbuf);
#endif
/* Restore the topline and cursor position and check it (lines may

View File

@@ -4294,22 +4294,40 @@ eval_map_expr(str)
char_u *str;
{
char_u *res;
char_u *s;
int len;
char_u *p;
char_u *s, *d;
s = eval_to_string(str, NULL, FALSE);
if (s == NULL)
p = eval_to_string(str, NULL, FALSE);
if (p == NULL)
return NULL;
/* Need a buffer to hold up to three times as much. */
len = (int)STRLEN(s);
res = alloc((unsigned)(len * 3) + 1);
res = alloc((unsigned)(STRLEN(p) * 3) + 1);
if (res != NULL)
{
STRCPY(res, s);
(void)fix_input_buffer(res, len, TRUE);
d = res;
for (s = p; *s != NUL; )
{
if (s[0] == K_SPECIAL && s[1] != NUL && s[2] != NUL)
{
/* Copy special key unmodified. */
*d++ = *s++;
*d++ = *s++;
*d++ = *s++;
}
else
{
/* Add character, possibly multi-byte to destination, escaping
* CSI and K_SPECIAL. */
d = add_char2buf(PTR2CHAR(s), d);
mb_ptr_adv(s);
}
}
*d = NUL;
}
vim_free(s);
vim_free(p);
return res;
}
#endif

View File

@@ -185,6 +185,9 @@ static void make_tooltip __ARGS((BalloonEval *beval, char *text, POINT pt));
static void delete_tooltip __ARGS((BalloonEval *beval));
static VOID CALLBACK BevalTimerProc __ARGS((HWND hwnd, UINT uMsg, UINT idEvent, DWORD dwTime));
#ifndef UINT_PTR
# define UINT_PTR UINT
#endif
static BalloonEval *cur_beval = NULL;
static UINT_PTR BevalTimerId = 0;
static DWORD LastActivity = 0;

View File

@@ -2295,10 +2295,21 @@ gui_mch_update_tabline(void)
int nr = 0;
int curtabidx = 0;
RECT rc;
#ifdef FEAT_MBYTE
WCHAR *wstr = NULL;
#endif
if (s_tabhwnd == NULL)
return;
#if defined(FEAT_MBYTE) && defined(CCM_SETUNICODEFORMAT)
if (enc_codepage >= 0 && (int)GetACP() != enc_codepage)
/*
* Enable unicode support
*/
SendMessage(s_tabhwnd, CCM_SETUNICODEFORMAT, (WPARAM)TRUE, (LPARAM)0);
#endif
tie.mask = TCIF_TEXT;
tie.iImage = -1;
@@ -2317,7 +2328,29 @@ gui_mch_update_tabline(void)
get_tabline_label(tp);
tie.pszText = NameBuff;
TabCtrl_SetItem(s_tabhwnd, nr, &tie);
#ifdef FEAT_MBYTE
wstr = NULL;
if (enc_codepage >= 0 && (int)GetACP() != enc_codepage)
{
/* Need to go through Unicode. */
wstr = enc_to_ucs2(NameBuff, NULL);
if (wstr != NULL)
{
TCITEMW tiw;
tiw.mask = TCIF_TEXT;
tiw.iImage = -1;
tiw.pszText = wstr;
SendMessage(s_tabhwnd, TCM_INSERTITEMW, (WPARAM)nr,
(LPARAM)&tiw);
vim_free(wstr);
}
}
if (wstr == NULL)
#endif
{
TabCtrl_SetItem(s_tabhwnd, nr, &tie);
}
}
/* Remove any old labels. */

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -35,6 +35,6 @@
*/
#define VIM_VERSION_NODOT "vim70e"
#define VIM_VERSION_SHORT "7.0e"
#define VIM_VERSION_MEDIUM "7.0e02 BETA"
#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0e02 BETA (2006 Apr 18)"
#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0e02 BETA (2006 Apr 18, compiled "
#define VIM_VERSION_MEDIUM "7.0e03 BETA"
#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0e03 BETA (2006 Apr 19)"
#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0e03 BETA (2006 Apr 19, compiled "