summaryrefslogtreecommitdiff
path: root/runtime
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2006-04-27 00:02:13 +0000
committerBram Moolenaar <Bram@vim.org>2006-04-27 00:02:13 +0000
commitf193fffd16563cfbe7c02a21e19c8bb11707581d (patch)
tree4bae3092421aa986103b8000b1012989a9ea49e6 /runtime
parent551dbcc9b604c2992f908fb475e797fcc116315b (diff)
downloadvim-git-f193fffd16563cfbe7c02a21e19c8bb11707581d.tar.gz
updated for version 7.0f02v7.0f02
Diffstat (limited to 'runtime')
-rw-r--r--runtime/autoload/htmlcomplete.vim120
-rw-r--r--runtime/autoload/netrw.vim8
-rw-r--r--runtime/autoload/sqlcomplete.vim111
-rw-r--r--runtime/autoload/vimball.vim153
-rw-r--r--runtime/autoload/xml/html32.vim14
-rw-r--r--runtime/autoload/xml/html401f.vim22
-rw-r--r--runtime/autoload/xml/html401s.vim20
-rw-r--r--runtime/autoload/xml/html401t.vim20
-rw-r--r--runtime/autoload/xml/html40f.vim30
-rw-r--r--runtime/autoload/xml/html40s.vim20
-rw-r--r--runtime/autoload/xml/html40t.vim20
-rw-r--r--runtime/autoload/xml/xhtml10f.vim2
-rw-r--r--runtime/autoload/xml/xhtml10s.vim2
-rw-r--r--runtime/autoload/xml/xhtml10t.vim2
-rw-r--r--runtime/autoload/xml/xhtml11.vim2
-rw-r--r--runtime/doc/eval.txt5
-rw-r--r--runtime/doc/insert.txt5
-rw-r--r--runtime/doc/options.txt16
-rw-r--r--runtime/doc/pi_netrw.txt7
-rw-r--r--runtime/doc/sql.txt26
-rw-r--r--runtime/doc/syntax.txt35
-rw-r--r--runtime/doc/tabpage.txt5
-rw-r--r--runtime/doc/tags5
-rw-r--r--runtime/doc/todo.txt13
-rw-r--r--runtime/doc/version7.txt48
-rw-r--r--runtime/ftplugin/debchangelog.vim52
-rw-r--r--runtime/ftplugin/html.vim11
-rw-r--r--runtime/ftplugin/sql.vim51
-rw-r--r--runtime/indent/make.vim151
-rw-r--r--runtime/plugin/vimballPlugin.vim5
-rw-r--r--runtime/syntax/baan.vim1855
-rw-r--r--runtime/syntax/smcl.vim10
-rw-r--r--runtime/syntax/stata.vim18
-rw-r--r--runtime/syntax/vim.vim8
34 files changed, 2533 insertions, 339 deletions
diff --git a/runtime/autoload/htmlcomplete.vim b/runtime/autoload/htmlcomplete.vim
index 79eb9a631..2170e21a9 100644
--- a/runtime/autoload/htmlcomplete.vim
+++ b/runtime/autoload/htmlcomplete.vim
@@ -127,8 +127,6 @@ function! htmlcomplete#CompleteTags(findstart, base)
let res2 = []
" a:base is very short - we need context
let context = b:compl_context
- let g:ab = a:base
- let g:co = context
" Check if we should do CSS completion inside of <style> tag
" or JS completion inside of <script> tag or PHP completion in case of <?
" tag AND &ft==php
@@ -155,6 +153,9 @@ function! htmlcomplete#CompleteTags(findstart, base)
if exists("b:entitiescompl")
unlet! b:entitiescompl
+ if !exists("b:html_doctype")
+ call htmlcomplete#CheckDoctype()
+ endif
if !exists("b:html_omni")
"runtime! autoload/xml/xhtml10s.vim
call htmlcomplete#LoadData()
@@ -500,7 +501,10 @@ function! htmlcomplete#CompleteTags(findstart, base)
let sbase = matchstr(context, '.*\ze\s.*')
" Load data {{{
- if !exists("b:html_omni_gen")
+ if !exists("b:html_doctype")
+ call htmlcomplete#CheckDoctype()
+ endif
+ if !exists("b:html_omni")
call htmlcomplete#LoadData()
endif
" }}}
@@ -526,18 +530,31 @@ function! htmlcomplete#CompleteTags(findstart, base)
if has_key(b:html_omni['vimxmlattrinfo'], item)
let m_menu = b:html_omni['vimxmlattrinfo'][item][0]
let m_info = b:html_omni['vimxmlattrinfo'][item][1]
- if m_menu !~ 'Bool'
- let item .= '="'
- endif
else
let m_menu = ''
let m_info = ''
+ endif
+ if len(b:html_omni[tag][1][item]) > 0 && b:html_omni[tag][1][item][0] =~ '^\(BOOL\|'.item.'\)$'
+ let item = item
+ let m_menu = 'Bool'
+ else
let item .= '="'
endif
let final_menu += [{'word':item, 'menu':m_menu, 'info':m_info}]
endfor
else
- let final_menu = map(menu, 'v:val."=\""')
+ let final_menu = []
+ for i in range(len(menu))
+ let item = menu[i]
+ if len(b:html_omni[tag][1][item]) > 0 && b:html_omni[tag][1][item][0] =~ '^\(BOOL\|'.item.'\)$'
+ let item = item
+ else
+ let item .= '="'
+ endif
+ let final_menu += [item]
+ endfor
+ return final_menu
+
endif
return final_menu
@@ -555,6 +572,9 @@ function! htmlcomplete#CompleteTags(findstart, base)
endif
" }}}
" Load data {{{
+ if !exists("b:html_doctype")
+ call htmlcomplete#CheckDoctype()
+ endif
if !exists("b:html_omni")
"runtime! autoload/xml/xhtml10s.vim
call htmlcomplete#LoadData()
@@ -585,7 +605,7 @@ function! htmlcomplete#CompleteTags(findstart, base)
let context = tolower(context)
endif
" Handle XML keywords: DOCTYPE and CDATA.
- if opentag == '' || opentag ==? 'head'
+ if opentag == ''
let tags += [
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">',
\ '!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN" "http://www.w3.org/TR/REC-html40/strict.dtd">',
@@ -610,7 +630,6 @@ function! htmlcomplete#CompleteTags(findstart, base)
endif
endfor
let menu = res + res2
- let g:me = menu
if has_key(b:html_omni, 'vimxmltaginfo')
let final_menu = []
for i in range(len(menu))
@@ -656,23 +675,82 @@ function! htmlcomplete#LoadData() " {{{
exe 'let b:html_omni = g:xmldata_'.b:html_omni_flavor
else
exe 'runtime! autoload/xml/'.b:html_omni_flavor.'.vim'
+ exe 'let b:html_omni = g:xmldata_'.b:html_omni_flavor
endif
- " This repetition is necessary because we don't know if
- " b:html_omni_flavor file exists and was sourced
- " Proper checking for files would require iterating through 'rtp'
- " and could introduce OS dependent mess.
- if !exists("g:xmldata_".b:html_omni_flavor)
- if &filetype == 'html'
+endfunction
+" }}}
+function! htmlcomplete#CheckDoctype() " {{{
+ if exists('b:html_omni_flavor')
+ let old_flavor = b:html_omni_flavor
+ else
+ let old_flavor = ''
+ endif
+ let i = 1
+ while i < 10 && i < line("$")
+ let line = getline(i)
+ if line =~ '<!DOCTYPE.*\<DTD HTML 3\.2'
+ let b:html_omni_flavor = 'html32'
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.0 Transitional'
+ let b:html_omni_flavor = 'html40t'
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.0 Frameset'
+ let b:html_omni_flavor = 'html40f'
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.0'
+ let b:html_omni_flavor = 'html40s'
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.01 Transitional'
let b:html_omni_flavor = 'html401t'
- else
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.01 Frameset'
+ let b:html_omni_flavor = 'html401f'
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD HTML 4\.01'
+ let b:html_omni_flavor = 'html401s'
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD XHTML 1\.0 Transitional'
+ let b:html_omni_flavor = 'xhtml10t'
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD XHTML 1\.0 Frameset'
+ let b:html_omni_flavor = 'xhtml10f'
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD XHTML 1\.0 Strict'
let b:html_omni_flavor = 'xhtml10s'
+ let b:html_doctype = 1
+ break
+ elseif line =~ '<!DOCTYPE.*\<DTD XHTML 1\.1'
+ let b:html_omni_flavor = 'xhtml11'
+ let b:html_doctype = 1
+ break
endif
- endif
- if exists('g:xmldata_'.b:html_omni_flavor)
- exe 'let b:html_omni = g:xmldata_'.b:html_omni_flavor
+ let i += 1
+ endwhile
+ if !exists("b:html_doctype")
+ return
else
- exe 'runtime! autoload/xml/'.b:html_omni_flavor.'.vim'
- exe 'let b:html_omni = g:xmldata_'.b:html_omni_flavor
+ " Tie g:xmldata with b:html_omni this way we need to sourca data file only
+ " once, not every time per buffer.
+ if old_flavor == b:html_omni_flavor
+ return
+ else
+ if exists('g:xmldata_'.b:html_omni_flavor)
+ exe 'let b:html_omni = g:xmldata_'.b:html_omni_flavor
+ else
+ exe 'runtime! autoload/xml/'.b:html_omni_flavor.'.vim'
+ exe 'let b:html_omni = g:xmldata_'.b:html_omni_flavor
+ endif
+ return
+ endif
endif
endfunction
" }}}
diff --git a/runtime/autoload/netrw.vim b/runtime/autoload/netrw.vim
index 13081c8a7..bd581b6bd 100644
--- a/runtime/autoload/netrw.vim
+++ b/runtime/autoload/netrw.vim
@@ -1,7 +1,7 @@
" netrw.vim: Handles file transfer and remote directory listing across a network
" AUTOLOAD PORTION
-" Date: Apr 24, 2006
-" Version: 93
+" Date: Apr 26, 2006
+" Version: 94
" Maintainer: Charles E Campbell, Jr <drchipNOSPAM at campbellfamily dot biz>
" GetLatestVimScripts: 1075 1 :AutoInstall: netrw.vim
" Copyright: Copyright (C) 1999-2005 Charles E. Campbell, Jr. {{{1
@@ -23,7 +23,7 @@
if &cp || exists("g:loaded_netrw")
finish
endif
-let g:loaded_netrw = "v93"
+let g:loaded_netrw = "v94"
if v:version < 700
echohl WarningMsg | echo "***netrw*** you need vim version 7.0 or later for version ".g:loaded_netrw." of netrw" | echohl None
finish
@@ -142,7 +142,7 @@ if !exists("g:netrw_list_cmd")
" provide a default listing command
let g:netrw_list_cmd= g:netrw_ssh_cmd." HOSTNAME ls -FLa"
else
-" call Decho(g:netrw_ssh_cmd." is not executable, can't do remote directory exploring)
+" call Decho(g:netrw_ssh_cmd." is not executable, can't do remote directory exploring")
let g:netrw_list_cmd= ""
endif
endif
diff --git a/runtime/autoload/sqlcomplete.vim b/runtime/autoload/sqlcomplete.vim
index ec158f683..146cf2133 100644
--- a/runtime/autoload/sqlcomplete.vim
+++ b/runtime/autoload/sqlcomplete.vim
@@ -1,8 +1,12 @@
-" Vim completion script
+" Vim OMNI completion script for SQL
" Language: SQL
" Maintainer: David Fishburn <fishburn@ianywhere.com>
-" Version: 3.0
-" Last Change: Thu Apr 20 2006 8:47:12 PM
+" Version: 4.0
+" Last Change: Wed Apr 26 2006 3:00:06 PM
+" Usage: For detailed help
+" ":help sql.txt"
+" or ":help ft-sql-omni"
+" or read $VIMRUNTIME/doc/sql.txt
" Set completion with CTRL-X CTRL-O to autoloaded function.
" This check is in place in case this script is
@@ -18,7 +22,7 @@ endif
if exists('g:loaded_sql_completion')
finish
endif
-let g:loaded_sql_completion = 30
+let g:loaded_sql_completion = 40
" Maintains filename of dictionary
let s:sql_file_table = ""
@@ -93,9 +97,14 @@ function! sqlcomplete#Complete(findstart, base)
" be replaced by whatever is chosen from the completion list
if a:findstart
" Locate the start of the item, including "."
- let line = getline('.')
- let start = col('.') - 1
+ let line = getline('.')
+ let start = col('.') - 1
let lastword = -1
+ let begindot = 0
+ " Check if the first character is a ".", for column completion
+ if line[start - 1] == '.'
+ let begindot = 1
+ endif
while start > 0
if line[start - 1] =~ '\w'
let start -= 1
@@ -104,18 +113,19 @@ function! sqlcomplete#Complete(findstart, base)
" If lastword has already been set for column completion
" break from the loop, since we do not also want to pickup
" a table name if it was also supplied.
- if lastword != -1 && compl_type =~ 'column'
+ if lastword != -1 && compl_type == 'column'
break
endif
- " Assume we are looking for column completion
- " column_type can be either 'column' or 'column_csv'
- if lastword == -1 && compl_type =~ 'column'
+ " If column completion was specified stop at the "." if
+ " a . was specified, otherwise, replace all the way up
+ " to the owner name (if included).
+ if lastword == -1 && compl_type == 'column' && begindot == 1
let lastword = start
endif
" If omni_sql_include_owner = 0, do not include the table
" name as part of the substitution, so break here
if lastword == -1 &&
- \ compl_type =~ 'table\|view\|procedure' &&
+ \ compl_type =~ 'table\|view\|procedure\column_csv' &&
\ g:omni_sql_include_owner == 0
let lastword = start
break
@@ -234,6 +244,11 @@ function! sqlcomplete#Complete(findstart, base)
let s:tbl_cols = []
let s:syn_list = []
let s:syn_value = []
+
+ let msg = "All SQL cached items have been removed."
+ call s:SQLCWarningMsg(msg)
+ " Leave time for the user to read the error message
+ :sleep 2
else
let compl_list = s:SQLCGetSyntaxList(compl_type)
endif
@@ -252,18 +267,6 @@ function! sqlcomplete#Complete(findstart, base)
return compl_list
endfunc
-function! s:SQLCWarningMsg(msg)
- echohl WarningMsg
- echomsg a:msg
- echohl None
-endfunction
-
-function! s:SQLCErrorMsg(msg)
- echohl ErrorMsg
- echomsg a:msg
- echohl None
-endfunction
-
function! sqlcomplete#PreCacheSyntax(...)
let syn_group_arr = []
if a:0 > 0
@@ -294,6 +297,51 @@ function! sqlcomplete#Map(type)
let &omnifunc='sqlcomplete#Complete'
endfunction
+function! sqlcomplete#DrillIntoTable()
+ " If the omni popup window is visible
+ if pumvisible()
+ call sqlcomplete#Map('column')
+ " C-Y, makes the currently highlighted entry active
+ " and trigger the omni popup to be redisplayed
+ call feedkeys("\<C-Y>\<C-X>\<C-O>")
+ else
+ if has('win32')
+ " If the popup is not visible, simple perform the normal
+ " <C-Right> behaviour
+ exec "normal! \<C-Right>"
+ endif
+ endif
+ return ""
+endfunction
+
+function! sqlcomplete#DrillOutOfColumns()
+ " If the omni popup window is visible
+ if pumvisible()
+ call sqlcomplete#Map('tableReset')
+ " Trigger the omni popup to be redisplayed
+ call feedkeys("\<C-X>\<C-O>")
+ else
+ if has('win32')
+ " If the popup is not visible, simple perform the normal
+ " <C-Left> behaviour
+ exec "normal! \<C-Left>"
+ endif
+ endif
+ return ""
+endfunction
+
+function! s:SQLCWarningMsg(msg)
+ echohl WarningMsg
+ echomsg a:msg
+ echohl None
+endfunction
+
+function! s:SQLCErrorMsg(msg)
+ echohl ErrorMsg
+ echomsg a:msg
+ echohl None
+endfunction
+
function! s:SQLCGetSyntaxList(syn_group)
let syn_group = a:syn_group
let compl_list = []
@@ -347,7 +395,8 @@ function! s:SQLCCheck4dbext()
endfunction
function! s:SQLCAddAlias(table_name, table_alias, cols)
- let table_name = a:table_name
+ " Strip off the owner if included
+ let table_name = matchstr(a:table_name, '\%(.\{-}\.\)\?\zs\(.*\)' )
let table_alias = a:table_alias
let cols = a:cols
@@ -373,7 +422,7 @@ function! s:SQLCAddAlias(table_name, table_alias, cols)
" Restore original value
let &iskeyword = save_keyword
elseif table_name =~ '\u\U'
- let initials = substitute(
+ let table_alias = substitute(
\ table_name, '\(\u\)\U*', '\1', 'g')
else
let table_alias = strpart(table_name, 0, 1)
@@ -397,6 +446,7 @@ endfunction
function! s:SQLCGetColumns(table_name, list_type)
let table_name = matchstr(a:table_name, '^\w\+')
+ let table_name = matchstr(a:table_name, '^[a-zA-Z0-9_.]\+')
let table_cols = []
let table_alias = ''
let move_to_top = 1
@@ -480,7 +530,9 @@ function! s:SQLCGetColumns(table_name, list_type)
\ 'from.\{-}'.
\ '\zs\(\(\<\w\+\>\)\.\)\?'.
\ '\<\w\+\>\ze'.
- \ '\s\+\%(as\s\+\)\?\<'.table_name.'\>'.
+ \ '\s\+\%(as\s\+\)\?\<'.
+ \ matchstr(table_name, '.\{-}\ze\.\?$').
+ \ '\>'.
\ '\s*\.\@!.*'.
\ '\(\<where\>\|$\)'.
\ '.*'
@@ -544,9 +596,12 @@ function! s:SQLCGetColumns(table_name, list_type)
exec 'DBSetOption use_tbl_alias='.saveSettingAlias
endif
+ " If the user has asked for a comma separate list of column
+ " values, ask the user if they want to prepend each column
+ " with a tablename alias.
if a:list_type == 'csv' && !empty(table_cols)
- let cols = join(table_cols, ', ')
- let cols = s:SQLCAddAlias(table_name, table_alias, cols)
+ let cols = join(table_cols, ', ')
+ let cols = s:SQLCAddAlias(table_name, table_alias, cols)
let table_cols = [cols]
endif
diff --git a/runtime/autoload/vimball.vim b/runtime/autoload/vimball.vim
index 61d5fa662..b5f924cc5 100644
--- a/runtime/autoload/vimball.vim
+++ b/runtime/autoload/vimball.vim
@@ -1,7 +1,7 @@
" vimball : construct a file containing both paths and files
" Author: Charles E. Campbell, Jr.
-" Date: Apr 25, 2006
-" Version: 8
+" Date: Apr 26, 2006
+" Version: 9
" GetLatestVimScripts: 1502 1 :AutoInstall: vimball.vim
" Copyright: (c) 2004-2006 by Charles E. Campbell, Jr.
" The VIM LICENSE applies to Vimball.vim, and Vimball.txt
@@ -15,7 +15,7 @@ if &cp || exists("g:loaded_vimball")
finish
endif
let s:keepcpo = &cpo
-let g:loaded_vimball = "v8"
+let g:loaded_vimball = "v9"
set cpo&vim
" =====================================================================
@@ -40,12 +40,25 @@ fun! vimball#MkVimball(line1,line2,writelevel,vimballname) range
endif
" user option bypass
- let eikeep= &ei
- set ei=all
+ let eikeep = &ei
+ let acdkeep = &acd
+ set ei=all noacd
- let home = substitute(&rtp,',.*$','','')
+ " go to vim plugin home
+ for home in split(&rtp,',') + ['']
+ if isdirectory(home) | break | endif
+ endfor
+ if home == ""
+ let home= substitute(&rtp,',.*$','','')
+ endif
+ if (has("win32") || has("win95") || has("win64") || has("win16"))
+ let home= substitute(home,'/','\\','ge')
+ endif
+" call Decho("home<".home.">")
+
+ " save current directory
let curdir = getcwd()
- exe "cd ".home
+ call s:ChgDir(home)
" record current tab, initialize while loop index
let curtabnr = tabpagenr()
@@ -58,8 +71,9 @@ fun! vimball#MkVimball(line1,line2,writelevel,vimballname) range
if !filereadable(svfile)
echohl Error | echo "unable to read file<".svfile.">" | echohl None
- let &ei= eikeep
- exe "cd ".curdir
+ call s:ChgDir(curdir)
+ let &ei = eikeep
+ let &acd = acdkeep
" call Dret("MkVimball")
return
endif
@@ -82,7 +96,12 @@ fun! vimball#MkVimball(line1,line2,writelevel,vimballname) range
endif
call setline(lastline ,svfile)
call setline(lastline+1,0)
- exe "$r ".svfile
+
+ " write the file from the tab
+ let svfilepath= s:Path(svfile,'')
+" call Decho("exe $r ".svfilepath)
+ exe "$r ".svfilepath
+
call setline(lastline+1,line("$") - lastline - 1)
" call Decho("lastline=".lastline." line$=".line("$"))
@@ -93,11 +112,15 @@ fun! vimball#MkVimball(line1,line2,writelevel,vimballname) range
" write the vimball
exe "tabn ".vbtabnr
- exe "cd ".curdir
+ call s:ChgDir(curdir)
if a:writelevel
- exe "w! ".vbname
+ let vbnamepath= s:Path(vbname,'')
+" call Decho("exe w! ".vbnamepath)
+ exe "w! ".vbnamepath
else
- exe "w ".vbname
+ let vbnamepath= s:Path(vbname,'')
+" call Decho("exe w ".vbnamepath)
+ exe "w ".vbnamepath
endif
" call Decho("Vimball<".vbname."> created")
echo "Vimball<".vbname."> created"
@@ -108,7 +131,8 @@ fun! vimball#MkVimball(line1,line2,writelevel,vimballname) range
exe "tabc ".vbtabnr
" restore options
- let &ei= eikeep
+ let &ei = eikeep
+ let &acd = acdkeep
" call Dret("MkVimball")
endfun
@@ -125,13 +149,14 @@ fun! vimball#Vimball(really)
endif
" initialize
+ let acdkeep = &acd
let fenkeep = &fen
let regakeep = @a
let eikeep = &ei
let vekeep = &ve
let makeep = getpos("'a")
let curtabnr = tabpagenr()
- set ei=all ve=all nofen
+ set ei=all ve=all nofen noacd
" set up vimball tab
tabnew
@@ -140,10 +165,21 @@ fun! vimball#Vimball(really)
let didhelp= ""
" go to vim plugin home
- let home = substitute(&rtp,',.*$','','')
+ for home in split(&rtp,',') + ['']
+ if isdirectory(home) | break | endif
+ endfor
+ if home == ""
+ let home= substitute(&rtp,',.*$','','')
+ endif
+ if (has("win32") || has("win95") || has("win64") || has("win16"))
+ let home= substitute(home,'/','\\','ge')
+ endif
+" call Decho("home<".home.">")
+
+ " save current directory
let curdir = getcwd()
-" call Decho("exe cd ".home)
- exe "cd ".home
+ call s:ChgDir(home)
+
let linenr = 4
let filecnt = 0
@@ -174,35 +210,36 @@ fun! vimball#Vimball(really)
" call Decho("making directories if they don't exist yet")
let fnamebuf= fname
while fnamebuf =~ '/'
- let dirname = substitute(fnamebuf,'/.*$','','e')
+ let dirname = home."/".substitute(fnamebuf,'/.*$','','e')
let fnamebuf = substitute(fnamebuf,'^.\{-}/\(.*\)$','\1','e')
if !isdirectory(dirname)
" call Decho("making <".dirname.">")
call mkdir(dirname)
endif
- exe "cd ".dirname
endwhile
- exe "cd ".home
+ call s:ChgDir(home)
" grab specified qty of lines and place into "a" buffer
" (skip over path/filename and qty-lines)
let linenr = linenr + 2
let lastline = linenr + fsize - 1
" call Decho("exe ".linenr.",".lastline."yank a")
- exe linenr.",".lastline."yank a"
+ exe "silent ".linenr.",".lastline."yank a"
" copy "a" buffer into tab
" call Decho('copy "a buffer into tab#'.vbtabnr)
exe "tabn ".vbtabnr
silent! %d
- put a
+ silent put a
1
- d
+ silent d
" write tab to file
if a:really
-" call Decho("exe w! ".fname)
- exe "silent w! ".fname
+ let fnamepath= s:Path(home."/".fname,'')
+" call Decho("exe w! ".fnamepath)
+ exe "silent w! ".fnamepath
+ echo "wrote ".fnamepath
endif
" return to tab with vimball
@@ -225,9 +262,10 @@ fun! vimball#Vimball(really)
" set up help
" call Decho("about to set up help: didhelp<".didhelp.">")
if didhelp != ""
-" call Decho("exe helptags ".home."/".didhelp)
- exe "helptags ".home."/".didhelp
- echomsg "did helptags"
+ let htpath= escape(substitute(s:Path(home."/".didhelp,'"'),'"','','ge'),' ')
+" call Decho("exe helptags ".htpath)
+ exe "helptags ".htpath
+ echo "did helptags"
endif
" make sure a "Press ENTER..." prompt appears to keep the messages showing!
@@ -244,13 +282,14 @@ fun! vimball#Vimball(really)
let &ei = eikeep
let @a = regakeep
let &fen = fenkeep
+ let &acd = acdkeep
if makeep[0] != 0
" restore mark a
" call Decho("restore mark-a: makeep=".string(makeep))
call setpos("'a",makeep)
ka
endif
- exe "cd ".curdir
+ call s:ChgDir(curdir)
" call Dret("Vimball")
endfun
@@ -264,23 +303,65 @@ fun! vimball#Decompress(fname)
if expand("%") =~ '.*\.gz' && executable("gunzip")
exe "!gunzip ".a:fname
let fname= substitute(a:fname,'\.gz$','','')
- exe "e ".fname
- echohl WarningMsg | echo "Source this file to extract it! (:so ".fname.")" | echohl None
+ exe "e ".escape(fname,' \')
+ call vimball#ShowMesg("Source this file to extract it! (:so %)")
elseif expand("%") =~ '.*\.bz2' && executable("bunzip2")
exe "!bunzip2 ".a:fname
let fname= substitute(a:fname,'\.bz2$','','')
- exe "e ".fname
- echohl WarningMsg | echo "Source this file to extract it! (:so ".fname.")" | echohl None
+ exe "e ".escape(fname,' \')
+ call vimball#ShowMesg("Source this file to extract it! (:so %)")
elseif expand("%") =~ '.*\.zip' && executable("unzip")
exe "!unzip ".a:fname
let fname= substitute(a:fname,'\.zip$','','')
- exe "e ".fname
- echohl WarningMsg | echo "Source this file to extract it! (:so ".fname.")" | echohl None
+ exe "e ".escape(fname,' \')
+ call vimball#ShowMesg("Source this file to extract it! (:so %)")
endif
" call Dret("Decompress")
endfun
+" ---------------------------------------------------------------------
+" ChgDir: change directory (in spite of Windoze) {{{2
+fun! s:ChgDir(newdir)
+" call Dfunc("ChgDir(newdir<".a:newdir.">)")
+ if (has("win32") || has("win95") || has("win64") || has("win16"))
+ exe 'silent cd '.escape(substitute(a:newdir,'/','\\','g'),' ')
+ else
+ exe 'silent cd '.escape(a:newdir,' ')
+ endif
+" call Dret("ChgDir")
+endfun
+
+" ---------------------------------------------------------------------
+" Path: {{{2
+fun! s:Path(cmd,quote)
+" call Dfunc("Path(cmd<".a:cmd."> quote<".a:quote.">)")
+ if (has("win32") || has("win95") || has("win64") || has("win16"))
+ let cmdpath= a:quote.substitute(a:cmd,'/','\\','ge').a:quote
+ else
+ let cmdpath= a:quote.a:cmd.a:quote
+ endif
+ if a:quote == ""
+ let cmdpath= escape(cmdpath,' ')
+ endif
+" call Dret("Path <".cmdpath.">")
+ return cmdpath
+endfun
+
+" ---------------------------------------------------------------------
+" vimball#ShowMesg: {{{2
+fun! vimball#ShowMesg(msg)
+" call Dfunc("vimball#ShowMesg(msg<".a:msg.">)")
+ let ich= 1
+ echohl WarningMsg | echo a:msg | echohl None
+ while ich < &ch
+ echo " "
+ let ich= ich + 1
+ endwhile
+" call Dret("vimball#ShowMesg")
+endfun
+
+" ---------------------------------------------------------------------
let &cpo= s:keepcpo
unlet s:keepcpo
" =====================================================================
diff --git a/runtime/autoload/xml/html32.vim b/runtime/autoload/xml/html32.vim
index e975bad93..9b971d6fa 100644
--- a/runtime/autoload/xml/html32.vim
+++ b/runtime/autoload/xml/html32.vim
@@ -2,7 +2,7 @@ let g:xmldata_html32 = {
\ 'vimxmlentities': ['AElig', 'Aacute', 'Acirc', 'Agrave', 'Aring', 'Atilde', 'Auml', 'Ccedil', 'ETH', 'Eacute', 'Ecirc', 'Egrave', 'Euml', 'Iacute', 'Icirc', 'Igrave', 'Iuml', 'Ntilde', 'Oacute', 'Ocirc', 'Ograve', 'Oslash', 'Otilde', 'Ouml', 'THORN', 'Uacute', 'Ucirc', 'Ugrave', 'Uuml', 'Yacute', 'aacute', 'acirc', 'acute', 'aelig', 'agrave', 'amp', 'aring', 'atilde', 'auml', 'brvbar', 'ccedil', 'cedil', 'cent', 'copy', 'curren', 'deg', 'divide', 'eacute', 'ecirc', 'egrave', 'eth', 'euml', 'frac12', 'frac14', 'frac34', 'gt', 'iacute', 'icirc', 'iexcl', 'igrave', 'iquest', 'iuml', 'laquo', 'lt', 'macr', 'micro', 'middot', 'nbsp', 'not', 'ntilde', 'oacute', 'ocirc', 'ograve', 'ordf', 'ordm', 'oslash', 'otilde', 'ouml', 'para', 'plusmn', 'pound', 'raquo', 'reg', 'sect', 'shy', 'sup1', 'sup2', 'sup3', 'szlig', 'thorn', 'times', 'uacute', 'ucirc', 'ugrave', 'uml', 'uuml', 'yacute', 'yen', 'yuml'],
\ 'vimxmlroot': ['html'],
\ 'a': [
-\ ['tt', 'i', 'b', 'u', 'strike', 'big', 'small', 'sub', 'sup', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'a', 'img', 'applet', 'font', 'basefont', 'br', 'script', 'map', 'input', 'select', 'textarea'],
+\ ['tt', 'i', 'b', 'u', 'strike', 'big', 'small', 'sub', 'sup', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'img', 'applet', 'font', 'basefont', 'br', 'script', 'map', 'input', 'select', 'textarea'],
\ { 'rel': [], 'href': [], 'name': [], 'rev': [], 'title': []}
\ ],
\ 'address': [
@@ -94,7 +94,7 @@ let g:xmldata_html32 = {
\ { 'size': [], 'color': []}
\ ],
\ 'form': [
-\ ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'tt', 'i', 'b', 'u', 'strike', 'big', 'small', 'sub', 'sup', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'a', 'img', 'applet', 'font', 'basefont', 'br', 'script', 'map', 'input', 'select', 'textarea', 'p', 'ul', 'ol', 'dir', 'menu', 'pre', 'xmp', 'listing', 'dl', 'div', 'center', 'blockquote', 'form', 'isindex', 'hr', 'table', 'address'],
+\ ['h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'tt', 'i', 'b', 'u', 'strike', 'big', 'small', 'sub', 'sup', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'a', 'img', 'applet', 'font', 'basefont', 'br', 'script', 'map', 'input', 'select', 'textarea', 'p', 'ul', 'ol', 'dir', 'menu', 'pre', 'xmp', 'listing', 'dl', 'div', 'center', 'blockquote', 'isindex', 'hr', 'table', 'address'],
\ { 'enctype': ['application/x-www-form-urlencoded'], 'action': [], 'method': ['GET', 'POST']}
\ ],
\ 'h1': [
@@ -122,7 +122,7 @@ let g:xmldata_html32 = {
\ { 'align': ['left', 'center', 'right']}
\ ],
\ 'head': [
-\ ['title', 'isindex', 'base'],
+\ ['title', 'isindex', 'base', 'script', 'style', 'meta', 'link'],
\ { }
\ ],
\ 'hr': [
@@ -198,7 +198,7 @@ let g:xmldata_html32 = {
\ { }
\ ],
\ 'pre': [
-\ ['tt', 'i', 'b', 'u', 'strike', 'big', 'small', 'sub', 'sup', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'a', 'img', 'applet', 'font', 'basefont', 'br', 'script', 'map', 'input', 'select', 'textarea'],
+\ ['tt', 'i', 'b', 'u', 'strike', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'a', 'applet', 'basefont', 'br', 'script', 'map', 'input', 'select', 'textarea'],
\ { 'width': ['#implied']}
\ ],
\ 'samp': [
@@ -206,7 +206,7 @@ let g:xmldata_html32 = {
\ { }
\ ],
\ 'script': [
-\ [''],
+\ [],
\ { }
\ ],
\ 'select': [
@@ -226,7 +226,7 @@ let g:xmldata_html32 = {
\ { }
\ ],
\ 'style': [
-\ [''],
+\ [],
\ { }
\ ],
\ 'sub': [
@@ -314,7 +314,7 @@ let g:xmldata_html32 = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/html401f.vim b/runtime/autoload/xml/html401f.vim
index 6c8937c59..626126550 100644
--- a/runtime/autoload/xml/html401f.vim
+++ b/runtime/autoload/xml/html401f.vim
@@ -1,8 +1,8 @@
-let g:xmldata_html401f = {
+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', 'Tau', 'Theta', 'Uacute', 'Ucirc', 'Ugrave', 'Upsilon', 'Uuml', 'Xi', 'Yacute', 'Yuml', 'Zeta', 'aacute', 'acirc', 'acute', 'aelig', 'agrave', 'alefsym', 'alpha', 'amp', 'and', 'ang', 'apos', 'aring', 'asymp', 'atilde', 'auml', 'bdquo', 'beta', 'brvbar', 'bull', 'cap', 'ccedil', 'cedil', 'cent', 'chi', 'circ', 'clubs', 'cong', 'copy', 'crarr', 'cup', 'curren', 'dArr', 'dagger', 'darr', 'deg', 'delta', 'diams', 'divide', 'eacute', 'ecirc', 'egrave', 'empty', 'emsp', 'ensp', 'epsilon', 'equiv', 'eta', 'eth', 'euml', 'euro', 'exist', 'fnof', 'forall', 'frac12', 'frac14', 'frac34', 'frasl', 'gamma', 'ge', 'gt', 'hArr', 'harr', 'hearts', 'hellip', 'iacute', 'icirc', 'iexcl', 'igrave', 'image', 'infin', 'int', 'iota', 'iquest', 'isin', 'iuml', 'kappa', 'lArr', 'lambda', 'lang', 'laquo', 'larr', 'lceil', 'ldquo', 'le', 'lfloor', 'lowast', 'loz', 'lrm', 'lsaquo', 'lsquo', 'lt', 'macr', 'mdash', 'micro', 'middot', 'minus', 'mu', 'nabla', 'nbsp', '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', 'radic', 'rang', 'raquo', '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'],
+\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', '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', 'circle', 'poly', 'default']}
\ ],
\ 'abbr': [
@@ -50,7 +50,7 @@ let g:xmldata_html401f = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', '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', 'ins', 'del'],
\ { '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': [
@@ -58,7 +58,7 @@ let g:xmldata_html401f = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'hr', 'table', 'address', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo'],
\ { 'accesskey': [], 'disabled': ['BOOL'], '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': [
@@ -126,7 +126,7 @@ let g:xmldata_html401f = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'isindex', 'hr', 'table', 'fieldset', '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'],
\ { 'enctype': ['application/x-www-form-urlencoded'], 'onsubmit': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'target': [], 'onkeyup': [], 'onmouseup': [], 'onreset': [], 'id': [], 'method': ['GET', 'POST'], 'onmouseover': [], 'lang': [], 'accept': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'name': [], 'accept-charset': [], 'onkeypress': [], 'onmousedown': [], 'action': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h1': [
@@ -154,7 +154,7 @@ let g:xmldata_html401f = {
\ { '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'],
+\ ['title', 'isindex', 'base', 'script', 'style', 'meta', 'link', 'object'],
\ { 'profile': [], 'dir': ['ltr', 'rtl'], 'lang': []}
\ ],
\ 'hr': [
@@ -202,7 +202,7 @@ let g:xmldata_html401f = {
\ { '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'],
+\ ['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', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'for': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'legend': [
@@ -262,7 +262,7 @@ let g:xmldata_html401f = {
\ { 'id': [], 'value': [], 'name': [], 'type': [], 'valuetype': ['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'],
+\ ['tt', 'i', 'b', 'u', 's', 'strike', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'br', 'script', 'map', 'q', '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': [
@@ -279,7 +279,7 @@ let g:xmldata_html401f = {
\ ],
\ 'script': [
\ [],
-\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': ['text/javascript'], 'defer': ['BOOL'], 'language': []}
+\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': [], 'defer': ['BOOL'], 'language': []}
\ ],
\ 'select': [
\ ['optgroup', 'option'],
@@ -303,7 +303,7 @@ let g:xmldata_html401f = {
\ ],
\ 'style': [
\ [],
-\ { 'media': [], 'lang': [], 'type': ['text/css'], 'title': [], 'dir': ['ltr', 'rtl']}
+\ { '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'],
@@ -398,7 +398,7 @@ let g:xmldata_html401f = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/html401s.vim b/runtime/autoload/xml/html401s.vim
index 319f4b38f..8f7264864 100644
--- a/runtime/autoload/xml/html401s.vim
+++ b/runtime/autoload/xml/html401s.vim
@@ -2,7 +2,7 @@ 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', 'Tau', 'Theta', 'Uacute', 'Ucirc', 'Ugrave', 'Upsilon', 'Uuml', 'Xi', 'Yacute', 'Yuml', 'Zeta', 'aacute', 'acirc', 'acute', 'aelig', 'agrave', 'alefsym', 'alpha', 'amp', 'and', 'ang', 'apos', 'aring', 'asymp', 'atilde', 'auml', 'bdquo', 'beta', 'brvbar', 'bull', 'cap', 'ccedil', 'cedil', 'cent', 'chi', 'circ', 'clubs', 'cong', 'copy', 'crarr', 'cup', 'curren', 'dArr', 'dagger', 'darr', 'deg', 'delta', 'diams', 'divide', 'eacute', 'ecirc', 'egrave', 'empty', 'emsp', 'ensp', 'epsilon', 'equiv', 'eta', 'eth', 'euml', 'euro', 'exist', 'fnof', 'forall', 'frac12', 'frac14', 'frac34', 'frasl', 'gamma', 'ge', 'gt', 'hArr', 'harr', 'hearts', 'hellip', 'iacute', 'icirc', 'iexcl', 'igrave', 'image', 'infin', 'int', 'iota', 'iquest', 'isin', 'iuml', 'kappa', 'lArr', 'lambda', 'lang', 'laquo', 'larr', 'lceil', 'ldquo', 'le', 'lfloor', 'lowast', 'loz', 'lrm', 'lsaquo', 'lsquo', 'lt', 'macr', 'mdash', 'micro', 'middot', 'minus', 'mu', 'nabla', 'nbsp', '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', 'radic', 'rang', 'raquo', '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'],
+\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', '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', 'circle', 'poly', 'default']}
\ ],
\ 'abbr': [
@@ -42,7 +42,7 @@ let g:xmldata_html401s = {
\ { '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'],
+\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', 'script', 'ins', 'del'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onunload': [], 'onkeypress': [], 'onmousedown': [], 'onload': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'br': [
@@ -50,7 +50,7 @@ let g:xmldata_html401s = {
\ { 'id': [], 'style': [], 'class': [], 'title': []}
\ ],
\ 'button': [
-\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', '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'],
+\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'hr', 'table', 'address', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo'],
\ { 'accesskey': [], 'disabled': ['BOOL'], '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': [
@@ -106,7 +106,7 @@ let g:xmldata_html401s = {
\ { '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'],
+\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'hr', 'table', 'fieldset', 'address', 'script'],
\ { 'enctype': ['application/x-www-form-urlencoded'], 'onsubmit': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'onreset': [], 'id': [], 'method': ['GET', 'POST'], 'onmouseover': [], 'lang': [], 'accept': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'name': [], 'accept-charset': [], 'onkeypress': [], 'onmousedown': [], 'action': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h1': [
@@ -134,7 +134,7 @@ let g:xmldata_html401s = {
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'head': [
-\ ['title', 'base'],
+\ ['title', 'base', 'script', 'style', 'meta', 'link', 'object'],
\ { 'profile': [], 'dir': ['ltr', 'rtl'], 'lang': []}
\ ],
\ 'hr': [
@@ -166,7 +166,7 @@ let g:xmldata_html401s = {
\ { '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'],
+\ ['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', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'for': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'legend': [
@@ -218,7 +218,7 @@ let g:xmldata_html401s = {
\ { 'id': [], 'value': [], 'name': [], 'type': [], 'valuetype': ['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'],
+\ ['tt', 'i', 'b', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'br', 'script', 'map', 'q', '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': [
@@ -231,7 +231,7 @@ let g:xmldata_html401s = {
\ ],
\ 'script': [
\ [],
-\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': ['text/javascript'], 'defer': ['BOOL']}
+\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': [], 'defer': ['BOOL']}
\ ],
\ 'select': [
\ ['optgroup', 'option'],
@@ -251,7 +251,7 @@ let g:xmldata_html401s = {
\ ],
\ 'style': [
\ [],
-\ { 'media': [], 'lang': [], 'type': ['text/css'], 'title': [], 'dir': ['ltr', 'rtl']}
+\ { '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'],
@@ -342,7 +342,7 @@ let g:xmldata_html401s = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/html401t.vim b/runtime/autoload/xml/html401t.vim
index 1d1bf8b2c..4c53f03bc 100644
--- a/runtime/autoload/xml/html401t.vim
+++ b/runtime/autoload/xml/html401t.vim
@@ -2,7 +2,7 @@ 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', 'Tau', 'Theta', 'Uacute', 'Ucirc', 'Ugrave', 'Upsilon', 'Uuml', 'Xi', 'Yacute', 'Yuml', 'Zeta', 'aacute', 'acirc', 'acute', 'aelig', 'agrave', 'alefsym', 'alpha', 'amp', 'and', 'ang', 'apos', 'aring', 'asymp', 'atilde', 'auml', 'bdquo', 'beta', 'brvbar', 'bull', 'cap', 'ccedil', 'cedil', 'cent', 'chi', 'circ', 'clubs', 'cong', 'copy', 'crarr', 'cup', 'curren', 'dArr', 'dagger', 'darr', 'deg', 'delta', 'diams', 'divide', 'eacute', 'ecirc', 'egrave', 'empty', 'emsp', 'ensp', 'epsilon', 'equiv', 'eta', 'eth', 'euml', 'euro', 'exist', 'fnof', 'forall', 'frac12', 'frac14', 'frac34', 'frasl', 'gamma', 'ge', 'gt', 'hArr', 'harr', 'hearts', 'hellip', 'iacute', 'icirc', 'iexcl', 'igrave', 'image', 'infin', 'int', 'iota', 'iquest', 'isin', 'iuml', 'kappa', 'lArr', 'lambda', 'lang', 'laquo', 'larr', 'lceil', 'ldquo', 'le', 'lfloor', 'lowast', 'loz', 'lrm', 'lsaquo', 'lsquo', 'lt', 'macr', 'mdash', 'micro', 'middot', 'minus', 'mu', 'nabla', 'nbsp', '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', 'radic', 'rang', 'raquo', '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'],
+\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', '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', 'circle', 'poly', 'default']}
\ ],
\ 'abbr': [
@@ -50,7 +50,7 @@ let g:xmldata_html401t = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', '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', 'ins', 'del'],
\ { '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': [
@@ -58,7 +58,7 @@ let g:xmldata_html401t = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'hr', 'table', 'address', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo'],
\ { 'accesskey': [], 'disabled': ['BOOL'], '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': [
@@ -126,7 +126,7 @@ let g:xmldata_html401t = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'isindex', 'hr', 'table', 'fieldset', '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'],
\ { 'enctype': ['application/x-www-form-urlencoded'], 'onsubmit': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'target': [], 'onkeyup': [], 'onmouseup': [], 'onreset': [], 'id': [], 'method': ['GET', 'POST'], 'onmouseover': [], 'lang': [], 'accept': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'name': [], 'accept-charset': [], 'onkeypress': [], 'onmousedown': [], 'action': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h1': [
@@ -154,7 +154,7 @@ let g:xmldata_html401t = {
\ { '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'],
+\ ['title', 'isindex', 'base', 'script', 'style', 'meta', 'link', 'object'],
\ { 'profile': [], 'dir': ['ltr', 'rtl'], 'lang': []}
\ ],
\ 'hr': [
@@ -194,7 +194,7 @@ let g:xmldata_html401t = {
\ { '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'],
+\ ['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', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'for': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'legend': [
@@ -254,7 +254,7 @@ let g:xmldata_html401t = {
\ { 'id': [], 'value': [], 'name': [], 'type': [], 'valuetype': ['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'],
+\ ['tt', 'i', 'b', 'u', 's', 'strike', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'br', 'script', 'map', 'q', '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': [
@@ -271,7 +271,7 @@ let g:xmldata_html401t = {
\ ],
\ 'script': [
\ [],
-\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': ['text/javascript'], 'defer': ['BOOL'], 'language': []}
+\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': [], 'defer': ['BOOL'], 'language': []}
\ ],
\ 'select': [
\ ['optgroup', 'option'],
@@ -295,7 +295,7 @@ let g:xmldata_html401t = {
\ ],
\ 'style': [
\ [],
-\ { 'media': [], 'lang': [], 'type': ['text/css'], 'title': [], 'dir': ['ltr', 'rtl']}
+\ { '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'],
@@ -390,7 +390,7 @@ let g:xmldata_html401t = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/html40f.vim b/runtime/autoload/xml/html40f.vim
index 7c7bffefe..2b3ccacfb 100644
--- a/runtime/autoload/xml/html40f.vim
+++ b/runtime/autoload/xml/html40f.vim
@@ -1,8 +1,8 @@
-let g:xmldata_html40f = {
+let g:xmldata_html40t = {
\ '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', 'Tau', 'Theta', 'Uacute', 'Ucirc', 'Ugrave', 'Upsilon', 'Uuml', 'Xi', 'Yacute', 'Yuml', 'Zeta', 'aacute', 'acirc', 'acute', 'aelig', 'agrave', 'alefsym', 'alpha', 'amp', 'and', 'ang', 'apos', 'aring', 'asymp', 'atilde', 'auml', 'bdquo', 'beta', 'brvbar', 'bull', 'cap', 'ccedil', 'cedil', 'cent', 'chi', 'circ', 'clubs', 'cong', 'copy', 'crarr', 'cup', 'curren', 'dArr', 'dagger', 'darr', 'deg', 'delta', 'diams', 'divide', 'eacute', 'ecirc', 'egrave', 'empty', 'emsp', 'ensp', 'epsilon', 'equiv', 'eta', 'eth', 'euml', 'euro', 'exist', 'fnof', 'forall', 'frac12', 'frac14', 'frac34', 'frasl', 'gamma', 'ge', 'gt', 'hArr', 'harr', 'hearts', 'hellip', 'iacute', 'icirc', 'iexcl', 'igrave', 'image', 'infin', 'int', 'iota', 'iquest', 'isin', 'iuml', 'kappa', 'lArr', 'lambda', 'lang', 'laquo', 'larr', 'lceil', 'ldquo', 'le', 'lfloor', 'lowast', 'loz', 'lrm', 'lsaquo', 'lsquo', 'lt', 'macr', 'mdash', 'micro', 'middot', 'minus', 'mu', 'nabla', 'nbsp', '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', 'radic', 'rang', 'raquo', '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'],
+\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', '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', 'circle', 'poly', 'default']}
\ ],
\ 'abbr': [
@@ -50,7 +50,7 @@ let g:xmldata_html40f = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', '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', 'ins', 'del'],
\ { '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': [
@@ -58,7 +58,7 @@ let g:xmldata_html40f = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'hr', 'table', 'address', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo'],
\ { 'accesskey': [], 'disabled': ['BOOL'], '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': [
@@ -126,7 +126,7 @@ let g:xmldata_html40f = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'isindex', 'hr', 'table', 'fieldset', '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'],
\ { 'enctype': ['application/x-www-form-urlencoded'], 'onsubmit': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'target': [], 'onkeyup': [], 'onmouseup': [], 'onreset': [], 'id': [], 'method': ['GET', 'POST'], 'onmouseover': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'accept-charset': [], 'onkeypress': [], 'onmousedown': [], 'action': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h1': [
@@ -154,17 +154,13 @@ let g:xmldata_html40f = {
\ { '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'],
+\ ['title', 'isindex', 'base', 'script', 'style', 'meta', 'link', 'object'],
\ { 'profile': [], 'dir': ['ltr', 'rtl'], 'lang': []}
\ ],
\ 'hr': [
\ [],
\ { 'width': [], 'ondblclick': [], 'size': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'align': ['left', 'center', 'right'], 'style': [], 'onmousemove': [], 'onmouseout': [], 'noshade': ['BOOL'], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
-\ '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': []}
-\ ],
\ 'html': [
\ ['head', 'frameset'],
\ { 'xmlns': ['http://www.w3.org/1999/xhtml'], 'dir': ['ltr', 'rtl'], 'id': [], 'lang': [], 'xml:lang': []}
@@ -177,6 +173,10 @@ let g:xmldata_html40f = {
\ [],
\ { 'scrolling': ['auto', 'yes', 'no', 'auto'], 'noresize': ['BOOL'], 'marginwidth': [], 'id': [], 'marginheight': [], 'longdesc': [], 'src': [], 'style': [], 'name': [], 'frameborder': ['1', '0'], 'title': [], 'class': []}
\ ],
+\ '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', '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', '0'], 'title': [], 'class': []}
@@ -202,7 +202,7 @@ let g:xmldata_html40f = {
\ { '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'],
+\ ['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', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'for': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'legend': [
@@ -262,7 +262,7 @@ let g:xmldata_html40f = {
\ { 'id': [], 'value': [], 'name': [], 'type': [], 'valuetype': ['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'],
+\ ['tt', 'i', 'b', 'u', 's', 'strike', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'br', 'script', 'map', 'q', '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': [
@@ -279,7 +279,7 @@ let g:xmldata_html40f = {
\ ],
\ 'script': [
\ [],
-\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': ['text/javascript'], 'defer': ['BOOL'], 'language': []}
+\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': [], 'defer': ['BOOL'], 'language': []}
\ ],
\ 'select': [
\ ['optgroup', 'option'],
@@ -303,7 +303,7 @@ let g:xmldata_html40f = {
\ ],
\ 'style': [
\ [],
-\ { 'media': [], 'lang': [], 'type': ['text/css'], 'title': [], 'dir': ['ltr', 'rtl']}
+\ { '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'],
@@ -398,7 +398,7 @@ let g:xmldata_html40f = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/html40s.vim b/runtime/autoload/xml/html40s.vim
index 8009ff192..7db45ecf2 100644
--- a/runtime/autoload/xml/html40s.vim
+++ b/runtime/autoload/xml/html40s.vim
@@ -2,7 +2,7 @@ let g:xmldata_html40s = {
\ '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', 'Tau', 'Theta', 'Uacute', 'Ucirc', 'Ugrave', 'Upsilon', 'Uuml', 'Xi', 'Yacute', 'Yuml', 'Zeta', 'aacute', 'acirc', 'acute', 'aelig', 'agrave', 'alefsym', 'alpha', 'amp', 'and', 'ang', 'apos', 'aring', 'asymp', 'atilde', 'auml', 'bdquo', 'beta', 'brvbar', 'bull', 'cap', 'ccedil', 'cedil', 'cent', 'chi', 'circ', 'clubs', 'cong', 'copy', 'crarr', 'cup', 'curren', 'dArr', 'dagger', 'darr', 'deg', 'delta', 'diams', 'divide', 'eacute', 'ecirc', 'egrave', 'empty', 'emsp', 'ensp', 'epsilon', 'equiv', 'eta', 'eth', 'euml', 'euro', 'exist', 'fnof', 'forall', 'frac12', 'frac14', 'frac34', 'frasl', 'gamma', 'ge', 'gt', 'hArr', 'harr', 'hearts', 'hellip', 'iacute', 'icirc', 'iexcl', 'igrave', 'image', 'infin', 'int', 'iota', 'iquest', 'isin', 'iuml', 'kappa', 'lArr', 'lambda', 'lang', 'laquo', 'larr', 'lceil', 'ldquo', 'le', 'lfloor', 'lowast', 'loz', 'lrm', 'lsaquo', 'lsquo', 'lt', 'macr', 'mdash', 'micro', 'middot', 'minus', 'mu', 'nabla', 'nbsp', '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', 'radic', 'rang', 'raquo', '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'],
+\ ['tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', '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', 'circle', 'poly', 'default']}
\ ],
\ 'abbr': [
@@ -42,7 +42,7 @@ let g:xmldata_html40s = {
\ { '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'],
+\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', 'address', 'script', 'ins', 'del'],
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'onunload': [], 'onkeypress': [], 'onmousedown': [], 'onload': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'br': [
@@ -50,7 +50,7 @@ let g:xmldata_html40s = {
\ { 'id': [], 'style': [], 'class': [], 'title': []}
\ ],
\ 'button': [
-\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'form', 'hr', 'table', 'fieldset', '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'],
+\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'hr', 'table', 'address', 'tt', 'i', 'b', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'img', 'object', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo'],
\ { 'accesskey': [], 'disabled': ['BOOL'], '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': [
@@ -106,7 +106,7 @@ let g:xmldata_html40s = {
\ { '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'],
+\ ['p', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'pre', 'dl', 'div', 'noscript', 'blockquote', 'hr', 'table', 'fieldset', 'address', 'script'],
\ { 'enctype': ['application/x-www-form-urlencoded'], 'onsubmit': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'onreset': [], 'id': [], 'method': ['GET', 'POST'], 'onmouseover': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'accept-charset': [], 'onkeypress': [], 'onmousedown': [], 'action': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h1': [
@@ -134,7 +134,7 @@ let g:xmldata_html40s = {
\ { 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'style': [], 'onmousemove': [], 'onmouseout': [], 'onmousedown': [], 'onkeypress': [], 'onclick': [], 'title': [], 'class': []}
\ ],
\ 'head': [
-\ ['title', 'base'],
+\ ['title', 'base', 'script', 'style', 'meta', 'link', 'object'],
\ { 'profile': [], 'dir': ['ltr', 'rtl'], 'lang': []}
\ ],
\ 'hr': [
@@ -166,7 +166,7 @@ let g:xmldata_html40s = {
\ { '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'],
+\ ['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', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'for': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'legend': [
@@ -218,7 +218,7 @@ let g:xmldata_html40s = {
\ { 'id': [], 'value': [], 'name': [], 'type': [], 'valuetype': ['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'],
+\ ['tt', 'i', 'b', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'br', 'script', 'map', 'q', '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': [
@@ -231,7 +231,7 @@ let g:xmldata_html40s = {
\ ],
\ 'script': [
\ [],
-\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': ['text/javascript'], 'defer': ['BOOL']}
+\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': [], 'defer': ['BOOL']}
\ ],
\ 'select': [
\ ['optgroup', 'option'],
@@ -251,7 +251,7 @@ let g:xmldata_html40s = {
\ ],
\ 'style': [
\ [],
-\ { 'media': [], 'lang': [], 'type': ['text/css'], 'title': [], 'dir': ['ltr', 'rtl']}
+\ { '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'],
@@ -342,7 +342,7 @@ let g:xmldata_html40s = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/html40t.vim b/runtime/autoload/xml/html40t.vim
index 79a270415..f53aa22df 100644
--- a/runtime/autoload/xml/html40t.vim
+++ b/runtime/autoload/xml/html40t.vim
@@ -2,7 +2,7 @@ let g:xmldata_html40t = {
\ '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', 'Tau', 'Theta', 'Uacute', 'Ucirc', 'Ugrave', 'Upsilon', 'Uuml', 'Xi', 'Yacute', 'Yuml', 'Zeta', 'aacute', 'acirc', 'acute', 'aelig', 'agrave', 'alefsym', 'alpha', 'amp', 'and', 'ang', 'apos', 'aring', 'asymp', 'atilde', 'auml', 'bdquo', 'beta', 'brvbar', 'bull', 'cap', 'ccedil', 'cedil', 'cent', 'chi', 'circ', 'clubs', 'cong', 'copy', 'crarr', 'cup', 'curren', 'dArr', 'dagger', 'darr', 'deg', 'delta', 'diams', 'divide', 'eacute', 'ecirc', 'egrave', 'empty', 'emsp', 'ensp', 'epsilon', 'equiv', 'eta', 'eth', 'euml', 'euro', 'exist', 'fnof', 'forall', 'frac12', 'frac14', 'frac34', 'frasl', 'gamma', 'ge', 'gt', 'hArr', 'harr', 'hearts', 'hellip', 'iacute', 'icirc', 'iexcl', 'igrave', 'image', 'infin', 'int', 'iota', 'iquest', 'isin', 'iuml', 'kappa', 'lArr', 'lambda', 'lang', 'laquo', 'larr', 'lceil', 'ldquo', 'le', 'lfloor', 'lowast', 'loz', 'lrm', 'lsaquo', 'lsquo', 'lt', 'macr', 'mdash', 'micro', 'middot', 'minus', 'mu', 'nabla', 'nbsp', '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', 'radic', 'rang', 'raquo', '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'],
+\ ['tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', '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', 'circle', 'poly', 'default']}
\ ],
\ 'abbr': [
@@ -50,7 +50,7 @@ let g:xmldata_html40t = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'form', 'isindex', 'hr', 'table', 'fieldset', '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', 'ins', 'del'],
\ { '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': [
@@ -58,7 +58,7 @@ let g:xmldata_html40t = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'hr', 'table', 'address', 'tt', 'i', 'b', 'u', 's', 'strike', 'big', 'small', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'img', 'applet', 'object', 'font', 'basefont', 'br', 'script', 'map', 'q', 'sub', 'sup', 'span', 'bdo'],
\ { 'accesskey': [], 'disabled': ['BOOL'], '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': [
@@ -126,7 +126,7 @@ let g:xmldata_html40t = {
\ { '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', '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', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'ul', 'ol', 'dir', 'menu', 'pre', 'dl', 'div', 'center', 'noscript', 'noframes', 'blockquote', 'isindex', 'hr', 'table', 'fieldset', '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'],
\ { 'enctype': ['application/x-www-form-urlencoded'], 'onsubmit': [], 'ondblclick': [], 'dir': ['ltr', 'rtl'], 'onkeydown': [], 'target': [], 'onkeyup': [], 'onmouseup': [], 'onreset': [], 'id': [], 'method': ['GET', 'POST'], 'onmouseover': [], 'lang': [], 'onmouseout': [], 'onmousemove': [], 'style': [], 'accept-charset': [], 'onkeypress': [], 'onmousedown': [], 'action': [], 'class': [], 'title': [], 'onclick': []}
\ ],
\ 'h1': [
@@ -154,7 +154,7 @@ let g:xmldata_html40t = {
\ { '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'],
+\ ['title', 'isindex', 'base', 'script', 'style', 'meta', 'link', 'object'],
\ { 'profile': [], 'dir': ['ltr', 'rtl'], 'lang': []}
\ ],
\ 'hr': [
@@ -194,7 +194,7 @@ let g:xmldata_html40t = {
\ { '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'],
+\ ['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', 'button'],
\ { 'ondblclick': [], 'onkeydown': [], 'onkeyup': [], 'onmouseup': [], 'id': [], 'onmouseover': [], 'lang': [], 'for': [], 'onkeypress': [], 'onmousedown': [], 'class': [], 'title': [], 'onclick': [], 'accesskey': [], 'dir': ['ltr', 'rtl'], 'onblur': [], 'onfocus': [], 'onmouseout': [], 'onmousemove': [], 'style': []}
\ ],
\ 'legend': [
@@ -254,7 +254,7 @@ let g:xmldata_html40t = {
\ { 'id': [], 'value': [], 'name': [], 'type': [], 'valuetype': ['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'],
+\ ['tt', 'i', 'b', 'u', 's', 'strike', 'em', 'strong', 'dfn', 'code', 'samp', 'kbd', 'var', 'cite', 'abbr', 'acronym', 'a', 'br', 'script', 'map', 'q', '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': [
@@ -271,7 +271,7 @@ let g:xmldata_html40t = {
\ ],
\ 'script': [
\ [],
-\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': ['text/javascript'], 'defer': ['BOOL'], 'language': []}
+\ { 'src': [], 'for': [], 'charset': [], 'event': [], 'type': [], 'defer': ['BOOL'], 'language': []}
\ ],
\ 'select': [
\ ['optgroup', 'option'],
@@ -295,7 +295,7 @@ let g:xmldata_html40t = {
\ ],
\ 'style': [
\ [],
-\ { 'media': [], 'lang': [], 'type': ['text/css'], 'title': [], 'dir': ['ltr', 'rtl']}
+\ { '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'],
@@ -390,7 +390,7 @@ let g:xmldata_html40t = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/xhtml10f.vim b/runtime/autoload/xml/xhtml10f.vim
index c16ab5c59..4cd894d3a 100644
--- a/runtime/autoload/xml/xhtml10f.vim
+++ b/runtime/autoload/xml/xhtml10f.vim
@@ -398,7 +398,7 @@ let g:xmldata_xhtml10f = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/xhtml10s.vim b/runtime/autoload/xml/xhtml10s.vim
index ca8779045..ec8300ed3 100644
--- a/runtime/autoload/xml/xhtml10s.vim
+++ b/runtime/autoload/xml/xhtml10s.vim
@@ -342,7 +342,7 @@ let g:xmldata_xhtml10s = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/xhtml10t.vim b/runtime/autoload/xml/xhtml10t.vim
index 4d30017e4..9a9041897 100644
--- a/runtime/autoload/xml/xhtml10t.vim
+++ b/runtime/autoload/xml/xhtml10t.vim
@@ -390,7 +390,7 @@ let g:xmldata_xhtml10t = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/autoload/xml/xhtml11.vim b/runtime/autoload/xml/xhtml11.vim
index 634d8f7d1..db631e2b5 100644
--- a/runtime/autoload/xml/xhtml11.vim
+++ b/runtime/autoload/xml/xhtml11.vim
@@ -366,7 +366,7 @@ let g:xmldata_xhtml11 = {
\ 'height' : ['Number', ''],
\ 'href' : ['*URI', ''],
\ 'hreflang' : ['LangCode', ''],
-\ 'id' : ['ID', 'Unique string'],
+\ 'id' : ['ID', ''],
\ 'ismap' : ['Bool', ''],
\ 'label' : ['*Text', ''],
\ 'lang' : ['LangCode', ''],
diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt
index 6b9a6ad30..c3f69477c 100644
--- a/runtime/doc/eval.txt
+++ b/runtime/doc/eval.txt
@@ -1,4 +1,4 @@
-*eval.txt* For Vim version 7.0f. Last change: 2006 Apr 25
+*eval.txt* For Vim version 7.0f. Last change: 2006 Apr 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1184,6 +1184,9 @@ v:beval_text The text under or after the mouse pointer. Usually a word as
v:beval_winnr The number of the window, over which the mouse pointer is. Only
valid while evaluating the 'balloonexpr' option.
+ *v:char* *char-variable*
+v:char Argument for evaluating 'formatexpr'.
+
*v:charconvert_from* *charconvert_from-variable*
v:charconvert_from
The name of the character encoding of a file to be converted.
diff --git a/runtime/doc/insert.txt b/runtime/doc/insert.txt
index 61aaa6f78..a0ef63cbb 100644
--- a/runtime/doc/insert.txt
+++ b/runtime/doc/insert.txt
@@ -1,4 +1,4 @@
-*insert.txt* For Vim version 7.0f. Last change: 2006 Apr 25
+*insert.txt* For Vim version 7.0f. Last change: 2006 Apr 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -610,6 +610,9 @@ Note: The keys that are valid in CTRL-X mode are not mapped. This allows for
ends CTRL-X mode (any key that is not a valid CTRL-X mode command) is mapped.
Also, when doing completion with 'complete' mappings apply as usual.
+Note: While completion is active Insert mode can't be used recursively.
+Mappings that somehow invoke ":normal i.." will generate an E523 error.
+
The following mappings are suggested to make typing the completion commands
a bit easier (although they will hide other commands): >
:inoremap ^] ^X^]
diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt
index ebcb6c9a2..c2e3011c0 100644
--- a/runtime/doc/options.txt
+++ b/runtime/doc/options.txt
@@ -1,4 +1,4 @@
-*options.txt* For Vim version 7.0f. Last change: 2006 Apr 25
+*options.txt* For Vim version 7.0f. Last change: 2006 Apr 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2469,8 +2469,8 @@ A jump table for the options with a short description can be found at |Q_op|.
{not available when compiled without the |+autocmd|
feature}
A list of autocommand event names, which are to be ignored.
- When set to "all", all autocommand events are ignored, autocommands
- will not be executed.
+ When set to "all" or when "all" is one of the items, all autocommand
+ events are ignored, autocommands will not be executed.
Otherwise this is a comma separated list of event names. Example: >
:set ei=WinEnter,WinLeave
<
@@ -2987,9 +2987,13 @@ A jump table for the options with a short description can be found at |Q_op|.
{not available when compiled without the |+eval|
feature}
Expression which is evaluated to format a range of lines for the |gq|
- operator. The |v:lnum| variable holds the first line to be formatted,
- |v:count| the number of lines to be formatted.
- When this option is empty 'formatprg' is used.
+ operator. When this option is empty 'formatprg' is used.
+
+ The |v:lnum| variable holds the first line to be formatted.
+ The |v:count| variable the number of lines to be formatted.
+ The |v:char| variable the character to be inserted. This can be
+ empty. Don't insert it yet!
+
Example: >
:set formatexpr=mylang#Format()
< This will invoke the mylang#Format() function in the
diff --git a/runtime/doc/pi_netrw.txt b/runtime/doc/pi_netrw.txt
index f5357797e..4c74a5d43 100644
--- a/runtime/doc/pi_netrw.txt
+++ b/runtime/doc/pi_netrw.txt
@@ -1,4 +1,4 @@
-*pi_netrw.txt* For Vim version 7.0f. Last change: Apr 22, 2006
+*pi_netrw.txt* For Vim version 7.0f. Last change: 2006 Apr 26
VIM REFERENCE MANUAL by Charles E. Campbell, Jr.
@@ -1473,6 +1473,11 @@ which is loaded automatically at startup (assuming :set nocp).
==============================================================================
11. History *netrw-history* {{{1
+ v94: * bugfix - a Decho() had a missing quote; only affects things
+ when debugging was enabled.
+ v93: * bugfix - removed FocusGained event from causing a slow-browser
+ refresh for Windows
+ v92: * :Explore **//pattern implemented (**/filepattern already taken)
v91: * :Explore */pattern implemented
* |'acd'| option bypassed
v90: * mark ', as suggested by Yegappan Lakshmanan, used to help
diff --git a/runtime/doc/sql.txt b/runtime/doc/sql.txt
index cee1139da..e7d40d667 100644
--- a/runtime/doc/sql.txt
+++ b/runtime/doc/sql.txt
@@ -1,4 +1,4 @@
-*sql.txt* For Vim version 7.0f. Last change: Fri Apr 21 2006 10:39:11 PM
+*sql.txt* For Vim version 7.0f. Last change: Wed Apr 26 2006 3:05:33 PM
by David Fishburn
@@ -411,14 +411,16 @@ the space bar):
Stored Procedure List - <C-C>p
View List - <C-C>v
Column List - <C-C>c
- - Windows platform only
- - When viewing a popup window displaying the list
+
+ Windows platform only - When viewing a popup window displaying the list
of tables, you can press <C-Right>, this will
replace the table currently highlighted with
the column list for that table.
- When viewing a popup window displaying the list
of columns, you can press <C-Left>, this will
replace the column list with the list of tables.
+ - This allows you to quickly drill down into a
+ table to view it's columns and back again.
The SQL completion plugin caches various lists that are displayed in
the popup window. This makes the re-displaying of these lists very
@@ -500,9 +502,10 @@ NOTE: The following example uses <C-Right> to trigger a column list while
the popup window is active. This map is only available on the Windows
platforms since *nix does not recognize CTRL and the right arrow held down
together. If you wish to enable this functionality on a *nix platform choose
-a key and create this mapping (see |sql-completion-maps| for further
+a key and create one of these mappings (see |sql-completion-maps| for further
details on where to create this imap): >
- imap <buffer> <your_keystroke> <CR><C-\><C-O>:call sqlcomplete#Map('column')<CR><C-X><C-O>
+ imap <buffer> <your_keystroke> <C-R>=sqlcomplete#DrillIntoTable()<CR>
+ imap <buffer> <your_keystroke> <C-Y><C-\><C-O>:call sqlcomplete#Map('column')<CR><C-X><C-O>
Example of using column completion:
- Press <C-C>t again to display the list of tables.
@@ -517,9 +520,8 @@ Example of using column completion:
change the schema of a cached table you can press <C-C>R, which
clears the SQL completion cache.
- NOTE: <C-Right> and <C-Left> have been designed to work while the
- completion window is active. If you use these maps when the completion
- window is not active a carriage return will be inadvertently entered in
- your buffer.
+ completion window is active. If the completion popup window is
+ not active, a normal <C-Right> or <C-Left> will be executed.
Lets look how we can build a SQL statement dynamically. A select statement
requires a list of columns. There are two ways to build a column list using
@@ -549,7 +551,7 @@ the SQL completion plugin. >
replaced with the comma separate list of columns with the alias
prepended to each of the columns.
7. Step 3 and 4 can be replaced by pressing <C-C>L, which has
- a <CR> embedded in the map to choose the currently highlighted
+ a <C-Y> embedded in the map to choose the currently highlighted
table in the list.
There is a special provision when writing select statements. Consider the
@@ -687,15 +689,13 @@ plugin. >
the completion window. <C-Right> is not recognized on most Unix
systems, so this maps is only created on the Windows platform.
If you would like the same feature on Unix, choose a different key
- and make the same map in your vimrc.
- This should only be used when the completion window is active. >
+ and make the same map in your vimrc. >
<C-Left>
< - Displays the list of tables.
<C-Left> is not recognized on most Unix systems, so this maps is
only created on the Windows platform. If you would like the same
feature on Unix, choose a different key and make the same map in
- your vimrc.
- This should only be used when the completion window is active. >
+ your vimrc. >
<C-C>R
< - This maps removes all cached items and forces the SQL completion
to regenerate the list of items.
diff --git a/runtime/doc/syntax.txt b/runtime/doc/syntax.txt
index c1b517f18..ac155c81c 100644
--- a/runtime/doc/syntax.txt
+++ b/runtime/doc/syntax.txt
@@ -1,4 +1,4 @@
-*syntax.txt* For Vim version 7.0f. Last change: 2006 Apr 24
+*syntax.txt* For Vim version 7.0f. Last change: 2006 Apr 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -610,6 +610,39 @@ For Visual Basic use: >
:let g:filetype_asp = "aspvbs"
+BAAN *baan.vim* *baan-syntax*
+
+The baan.vim gives syntax support for BaanC of release BaanIV upto SSA ERP LN
+for both 3 GL and 4 GL programming. Large number of standard defines/constants
+are supported.
+
+Some special violation of coding standards will be signalled when one specify
+in ones |.vimrc|: >
+ let baan_code_stds=1
+
+*baan-folding*
+
+Syntax folding can be enabled at various levels through the variables
+mentioned below (Set those in your |.vimrc|). The more complex folding on
+source blocks and SQL can be CPU intensive.
+
+To allow any folding and enable folding at function level use: >
+ let baan_fold=1
+Folding can be enabled at source block level as if, while, for ,... The
+indentation preceding the begin/end keywords has to match (spaces are not
+considered equal to a tab). >
+ let baan_fold_block=1
+Folding can be enabled for embedded SQL blocks as SELECT, SELECTDO,
+SELECTEMPTY, ... The indentation preceding the begin/end keywords has to
+match (spaces are not considered equal to a tab). >
+ let baan_fold_sql=1
+Note: Block folding can result in many small folds. It is suggested to |:set|
+the options 'foldminlines' and 'foldnestmax' in |.vimrc| or use |:setlocal| in
+.../after/syntax/baan.vim (see |after-directory|). Eg: >
+ set foldminlines=5
+ set foldnestmax=6
+
+
BASIC *basic.vim* *vb.vim* *ft-basic-syntax* *ft-vb-syntax*
Both Visual Basic and "normal" basic use the extension ".bas". To detect
diff --git a/runtime/doc/tabpage.txt b/runtime/doc/tabpage.txt
index 6fbdeb5b4..df7305578 100644
--- a/runtime/doc/tabpage.txt
+++ b/runtime/doc/tabpage.txt
@@ -1,4 +1,4 @@
-*tabpage.txt* For Vim version 7.0f. Last change: 2006 Apr 25
+*tabpage.txt* For Vim version 7.0f. Last change: 2006 Apr 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -52,6 +52,9 @@ A double click with the mouse in the non-GUI tab pages line opens a new, empty
tab page. It is placed left of the position of the click. The first click
may select another tab page first, causing an extra screen update.
+This also works in a few GUI versions, esp. Win32 and Motif. But only when
+clicking right of the labels.
+
In the GUI tab pages line you can use the right mouse button to open menu.
|tabline-menu|.
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 282b79a5c..b4d81e342 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -4509,6 +4509,9 @@ b:changedtick-variable eval.txt /*b:changedtick-variable*
b:current_syntax-variable syntax.txt /*b:current_syntax-variable*
b:netrw_lastfile pi_netrw.txt /*b:netrw_lastfile*
b:var eval.txt /*b:var*
+baan-folding syntax.txt /*baan-folding*
+baan-syntax syntax.txt /*baan-syntax*
+baan.vim syntax.txt /*baan.vim*
backslash intro.txt /*backslash*
backspace intro.txt /*backspace*
backspace-delete version4.txt /*backspace-delete*
@@ -4677,6 +4680,7 @@ changelog.vim syntax.txt /*changelog.vim*
changenr() eval.txt /*changenr()*
changetick eval.txt /*changetick*
changing change.txt /*changing*
+char-variable eval.txt /*char-variable*
char2nr() eval.txt /*char2nr()*
characterwise motion.txt /*characterwise*
characterwise-register change.txt /*characterwise-register*
@@ -7441,6 +7445,7 @@ v:beval_col eval.txt /*v:beval_col*
v:beval_lnum eval.txt /*v:beval_lnum*
v:beval_text eval.txt /*v:beval_text*
v:beval_winnr eval.txt /*v:beval_winnr*
+v:char eval.txt /*v:char*
v:charconvert_from eval.txt /*v:charconvert_from*
v:charconvert_to eval.txt /*v:charconvert_to*
v:cmdarg eval.txt /*v:cmdarg*
diff --git a/runtime/doc/todo.txt b/runtime/doc/todo.txt
index 3dd56c05c..5f7968a99 100644
--- a/runtime/doc/todo.txt
+++ b/runtime/doc/todo.txt
@@ -1,4 +1,4 @@
-*todo.txt* For Vim version 7.0f. Last change: 2006 Apr 25
+*todo.txt* For Vim version 7.0f. Last change: 2006 Apr 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -30,8 +30,6 @@ be worked on, but only if you sponsor Vim development. See |sponsor|.
*known-bugs*
-------------------- Known bugs and current work -----------------------
-GTK: when executing shell disable tab page labels. (Sean)
-
Add more tests for all new functionality in Vim 7. Especially new functions.
Darren Hiebert is including the patch for omni completion in ctags. A new
@@ -50,6 +48,7 @@ Awaiting updated patches:
- remove 'macatsui' option when this has been fixed.
9 HTML indenting can be slow. Caused by using searchpair(). Can search()
be used instead?
+8 Win32: Add minidump generation. (George Reilly, 2006 Apr 24)
8 Add ":n" to fnamemodify(): normalize path, remove "../" when possible.
Aric Blumer has a patch for this.
He will update the patch for 6.3.
@@ -627,6 +626,9 @@ Macintosh:
Alternate one: http://www.pramodx.20m.com/tee_for_win32.htm, but Walter
Briscoe says it's not as good.
8 "stl" and "stlnc" in 'fillchars' don't work for multi-byte characters.
+8 When doing Insert mode completion a mapping cannot recursively call
+ edit(), because the completion information is global. Put everything in
+ an allocated structure?
8 Command line completion: buffers "foo.txt" and "../b/foo.txt", completing
":buf foo<Tab>" doesn't find the second one. (George V. Reilly)
7 Output for ":scriptnames" and ":breaklist" should shorten the file names:
@@ -1403,6 +1405,11 @@ Syntax highlighting:
8 When using a regexp for "contains=", should delay matching with it until
redrawing happens. Set a flag when a group is added, check this flag when
highlighting starts.
+7 It's possible for an item to be transparent, so that the colors of an item
+ lower on the stack is used. Also do this with highlighting, so that the
+ user can set transparent highlighting? E.g. a number in a C comment would
+ get the color of a comment, a number in an assignment Normal. (Nikolai
+ Weibull)
7 Add "semitrans": Add highlighting. E.g., make the text bold, but keep the
colors. And add colors, so that Green+Red becomes Yellow.
E.g. for this html:
diff --git a/runtime/doc/version7.txt b/runtime/doc/version7.txt
index 06a0aeb2d..10e54bbda 100644
--- a/runtime/doc/version7.txt
+++ b/runtime/doc/version7.txt
@@ -1,4 +1,4 @@
-*version7.txt* For Vim version 7.0f. Last change: 2006 Apr 25
+*version7.txt* For Vim version 7.0f. Last change: 2006 Apr 26
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -2616,4 +2616,50 @@ Win32: The height of the tab page labels is now adjusted to the font height.
Win32: selecting the tab label was off by one. (Yegappan Lakshmanan)
+Added tooltips for Motif tab page labels. (Yegappan Lakshmanan)
+
+When 'encoding' is "utf-8" then ":help spell" would report an illegal byte and
+the file was not converted from latin1 to utf-8. Now retry with latin1 if
+reading the file as utf-8 results in illegal bytes.
+
+Escape argument of feedkeys() before putting it in the typeahead buffer.
+(Yukihiro Nakadaira)
+
+Add v:char variable for evaluating 'formatexpr'. (Yukihiro Nakadaira)
+
+With 8 colors Search highlighting combined with Statement highlighted text
+made the text disappear.
+
+VMS: avoid warnings for redefining MAX and MIN. (Zoltan Arpadffy)
+
+When 'virtualedit' includes "onemore", stopping Visual selection would still
+move the cursor left.
+
+Prevent that using CTRL-R = in Insert mode can start Visual mode.
+
+Fixed a crash that occured when in Insert mode with completion active a
+mapping caused edit() to be called recursively.
+
+When using CTRL-O in Insert mode just after the last character while
+'virtualedit' is "all", then typing CR moved the last character to the next
+line. Call coladvance() before starting the new line.
+
+When using ":shell" and in the command line window ignore clicks on the tab
+page labels.
+
+When 'eventignore' is "all" then ignoring some events, e.g., for ":vimgrep",
+would actually trigger more events.
+
+Win32: When a running Vim uses server name GVIM1 then "gvim --remote fname"
+doesn't find it. When looking for a server name that doesn't end in a digit
+and it is not found then use another server that is found (just like Unix).
+
+When using "double" in 'spellsuggest' when the language doesn't support sound
+folding resulted in too many suggestions.
+
+Win32: Dropping a shortcut on the Vim icon did't edit the referred file like
+editing it in another way would. Use fname_expand() in buf_set_name() instead
+of simply make the file name a full path.
+
+
vim:tw=78:ts=8:ft=help:norl:
diff --git a/runtime/ftplugin/debchangelog.vim b/runtime/ftplugin/debchangelog.vim
index 59f601ad0..6d1f20ee3 100644
--- a/runtime/ftplugin/debchangelog.vim
+++ b/runtime/ftplugin/debchangelog.vim
@@ -1,7 +1,9 @@
-" Vim filetype plugin file
+" Vim filetype plugin file (GUI menu and folding)
" Language: Debian Changelog
" Maintainer: Michael Piefel <piefel@informatik.hu-berlin.de>
-" Last Change: 15 August 2005
+" Stefano Zacchiroli <zack@debian.org>
+" Last Change: 25 April 2006
+" License: GNU GPL, version 2.1 or later
if exists("g:did_changelog_ftplugin")
finish
@@ -10,6 +12,8 @@ endif
" Don't load another plugin (this is global)
let g:did_changelog_ftplugin = 1
+" {{{1 GUI menu
+
" Helper functions returning various data.
" Returns full name, either from $DEBFULLNAME or debianfullname.
" TODO Is there a way to determine name from anywhere else?
@@ -204,3 +208,47 @@ augroup END
setlocal tw=78
setlocal comments=f:*
let b:undo_ftplugin = "setlocal tw< comments<"
+
+" }}}
+" {{{1 folding
+
+setlocal foldmethod=expr
+set foldexpr=GetDebChangelogFold(v:lnum)
+setlocal foldtext=DebChangelogFoldText()
+
+" look for an author name searching backward from a given line number
+function! s:getAuthor(lnum)
+ let line = getline(a:lnum)
+ let backsteps = 0
+ while line !~ '^ --'
+ let backsteps += 1
+ let line = getline(a:lnum - backsteps)
+ endwhile
+ let author = substitute(line, '^ --\s*\([^<]\+\)\s*.*', '\1', '')
+ return author
+endfunction
+
+function! DebChangelogFoldText()
+ if v:folddashes == '-' " changelog entry fold
+ return foldtext() . ' -- ' . s:getAuthor(v:foldend) . ' '
+ endif
+ return foldtext()
+endfunction
+
+function! GetDebChangelogFold(lnum)
+ let line = getline(a:lnum)
+ if line =~ '^\w\+'
+ return '>1' " beginning of a changelog entry
+ endif
+ if line =~ '^\s\+\[.*\]'
+ return '>2' " beginning of an author-specific chunk
+ endif
+ if line =~ '^ --'
+ return '1'
+ endif
+ return '='
+endfunction
+
+" }}}
+
+" vim: set foldmethod=marker:
diff --git a/runtime/ftplugin/html.vim b/runtime/ftplugin/html.vim
index 484651faf..3d723315d 100644
--- a/runtime/ftplugin/html.vim
+++ b/runtime/ftplugin/html.vim
@@ -1,7 +1,7 @@
" Vim filetype plugin file
" Language: html
" Maintainer: Dan Sharp <dwsharp at hotmail dot com>
-" Last Changed: 2004 Jul 08
+" Last Changed: 2006 Apr 26
" URL: http://mywebpage.netscape.com/sharppeople/vim/ftplugin
if exists("b:did_ftplugin") | finish | endif
@@ -14,16 +14,17 @@ set cpo-=C
setlocal commentstring=<!--%s-->
+if exists('&omnifunc')
+" Distinguish between HTML versions
+" To use with other HTML versions add another
+" elseif condition to match proper DOCTYPE
setlocal omnifunc=htmlcomplete#CompleteTags
-" This part added as suggestion by Mikolaj Machowski, still be approved by Dan
-" Sharp!
if &filetype == 'xhtml'
let b:html_omni_flavor = 'xhtml10s'
else
let b:html_omni_flavor = 'html401t'
endif
-
let i = 1
while i < 10 && i < line("$")
let line = getline(i)
@@ -63,7 +64,7 @@ while i < 10 && i < line("$")
endif
let i += 1
endwhile
-
+endif
" HTML: thanks to Johannes Zellner and Benji Fisher.
if exists("loaded_matchit")
diff --git a/runtime/ftplugin/sql.vim b/runtime/ftplugin/sql.vim
index 1bc58318c..c9924b73d 100644
--- a/runtime/ftplugin/sql.vim
+++ b/runtime/ftplugin/sql.vim
@@ -1,8 +1,8 @@
" SQL filetype plugin file
" Language: SQL (Common for Oracle, Microsoft SQL Server, Sybase)
-" Version: 1.0
+" Version: 3.0
" Maintainer: David Fishburn <fishburn at ianywhere dot com>
-" Last Change: Tue Mar 28 2006 2:26:48 PM
+" Last Change: Wed Apr 26 2006 3:02:32 PM
" Download: http://vim.sourceforge.net/script.php?script_id=454
" For more details please use:
@@ -360,6 +360,11 @@ setlocal comments=s1:/*,mb:*,ex:*/,:--,://
" Set completion with CTRL-X CTRL-O to autoloaded function.
if exists('&omnifunc')
+ " Since the SQL completion plugin can be used in conjunction
+ " with other completion filetypes it must record the previous
+ " OMNI function prior to setting up the SQL OMNI function
+ let b:sql_compl_savefunc = &omnifunc
+
" This is used by the sqlcomplete.vim plugin
" Source it for it's global functions
runtime autoload/syntaxcomplete.vim
@@ -370,28 +375,40 @@ if exists('&omnifunc')
if !exists('g:omni_sql_no_default_maps')
" Static maps which use populate the completion list
" using Vim's syntax highlighting rules
- imap <buffer> <c-c>a <C-\><C-O>:let b:sql_compl_type='syntax'<CR><C-X><C-O>
- imap <buffer> <c-c>k <C-\><C-O>:let b:sql_compl_type='sqlKeyword'<CR><C-X><C-O>
- imap <buffer> <c-c>f <C-\><C-O>:let b:sql_compl_type='sqlFunction'<CR><C-X><C-O>
- imap <buffer> <c-c>o <C-\><C-O>:let b:sql_compl_type='sqlOption'<CR><C-X><C-O>
- imap <buffer> <c-c>T <C-\><C-O>:let b:sql_compl_type='sqlType'<CR><C-X><C-O>
- imap <buffer> <c-c>s <C-\><C-O>:let b:sql_compl_type='sqlStatement'<CR><C-X><C-O>
+ imap <buffer> <c-c>a <C-\><C-O>:call sqlcomplete#Map('syntax')<CR><C-X><C-O>
+ imap <buffer> <c-c>k <C-\><C-O>:call sqlcomplete#Map('sqlKeyword')<CR><C-X><C-O>
+ imap <buffer> <c-c>f <C-\><C-O>:call sqlcomplete#Map('sqlFunction')<CR><C-X><C-O>
+ imap <buffer> <c-c>o <C-\><C-O>:call sqlcomplete#Map('sqlOption')<CR><C-X><C-O>
+ imap <buffer> <c-c>T <C-\><C-O>:call sqlcomplete#Map('sqlType')<CR><C-X><C-O>
+ imap <buffer> <c-c>s <C-\><C-O>:call sqlcomplete#Map('sqlStatement')<CR><C-X><C-O>
" Dynamic maps which use populate the completion list
" using the dbext.vim plugin
- imap <buffer> <c-c>t <C-\><C-O>:let b:sql_compl_type='table'<CR><C-X><C-O>
- imap <buffer> <c-c>p <C-\><C-O>:let b:sql_compl_type='procedure'<CR><C-X><C-O>
- imap <buffer> <c-c>v <C-\><C-O>:let b:sql_compl_type='view'<CR><C-X><C-O>
- imap <buffer> <c-c>c <C-\><C-O>:let b:sql_compl_type='column'<CR><C-X><C-O>
- imap <buffer> <c-c>l <C-\><C-O>:let b:sql_compl_type='column_csv'<CR><C-X><C-O>
+ imap <buffer> <c-c>t <C-\><C-O>:call sqlcomplete#Map('table')<CR><C-X><C-O>
+ imap <buffer> <c-c>p <C-\><C-O>:call sqlcomplete#Map('procedure')<CR><C-X><C-O>
+ imap <buffer> <c-c>v <C-\><C-O>:call sqlcomplete#Map('view')<CR><C-X><C-O>
+ imap <buffer> <c-c>c <C-\><C-O>:call sqlcomplete#Map('column')<CR><C-X><C-O>
+ imap <buffer> <c-c>l <C-\><C-O>:call sqlcomplete#Map('column_csv')<CR><C-X><C-O>
" The next 3 maps are only to be used while the completion window is
" active due to the <CR> at the beginning of the map
- imap <buffer> <c-c>L <CR><C-\><C-O>:let b:sql_compl_type='column_csv'<CR><C-X><C-O>
+ imap <buffer> <c-c>L <C-Y><C-\><C-O>:call sqlcomplete#Map('column_csv')<CR><C-X><C-O>
+ " <C-Right> is not recognized on most Unix systems, so only create
+ " these additional maps on the Windows platform.
+ " If you would like to use these maps, choose a different key and make
+ " the same map in your vimrc.
if has('win32')
- imap <buffer> <c-right> <CR><C-\><C-O>:let b:sql_compl_type='column'<CR><C-X><C-O>
- imap <buffer> <c-left> <C-\><C-O>:let b:sql_compl_type='tableReset'<CR><C-X><C-O>
+ imap <buffer> <c-right> <C-R>=sqlcomplete#DrillIntoTable()<CR>
+ imap <buffer> <c-left> <C-R>=sqlcomplete#DrillOutOfColumns()<CR>
endif
" Remove any cached items useful for schema changes
- imap <buffer> <c-c>R <C-\><C-O>:let b:sql_compl_type='resetCache'<CR><C-X><C-O>
+ imap <buffer> <c-c>R <C-\><C-O>:call sqlcomplete#Map('resetCache')<CR><C-X><C-O>
+ endif
+
+ if b:sql_compl_savefunc != ""
+ " We are changing the filetype to SQL from some other filetype
+ " which had OMNI completion defined. We need to activate the
+ " SQL completion plugin in order to cache some of the syntax items
+ " while the syntax rules for SQL are active.
+ call sqlcomplete#PreCacheSyntax()
endif
endif
diff --git a/runtime/indent/make.vim b/runtime/indent/make.vim
index 58504929f..65670566b 100644
--- a/runtime/indent/make.vim
+++ b/runtime/indent/make.vim
@@ -1,7 +1,7 @@
" Vim indent file
" Language: Makefile
" Maintainer: Nikolai Weibull <now@bitwi.se>
-" Latest Revision: 2006-04-19
+" Latest Revision: 2006-04-26
if exists("b:did_indent")
finish
@@ -10,6 +10,7 @@ let b:did_indent = 1
setlocal indentexpr=GetMakeIndent()
setlocal indentkeys=!^F,o,O
+setlocal nosmartindent
if exists("*GetMakeIndent")
finish
@@ -19,34 +20,148 @@ let s:rule_rx = '^[^ \t#:][^#:]*:\{1,2}\%([^=:]\|$\)'
let s:continuation_rx = '\\$'
let s:assignment_rx = '^\s*\h\w*\s*+\==\s*\zs.*\\$'
+" TODO: Deal with comments, string, and all kinds of other crap, e.g., defines.
+" TODO: Unwrap the whole logic of this function into something that requires a
+" lot less “return”s.
function GetMakeIndent()
let lnum = v:lnum - 1
if lnum == 0
return 0
endif
+ " Figure out if the previous line is part of a rule or not. If it is, then
+ " we more or less just indent by a ‘tabstop’, the previous’ lines indent, or
+ " remove all indent if the current line is itself a rule. Also, if the line
+ " in question is part of a continuation-line set constituting the rule line
+ " itself, we indent by either a ‘shiftwidth’, if the line is the first in the
+ " continuation, or use the indent of the previous line, if not.
+ while lnum > 0
+ let line = getline(lnum)
+ if line[0] != "\t"
+ " We found a non-shell-command line, i.e., one that doesn’t have a
+ " leading tab.
+ if line =~ s:rule_rx
+ " The line looks like a rule line, so we must therefore either be inside a
+ " rule or we are a continuation line to that rule line.
+ if line =~ s:continuation_rx
+ " Ah, the rule line was continued, so look up the last continuation
+ " line that’s above the current line.
+ while line =~ s:continuation_rx && lnum < v:lnum
+ let lnum += 1
+ let line = getline(lnum)
+ endwhile
+ let lnum -= 1
+ let line = getline(lnum)
+ endif
+
+ " If the line that we’ve found is right above the current line, deal
+ " with it specifically.
+ if lnum == v:lnum - 1
+ " If it was continued, indent the current line by a shiftwidth, as it
+ " is the first to follow it. Otherwise, depending on if the current
+ " line is a rule line, i.e, a rule line following another rule line,
+ " then indent to the left margin. Otherwise, the current line is the
+ " first shell-command line in the rule, so indent by a ‘tabstop’
+ if line =~ s:continuation_rx
+ return &sw
+ else
+ return getline(v:lnum) =~ s:rule_rx ? 0 : &ts
+ endif
+ else
+ " If the previous line was a continuation line, then unless it was
+ " itself a part of a continuation line, add a ‘shiftwidth’’s worth of
+ " indent. Otherwise, just use the indent of the previous line.
+ " Otherwise, if the previous line wasn’t a continuation line, check
+ " if the one above it was. If it was then indent to whatever level
+ " the “owning” line had. Otherwise, indent to the previous line’s
+ " level.
+ let lnum = v:lnum - 1
+ let line = getline(lnum)
+ if line =~ s:continuation_rx
+ let pnum = v:lnum - 2
+ let pine = getline(pnum)
+ if pine =~ s:continuation_rx
+ return indent(lnum)
+ else
+ return indent(lnum) + &sw
+ endif
+ else
+ let lnum = v:lnum - 2
+ let line = getline(lnum)
+ if line =~ s:continuation_rx
+ while lnum > 0
+ if line !~ s:continuation_rx
+ let lnum += 1
+ let line = getline(lnum)
+ break
+ endif
+ let lnum -= 1
+ let line = getline(lnum)
+ endwhile
+ " We’ve found the owning line. Indent to it’s level.
+ return indent(lnum)
+ else
+ return indent(v:lnum - 1)
+ endif
+ endif
+ endif
+ endif
+
+ " The line wasn’t a rule line, so the current line is part of a series
+ " of tab-indented lines that don’t belong to any rule.
+ break
+ endif
+ let lnum -= 1
+ endwhile
+
+ " If the line before the one we are currently indenting ended with a
+ " continuation, then try to figure out what “owns” that line and indent
+ " appropriately.
+ let lnum = v:lnum - 1
let line = getline(lnum)
- let ind = indent(lnum)
+ if line =~ s:continuation_rx
+ let indent = indent(lnum)
+ if line =~ s:assignment_rx
+ " The previous line is a continuation line that begins a variable-
+ " assignment expression, so set the indent to just beyond the whitespace
+ " following the assignment operator (‘=’).
+ call cursor(lnum, 1)
+ if search(s:assignment_rx, 'W') != 0
+ let indent = virtcol('.') - 1
+ endif
+ endif
+
+ " The previous line didn’t constitute an assignment, so just indent to
+ " whatever level it had.
+ return indent
+ endif
- if line =~ s:rule_rx
- return ind + &ts
- elseif line =~ s:continuation_rx
- while lnum > 0 && line =~ s:continuation_rx && line !~ s:assignment_rx
+ " If the line above the line above the current line ended was continued,
+ " then the line above the current line was part of a continued line. Find
+ " the “owning” line and indent to its level.
+ let lnum = v:lnum - 2
+ let line = getline(lnum)
+ if line =~ s:continuation_rx
+ while lnum > 0
+ if line !~ s:continuation_rx
+ let lnum += 1
+ let line = getline(lnum)
+ break
+ endif
let lnum -= 1
let line = getline(lnum)
endwhile
- if line =~ s:assignment_rx
- call cursor(lnum, 1)
- return search(s:assignment_rx, 'W') != 0 ? virtcol('.') - 1 : 0
- else
- return 0
- endif
- else
- let pnum = lnum - 1
- if pnum == 0
- return ind
- endif
+ " We’ve found the owning line. Indent to it’s level.
+ return indent(lnum)
+ endif
- return getline(pnum) =~ s:continuation_rx ? 0 : ind
+ " If nothing else caught on, then check if this line is a rule line. If it
+ " is, indent it to the left margin. Otherwise, simply use the indent of the
+ " previous line.
+ let line = getline(v:lnum)
+ if line =~ s:rule_rx
+ return 0
+ else
+ return indent(v:lnum - 1)
endif
endfunction
diff --git a/runtime/plugin/vimballPlugin.vim b/runtime/plugin/vimballPlugin.vim
index e1ea57e26..95c06c3ec 100644
--- a/runtime/plugin/vimballPlugin.vim
+++ b/runtime/plugin/vimballPlugin.vim
@@ -9,9 +9,10 @@
" ---------------------------------------------------------------------
" Load Once: {{{1
-if &cp || exists("g:loaded_vimball")
+if &cp || exists("g:loaded_vimball") || exists("g:loaded_vimballplugin")
finish
endif
+let g:loaded_vimballplugin= 1
let s:keepcpo= &cpo
set cpo&vim
@@ -22,7 +23,7 @@ com! -ra -na=+ -bang MkVimball call vimball#MkVimball(<line1>,<line2>,<bang>0,<f
com! -na=0 UseVimball call vimball#Vimball(1)
com! -na=0 VimballList call vimball#Vimball(0)
au BufEnter *.vba.gz,*.vba.bz2,*.vba.zip call vimball#Decompress(expand("<amatch>"))
-au BufEnter *.vba echohl WarningMsg | echo "Source this file to extract it! (:so %)" | echohl None
+au BufEnter *.vba call vimball#ShowMesg("Source this file to extract it! (:so %)")
let &cpo= s:keepcpo
unlet s:keepcpo
diff --git a/runtime/syntax/baan.vim b/runtime/syntax/baan.vim
index 2efa8dea6..5009218b6 100644
--- a/runtime/syntax/baan.vim
+++ b/runtime/syntax/baan.vim
@@ -1,73 +1,863 @@
" Vim syntax file"
" Language: Baan
-" Maintainer: Erwin Smit / Her van de Vliert
-" Last change: 30-10-2001"
+" Maintainer: Erik Remmelzwaal (erik.remmelzwaal 0x40 ssaglobal.com)
+" Originally owned by: Erwin Smit / Her van de Vliert
+" Last change: v1.17 2006/04/26 10:40:18
" 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
+ if exists("baan_fold")
+ unlet baan_fold
+ endif
elseif exists("b:current_syntax")
finish
endif
+"********************************** Lexical setting ***************************"
+syn case ignore
+setlocal iskeyword+=.
+"setlocal ignorecase "This is not a local yet ;-(
+" Identifier
+syn match baanIdentifier "\<\k\+\>"
+
"************************************* 3GL ************************************"
-syn match baan3gl "#ident"
-syn match baan3gl "#include"
-syn match baan3gl "#define"
-syn match baan3gl "#undef"
-syn match baan3gl "#pragma"
-syn keyword baanConditional if then else case endif while endwhile endfor endcase
-syn keyword baan3gl at based break bset call common const continue default double
-syn keyword baan3gl empty extern fixed function ge global goto gt le lt mb
-syn keyword baan3gl multibyte ne ofr prompt ref repeat static step stop string
-syn keyword baan3gl true false until void wherebind
+syn match baan3glpre "#ident\>"
+syn match baan3glpre "#include\>"
+syn region baan3glpre start="#define\>" end="^[^^|]"me=s-1 contains=baanString,baanConstant,baanNumber,baanComment,baansql
+syn match baan3glpre "#undef\>"
+syn match baan3glpre "#pragma\>"
+syn match baan3glpre "#if\>"
+syn match baan3glpre "#ifdef\>"
+syn match baan3glpre "#ifndef\>"
+syn match baan3glpre "#elif\>"
+syn match baan3glpre "#else\>"
+syn match baan3glpre "#endif\>"
+
+" Some keywords are only defined when no foldinat based break bset call continue default
+syn keyword baan3gl empty fixed ge global goto gt le lt mb
+syn keyword baan3gl multibyte ne ofr prompt repeat static step stop
+syn keyword baan3gl until void wherebind ref reference break continue
syn keyword baan3gl and or to not in
-syn keyword baan3gl domain table eq input end long dim return at base print
-syn match baan3gl "\<for\>" contains=baansql
-syn match baan3gl "on case"
-syn match baan3gl "e\=n\=d\=dllusage"
+syn keyword baan3gl eq input end return at print
+syn keyword baanType domain double long string table boolean common
+syn keyword baanType bset void xmlNode
+syn keyword baanStorageClass dim base based extern global fixed MB const
+syn keyword baanConstant pi true false
+
+" Folding settings
+if exists("baan_fold") && baan_fold
+ syn region baanFunctionFold matchgroup=baan3gl start="^\z(\s*\)\<function\>" matchgroup=NONE end="^\z1}" transparent fold keepend
+else
+ syn keyword baan3gl function
+endif
+if exists("baan_fold") && baan_fold && exists("baan_fold_block") && baan_fold_block
+ syn region baanCondFold matchgroup=baanConditional start="^\z(\s*\)\(if\>\|else\>\)" end="^\z1endif\>" end="^\z1else\>"me=s-1 transparent fold keepend extend
+ syn region baanCondFold matchgroup=baanConditional start="^\z(\s*\)for\>" end="^\z1endfor\>" transparent fold keepend extend
+ syn region baanCondFold matchgroup=baanConditional start="^\z(\s*\)while\>" end="^\z1endwhile\>" transparent fold keepend extend
+ syn region baanDLLUsage matchgroup=baan3gl start="^\z(\s*\)dllusage\>" end="^\z1enddllusage\>" fold contains=baanNumber,baanConstant,baanType
+ syn region baanFunUsage matchgroup=baan3gl start="^\z(\s*\)functionusage\>" end="^\z1endfunctionusage\>" fold contains=baanNumber,baanConstant,baanType
+ syn region baanCondFold matchgroup=baanConditional start="^\z(\s*\)\(case\>\|default\>\)\>" end="^\z1endcase\>" end="^\z1\(case\>\|default\>\)"me=s-1 transparent fold keepend extend
+ syn keyword baanConditional then else endif while endwhile endfor case endcase
+ syn match baanConditional "\<on case\>"
+else
+ syn match baanConditional "\<for\>" contains=baansql
+ syn match baanConditional "\<on case\>"
+ syn keyword baanConditional if then else endif while endwhile endfor case endcase default
+ syn region baanDLLUsage matchgroup=baan3gl start="\<dllusage\>" end="\<enddllusage\>" contains=baanNumber,baanConstant,baanType
+ syn region baanFunUsage matchgroup=baan3gl start="\<functionusage\>" end="\<endfunctionusage\>" contains=baanNumber,baanConstant,baanType
+endif
"************************************* SQL ************************************"
-syn keyword baansqlh where reference selecterror selectbind selectdo selectempty
-syn keyword baansqlh selecteos whereused endselect unref setunref clearunref
-syn keyword baansqlh from select clear skip rows
+syn keyword baansql from selectbind
+syn keyword baansql where wherebind whereused exsists
syn keyword baansql between inrange having
-syn match baansql "as set with \d\+ rows"
-syn match baansql "as prepared set"
-syn match baansql "as prepared set with \d\+ rows"
-syn match baansql "refers to"
-syn match baansql "with retry"
-syn match baansql "with retry repeat last row"
-syn match baansql "for update"
-syn match baansql "order by"
-syn match baansql "group by"
-syn match baansql "commit\.transaction()"
-syn match baansql "abort\.transaction()"
-syn match baansql "db\.columns\.to\.record"
-syn match baansql "db\.record\.to\.columns"
-syn match baansql "db\.bind"
-syn match baansql "db\.change\.order"
-syn match baansql "\<db\.eq"
-syn match baansql "\<db\.first"
-syn match baansql "\<db\.gt"
-syn match baansql "\<db\.ge"
-syn match baansql "\<db\.le"
-syn match baansql "\<db\.next"
-syn match baansql "\<db\.prev"
-syn match baansql "\<db\.insert"
-syn match baansql "\<db\.delete"
-syn match baansql "\<db\.update"
-syn match baansql "\<db\.create\.table"
-syn match baansql "db\.set\.to\.default"
-syn match baansql "db\.retry"
-syn match baansql "DB\.RETRY"
-syn match baansql "db\.delayed\.lock"
-syn match baansql "db\.retry\.point()"
-syn match baansql "db\.retry\.hit()"
-syn match baansql "db\.return\.dupl"
-syn match baansql "db\.skip\.dupl"
-syn match baansql "db\.row\.length"
+syn keyword baansql hint ordered asc desc
+syn match baansql "\<as set with \d\+ rows\>"
+syn match baansql "\<as prepared set\>"
+syn match baansql "\<as prepared set with \d\+ rows\>"
+syn match baansql "\<with retry\>"
+syn match baansql "\<with retry repeat last row\>"
+syn match baansql "\<for update\>"
+syn match baansql "\<order by\>"
+syn match baansql "\<group by\>"
+syn match baansql "\<union all\>"
+" references
+syn keyword path reference
+syn match baansql "\<refers to\>"
+syn match baansql "\<unref clear\>"
+syn match baansql "\<unref setunref\>"
+syn match baansql "\<unref clearunref\>"
+syn match baansql "\<unref skip\>"
+" hints
+syn keyword baansql hint and ordered asc desc
+syn match baansql "\<use index \d\+ on\>"
+syn match baansql "\<array fetching\>"
+syn match baansql "\<no array fetching\>"
+syn match baansql "\<array size \d\+\>"
+syn match baansql "\<all rows\>"
+syn match baansql "\<first rows\>"
+syn match baansql "\<buffer \d\+ rows\>"
+syn match baansql "\<no hints\>"
+" update
+syn keyword baansql set
+
+if exists("baan_fold") && baan_fold && exists("baan_fold_sql") && baan_fold_sql
+ syn region baanSQLFold matchgroup=baansql start="^\z(\s*\)\(select\>\|selectdo\>\|selectempty\>\|selecterror\>\|selecteos\>\)" end="^\z1endselect\>" end="^\z1\(selectdo\>\|selectempty\>\|selecterror\>\|selecteos\>\)"me=s-1 transparent fold keepend extend
+ "syn region baanSQLFold matchgroup=baansql start="^\z(\s*\)\(update\>\|updateempty\>\|updateerror\>\|selecteos\>\)" end="^\z1endupdate\>" end="^\z1\(updateempty\>\|updateerror\>\|selecteos\>\)"me=s-1 transparent fold keepend extend
+ syn region baanSQLFold matchgroup=baansql start="^\z(\s*\)\(update\>\|updateempty\>\|updateerror\>\)" end="^\z1endupdate\>" end="^\z1\(updateempty\>\|updateerror\>\)"me=s-1 transparent fold keepend extend
+ syn region baanSQLFold matchgroup=baansql start="^\z(\s*\)\(delete\s\+from\>\|deleteempty\>\|deleteerror\>\)" end="^\z1enddelete\>" end="^\z1\(deleteempty\>\|deleteerror\>\)"me=s-1 transparent fold keepend extend
+else
+ syn keyword baansql select selectdo selectempty selecterror selecteos endselect
+ " delete
+ syn match baansql "\<delete from\>"
+ syn keyword baansql deleteempty deleteerror deleteeos enddelete
+ " update
+ syn keyword baansql update updateempty updateerror updateeos endupdate
+endif
+
+setlocal foldmethod=syntax
+"syn sync fromstart
+syn sync minlines=100
+
+
+"These are bshell functions
+if exists("baan_obsolete")
+syn match baansql "commit\.transaction()"
+syn match baansql "abort\.transaction()"
+syn match baansql "db\.columns\.to\.record"
+syn match baansql "db\.record\.to\.columns"
+syn match baansql "db\.bind"
+syn match baansql "db\.change\.order"
+syn match baansql "db\.set\.to\.default"
+syn match baansql "DB\.RETRY"
+syn match baansql "db\.delayed\.lock"
+syn match baansql "db\.retry\.point()"
+syn match baansql "db\.retry\.hit()"
+syn match baansql "db\.return\.dupl"
+syn match baansql "db\.skip\.dupl"
+syn match baansql "db\.row\.length"
+endif
+
+" Constants
+syn keyword baanConstant __function__
+syn keyword baanConstant __object__
+syn keyword baanConstant __file__
+syn keyword baanConstant __line__
+
+syn keyword baanConstant ABORT.PROGRAM
+syn keyword baanConstant ADD.SET
+syn keyword baanConstant ALL_ENUMS_EXCEPT
+syn keyword baanConstant APPL.EXCL
+syn keyword baanConstant APPL.READ
+syn keyword baanConstant APPL.WAIT
+syn keyword baanConstant APPL.WIDE
+syn keyword baanConstant APPL.WRITE
+syn keyword baanConstant ASK.HELPINFO
+syn keyword baanConstant AUTG_PRINT
+syn keyword baanConstant AUTG_DISPLAY
+syn keyword baanConstant AUTG_MODIFY
+syn keyword baanConstant AUTG_INSERT
+syn keyword baanConstant AUTG_DELETE
+syn keyword baanConstant AUTG_ALL
+syn keyword baanConstant BMS
+syn keyword baanConstant CALCULATOR
+syn keyword baanConstant CALENDAR
+syn keyword baanConstant CHANGE.ORDER
+syn keyword baanConstant CMD.OPTIONS
+syn keyword baanConstant CMD.WHATS.THIS
+syn keyword baanConstant CMF.MESSAGE
+syn keyword baanConstant CMF.TASK
+syn keyword baanConstant CMF.APPOINTMENT
+syn match baanConstant "\<COMPANY\$"
+syn keyword baanConstant COMPNR
+syn keyword baanConstant CONT.PROCESS
+syn keyword baanConstant CREATE.JOB
+syn keyword baanConstant DALNOOBJSET
+syn keyword baanConstant DALNOMETHOD
+syn keyword baanConstant DALNOOBJSETID
+syn keyword baanConstant DALNOOBJECTID
+syn keyword baanConstant DALNOPROP
+syn keyword baanConstant DALNOLOCMODE
+syn keyword baanConstant DALNOGETPOS
+syn keyword baanConstant DALNOSETPERM
+syn keyword baanConstant DALNOOBJPERM
+syn keyword baanConstant DALDBERROR
+syn keyword baanConstant DALHOOKERROR
+syn keyword baanConstant DALNOQUERYID
+syn keyword baanConstant DAL_DESTROY
+syn keyword baanConstant DAL_FIND
+syn keyword baanConstant DAL_GET_CURR
+syn keyword baanConstant DAL_GET_FIRST
+syn keyword baanConstant DAL_GET_LAST
+syn keyword baanConstant DAL_GET_NEXT
+syn keyword baanConstant DAL_GET_PREV
+syn keyword baanConstant DAL_GET_SPECIFIED
+syn keyword baanConstant DAL_NEW
+syn keyword baanConstant DAL_UPDATE
+syn keyword baanConstant DB.ARRAY
+syn keyword baanConstant DB.BASED
+syn keyword baanConstant DB.BITSET
+syn keyword baanConstant DB.BYTE
+syn keyword baanConstant DB.CHECK.IGNORED.REF
+syn keyword baanConstant DB.CHILD
+syn keyword baanConstant DB.CLEAR.NO.ROLLBACK
+syn keyword baanConstant DB.CLEAR.WITH.ROLLBACK
+syn keyword baanConstant DB.COMBINED
+syn keyword baanConstant DB.DATE
+syn keyword baanConstant DB.DELAYED.LOCK
+syn keyword baanConstant DB.DOUBLE
+syn keyword baanConstant DB.ENUM
+syn keyword baanConstant DB.EXIT.ON.DUPL
+syn keyword baanConstant DB.EXIT.ON.NOREC
+syn keyword baanConstant DB.EXIT.ON.ROWCHANGED
+syn keyword baanConstant DB.FILLED
+syn keyword baanConstant DB.FIXED
+syn keyword baanConstant DB.FL.LOCK
+syn keyword baanConstant DB.FLOAT
+syn keyword baanConstant DB.IGNORE.ALL.REFS
+syn keyword baanConstant DB.INTEGER
+syn keyword baanConstant DB.IS.REF.TO
+syn keyword baanConstant DB.LOCK
+syn keyword baanConstant DB.LONG
+syn keyword baanConstant DB.MAIL
+syn keyword baanConstant DB.MULTIBYTE
+syn keyword baanConstant DB.NOT.ACTIV
+syn keyword baanConstant DB.PAR.IS.REF.TO
+syn keyword baanConstant DB.REF.CASCADE
+syn keyword baanConstant DB.REF.CHK.RUNTIME
+syn keyword baanConstant DB.REF.DELETE
+syn keyword baanConstant DB.REF.NOP
+syn keyword baanConstant DB.REF.NULLIFY
+syn keyword baanConstant DB.REF.RESTRICTED
+syn keyword baanConstant DB.REF.UPDATE
+syn keyword baanConstant DB.RETRY
+syn keyword baanConstant DB.RETURN.DUPL
+syn keyword baanConstant DB.RETURN.ERROR
+syn keyword baanConstant DB.RETURN.NOREC
+syn keyword baanConstant DB.RETURN.REF.EXISTS
+syn keyword baanConstant DB.RETURN.REF.NOT.EXISTS
+syn keyword baanConstant DB.RETURN.ROWCHANGED
+syn keyword baanConstant DB.RPOINT
+syn keyword baanConstant DB.SKIP.DUPL
+syn keyword baanConstant DB.SKIP.NOREC
+syn keyword baanConstant DB.SKIP.ROWCHANGED
+syn keyword baanConstant DB.STRING
+syn keyword baanConstant DB.TEXT
+syn keyword baanConstant DB.TIME
+syn keyword baanConstant DBG_BDB_ACTIONS
+syn keyword baanConstant DBG_BDB_DELAY_LOCK
+syn keyword baanConstant DBG_BDB_REFER
+syn keyword baanConstant DBG_BDB_SERVER_TYPE
+syn keyword baanConstant DBG_DATA_SIZE
+syn keyword baanConstant DBG_DEBUG_MESG
+syn keyword baanConstant DBG_DEBUG_TSS
+syn keyword baanConstant DBG_FILE
+syn keyword baanConstant DBG_FILEDEV
+syn keyword baanConstant DBG_FUN_DEBUG
+syn keyword baanConstant DBG_GET_PUT_VAR
+syn keyword baanConstant DBG_INSTR_DEBUG
+syn keyword baanConstant DBG_MUL_ACTION
+syn keyword baanConstant DBG_OBJ_SIZE
+syn keyword baanConstant DBG_PRINT_ENUMS
+syn keyword baanConstant DBG_REF_PATH
+syn keyword baanConstant DBG_RESOURCE_DBG
+syn keyword baanConstant DBG_SCHED_DEBUG
+syn keyword baanConstant DBG_SHOW_FLOW
+syn keyword baanConstant DBG_SHOW_TRACE
+syn keyword baanConstant DBG_SRDD_USAGE
+syn keyword baanConstant DEBUG
+syn keyword baanConstant DEF.FIND
+syn keyword baanConstant DISPLAY.SET
+syn keyword baanConstant DIS.RESTARTED
+syn keyword baanConstant DLL_OVERLOAD
+syn keyword baanConstant DLL_OVERLOAD_ALL
+syn keyword baanConstant DLL_SILENT_ERR
+syn keyword baanConstant DSTerminationCreateProcess
+syn keyword baanConstant DSTerminationCreateThread
+syn keyword baanConstant DSTerminationNormalExit
+syn keyword baanConstant DSTerminationOpenStderr
+syn keyword baanConstant DSTerminationOpenStdin
+syn keyword baanConstant DSTerminationOpenStdout
+syn keyword baanConstant DSTerminationSetDir
+syn keyword baanConstant DUPL.OCCUR
+syn keyword baanConstant E2BIG
+syn keyword baanConstant EABORT
+syn keyword baanConstant EACCES
+syn keyword baanConstant EAGAIN
+syn keyword baanConstant EAUDIT
+syn keyword baanConstant EBADADRS
+syn keyword baanConstant EBADARG
+syn keyword baanConstant EBADCOLL
+syn keyword baanConstant EBADCURSOR
+syn keyword baanConstant EBADF
+syn keyword baanConstant EBADFILE
+syn keyword baanConstant EBADFLD
+syn keyword baanConstant EBADKEY
+syn keyword baanConstant EBADLOG
+syn keyword baanConstant EBADMEM
+syn keyword baanConstant EBDBNOTON
+syn keyword baanConstant EBDBON
+syn keyword baanConstant EBUSY
+syn keyword baanConstant ECHILD
+syn keyword baanConstant EDDCORRUPT
+syn keyword baanConstant EDOM
+syn keyword baanConstant EDUPL
+syn keyword baanConstant EENDFILE
+syn keyword baanConstant EEXIST
+syn keyword baanConstant EFAULT
+syn keyword baanConstant EFBIG
+syn keyword baanConstant EFLOCKED
+syn keyword baanConstant EFNAME
+syn keyword baanConstant EINTR
+syn keyword baanConstant EINVAL
+syn keyword baanConstant EIO
+syn keyword baanConstant EISDIR
+syn keyword baanConstant EISREADONLY
+syn keyword baanConstant EKEXISTS
+syn keyword baanConstant ELOCKED
+syn keyword baanConstant ELOGOPEN
+syn keyword baanConstant ELOGREAD
+syn keyword baanConstant ELOGWRIT
+syn keyword baanConstant EMEMORY
+syn keyword baanConstant EMFILE
+syn keyword baanConstant EMLINK
+syn keyword baanConstant EMLOCKED
+syn keyword baanConstant END.PROGRAM
+syn keyword baanConstant ENFILE
+syn keyword baanConstant ENOBEGIN
+syn keyword baanConstant ENOCURR
+syn keyword baanConstant ENODD
+syn keyword baanConstant ENODELAYEDLOCK
+syn keyword baanConstant ENODEV
+syn keyword baanConstant ENOENT
+syn keyword baanConstant ENOEXEC
+syn keyword baanConstant ENOLOK
+syn keyword baanConstant ENOMEM
+syn keyword baanConstant ENONFS
+syn keyword baanConstant ENOREC
+syn keyword baanConstant ENOSERVER
+syn keyword baanConstant ENOSHMEM
+syn keyword baanConstant ENOSPC
+syn keyword baanConstant ENOTABLE
+syn keyword baanConstant ENOTBLK
+syn keyword baanConstant ENOTDIR
+syn keyword baanConstant ENOTEXCL
+syn keyword baanConstant ENOTINRANGE
+syn keyword baanConstant ENOTLOCKED
+syn keyword baanConstant ENOTOPEN
+syn keyword baanConstant ENOTRANS
+syn keyword baanConstant ENOTTY
+syn keyword baanConstant ENXIO
+syn keyword baanConstant ENUMMASK.INITIAL
+syn keyword baanConstant ENUMMASK.GENERAL
+syn keyword baanConstant EPERM
+syn keyword baanConstant EPIPE
+syn keyword baanConstant EPRIMKEY
+syn keyword baanConstant ERANGE
+syn keyword baanConstant EREFERENCE
+syn keyword baanConstant EREFEXISTS
+syn keyword baanConstant EREFLOCKED
+syn keyword baanConstant EREFNOTEXISTS
+syn keyword baanConstant EREFUNDEFINED
+syn keyword baanConstant EREFUPDATE
+syn keyword baanConstant EROFS
+syn keyword baanConstant EROWCHANGED
+syn keyword baanConstant ESPIPE
+syn keyword baanConstant ESQLCARDINALITYVIOLATION
+syn keyword baanConstant ESQLDIVBYZERO
+syn keyword baanConstant ESQLFILEIO
+syn keyword baanConstant ESQLINDEXOUTOFDIMS
+syn keyword baanConstant ESQLINVALIDPARAMETERTYPE
+syn keyword baanConstant ESQLQUERY
+syn keyword baanConstant ESQLREFER
+syn keyword baanConstant ESQLSTRINGTRUNCATION
+syn keyword baanConstant ESQLSUBSTRINGERROR
+syn keyword baanConstant ESQLSYNTAX
+syn keyword baanConstant ESRCH
+syn keyword baanConstant ETABLEEXIST
+syn keyword baanConstant ETOOMANY
+syn keyword baanConstant ETRANSACTIONON
+syn keyword baanConstant ETXTBSY
+syn keyword baanConstant EUNALLOWEDCOMPNR
+syn keyword baanConstant EVTALLEVENTMASK
+syn keyword baanConstant EVTARMBUTTON
+syn keyword baanConstant EVTARMBUTTONMASK
+syn keyword baanConstant EVTBUCKETMESSAGE
+syn keyword baanConstant EVTBUTTON1
+syn keyword baanConstant EVTBUTTON1MASK
+syn keyword baanConstant EVTBUTTON2
+syn keyword baanConstant EVTBUTTON2MASK
+syn keyword baanConstant EVTBUTTON3
+syn keyword baanConstant EVTBUTTON3MASK
+syn keyword baanConstant EVTBUTTON4
+syn keyword baanConstant EVTBUTTON4MASK
+syn keyword baanConstant EVTBUTTON5
+syn keyword baanConstant EVTBUTTON5MASK
+syn keyword baanConstant EVTBUTTONCHECKED
+syn keyword baanConstant EVTBUTTONDPRESS
+syn keyword baanConstant EVTBUTTONDPRESSMASK
+syn keyword baanConstant EVTBUTTONMOTION
+syn keyword baanConstant EVTBUTTONMOTIONMASK
+syn keyword baanConstant EVTBUTTONPRESS
+syn keyword baanConstant EVTBUTTONPRESSMASK
+syn keyword baanConstant EVTBUTTONRELEASE
+syn keyword baanConstant EVTBUTTONRELEASEMASK
+syn keyword baanConstant EVTBUTTONSELECT
+syn keyword baanConstant EVTBUTTONSELECTMASK
+syn keyword baanConstant EVTBUTTONUNCHECKED
+syn keyword baanConstant EVTBUTTONUNDEFINED
+syn keyword baanConstant EVTCHANGEFOCUS
+syn keyword baanConstant EVTCHANGEFOCUSMASK
+syn keyword baanConstant EVTCHANNELEVENT
+syn keyword baanConstant EVTCHECKBOXMASK
+syn keyword baanConstant EVTCHECKBOXSELECT
+syn keyword baanConstant EVTCLIENTMESSAGE
+syn keyword baanConstant EVTCONNECTREQUEST
+syn keyword baanConstant EVTCONTROLMASK
+syn keyword baanConstant EVTDEATHCHILD
+syn keyword baanConstant EVTDEATHCHILDMASK
+syn keyword baanConstant EVTDISARMBUTTON
+syn keyword baanConstant EVTDISARMBUTTONMASK
+syn keyword baanConstant EVTDLLEVENT
+syn keyword baanConstant EVTDLLEVENTMASK
+syn keyword baanConstant EVTENTERNOTIFY
+syn keyword baanConstant EVTENTERNOTIFYMASK
+syn keyword baanConstant EVTFIELDSELECT
+syn keyword baanConstant EVTFIELDSELECTMASK
+syn keyword baanConstant EVTGRIDACTIVATE
+syn keyword baanConstant EVTGRIDBUTTONPRESS
+syn keyword baanConstant EVTGRIDCHANGEDATA
+syn keyword baanConstant EVTGRIDCHANGEFOCUS
+syn keyword baanConstant EVTGRIDEVENT
+syn keyword baanConstant EVTGRIDEVENTMASK
+syn keyword baanConstant EVTGRIDFOCUSCHANGEDBYMOUSE
+syn keyword baanConstant EVTGRIDLISTBOXCHANGE
+syn keyword baanConstant EVTGRIDMARKCELL
+syn keyword baanConstant EVTGRIDMARKCOLUMN
+syn keyword baanConstant EVTGRIDMARKRANGE
+syn keyword baanConstant EVTGRIDMARKROW
+syn keyword baanConstant EVTGRIDMOVECOLUMN
+syn keyword baanConstant EVTGRIDMOVEROW
+syn keyword baanConstant EVTGRIDRESETSELECTION
+syn keyword baanConstant EVTGRIDRESIZECOLUMN
+syn keyword baanConstant EVTGRIDRESIZEROW
+syn keyword baanConstant EVTHELPCOMMAND
+syn keyword baanConstant EVTHELPCONTEXT
+syn keyword baanConstant EVTHELPEVENT
+syn keyword baanConstant EVTHELPEVENTMASK
+syn keyword baanConstant EVTIOEVENT
+syn keyword baanConstant EVTIOEVENTMASK
+syn keyword baanConstant EVTKEYPRESS
+syn keyword baanConstant EVTKEYPRESSMASK
+syn keyword baanConstant EVTKILLEVENT
+syn keyword baanConstant EVTLEAVENOTIFY
+syn keyword baanConstant EVTLEAVENOTIFYMASK
+syn keyword baanConstant EVTLISTBOXREASONACTIVATE
+syn keyword baanConstant EVTLISTBOXREASONSELECTION
+syn keyword baanConstant EVTLISTBOXREASONTEXT
+syn keyword baanConstant EVTLISTBOXSELECT
+syn keyword baanConstant EVTLISTBOXSELECTMASK
+syn keyword baanConstant EVTLOCKMASK
+syn keyword baanConstant EVTMAXSIZE
+syn keyword baanConstant EVTMENUSELECT
+syn keyword baanConstant EVTMENUSELECTMASK
+syn keyword baanConstant EVTMOD1MASK
+syn keyword baanConstant EVTMOVEWINDOW
+syn keyword baanConstant EVTMOVEWINDOWMASK
+syn keyword baanConstant EVTNAVIGATOREVENT
+syn keyword baanConstant EVTNAVIGATOREVENTMASK
+syn keyword baanConstant EVTNOEVENTMASK
+syn keyword baanConstant EVTOLEAUTOMATION
+syn keyword baanConstant EVTOLECLOSE
+syn keyword baanConstant EVTOLECREATEINSTANCE
+syn keyword baanConstant EVTOLEDATACHANGED
+syn keyword baanConstant EVTOLEEVENT
+syn keyword baanConstant EVTOLEEVENTMASK
+syn keyword baanConstant EVTOLEHIDEWINDOW
+syn keyword baanConstant EVTOLELOADDATA
+syn keyword baanConstant EVTOLELOCKSERVER
+syn keyword baanConstant EVTOLEOBJECTWINDOWINVISIBLE
+syn keyword baanConstant EVTOLEOBJECTWINDOWVISIBLE
+syn keyword baanConstant EVTOLERELEASED
+syn keyword baanConstant EVTOLESAVEDATA
+syn keyword baanConstant EVTOLESETHOSTNAMES
+syn keyword baanConstant EVTOLESHOWOBJECT
+syn keyword baanConstant EVTOLESHOWWINDOW
+syn keyword baanConstant EVTOLEUNLOCKSERVER
+syn keyword baanConstant EVTOPTIONSELECT
+syn keyword baanConstant EVTPROCESSEVENT
+syn keyword baanConstant EVTPUSHBUTTON
+syn keyword baanConstant EVTRADIOBOXMASK
+syn keyword baanConstant EVTRADIOBOXSELECT
+syn keyword baanConstant EVTRESIZEWINDOW
+syn keyword baanConstant EVTRESIZEWINDOWMASK
+syn keyword baanConstant EVTRUNPROGEXIT
+syn keyword baanConstant EVTSCROLLBARSELECT
+syn keyword baanConstant EVTSCROLLBARSELECTMASK
+syn keyword baanConstant EVTSETFOCUS
+syn keyword baanConstant EVTSETFOCUSMASK
+syn keyword baanConstant EVTSHIFTMASK
+syn keyword baanConstant EVTSLIDERSELECT
+syn keyword baanConstant EVTSLIDERSELECTMASK
+syn keyword baanConstant EVTSOCKHASDATA
+syn keyword baanConstant EVTSOCKIOERROR
+syn keyword baanConstant EVTTABSELECT
+syn keyword baanConstant EVTTABSELECTMASK
+syn keyword baanConstant EVTTERMINATION
+syn keyword baanConstant EVTTERMINATIONMASK
+syn keyword baanConstant EVTTIMEREVENT
+syn keyword baanConstant EVTTIMEREVENTMASK
+syn keyword baanConstant EVTTREEREASONACTIVATE
+syn keyword baanConstant EVTTREEREASONACTIVATEMASK
+syn keyword baanConstant EVTTREEREASONCOLLAPSE
+syn keyword baanConstant EVTTREEREASONCOLLAPSEMASK
+syn keyword baanConstant EVTTREEREASONEXPAND
+syn keyword baanConstant EVTTREEREASONEXPANDMASK
+syn keyword baanConstant EVTTREEREASONSELECT
+syn keyword baanConstant EVTTREEREASONSELECTMASK
+syn keyword baanConstant EVTTREESELECT
+syn keyword baanConstant EVTTREESELECTMASK
+syn keyword baanConstant EXDEV
+syn keyword baanConstant EXPLICIT.MODELESS
+syn keyword baanConstant EXTEND_APPEND
+syn keyword baanConstant EXTEND_OVERWRITE
+syn keyword baanConstant F.ASK.HELPINFO
+syn keyword baanConstant F.BACKTAB
+syn keyword baanConstant F.BMS
+syn keyword baanConstant F.HELP.INDEX
+syn keyword baanConstant F.NEXT.FLD
+syn keyword baanConstant F.NEXT.OBJ
+syn keyword baanConstant F.NEXT.OCC
+syn keyword baanConstant F.PREV.FLD
+syn keyword baanConstant F.PREV.OBJ
+syn keyword baanConstant F.PREV.OCC
+syn keyword baanConstant F.RESIZE
+syn keyword baanConstant F.RETURN
+syn keyword baanConstant F.SCROLL
+syn keyword baanConstant F.SELECT.FIELD
+syn keyword baanConstant F.SELECT.OPTION
+syn keyword baanConstant F.TAB
+syn keyword baanConstant F.TO.CHOICE
+syn keyword baanConstant F.TO.FIELD
+syn keyword baanConstant F.TO.FORM
+syn keyword baanConstant F.ZOOM
+syn keyword baanConstant FALSE
+syn keyword baanConstant FC.CURR.FIELD
+syn keyword baanConstant FC.FIRST.FIELD
+syn keyword baanConstant FC.FIRST.FORM
+syn keyword baanConstant FC.FRM.WINDOW
+syn keyword baanConstant FC.GET.HEIGHT.FORM
+syn keyword baanConstant FC.GET.SELECTED.FIELD
+syn keyword baanConstant FC.GET.SELECTED.OCC
+syn keyword baanConstant FC.GET.WIDTH.FORM
+syn keyword baanConstant FC.GOTO.FIELD
+syn keyword baanConstant FC.GOTO.FIRST.FLD
+syn keyword baanConstant FC.GOTO.FIRST.FORM
+syn keyword baanConstant FC.GOTO.FORM
+syn keyword baanConstant FC.GOTO.NEXT.FLD
+syn keyword baanConstant FC.GOTO.NEXT.FORM
+syn keyword baanConstant FC.GRA.WINDOW
+syn keyword baanConstant FC.KYS.WINDOW
+syn keyword baanConstant FC.LAST.FIELD
+syn keyword baanConstant FC.LAST.FORM
+syn keyword baanConstant FC.MAKE.FLD.CURR
+syn keyword baanConstant FC.MOVE.FORM
+syn keyword baanConstant FC.NEXT.FIELD
+syn keyword baanConstant FC.NEXT.FORM
+syn keyword baanConstant FC.OPT.WINDOW
+syn keyword baanConstant FC.PREV.FIELD
+syn keyword baanConstant FC.PREV.FORM
+syn keyword baanConstant FC.RESIZE.FORM
+syn keyword baanConstant FC.REST.FRM.ST
+syn keyword baanConstant FC.RPT.WINDOW
+syn keyword baanConstant FC.SAVE.FRM.ST
+syn keyword baanConstant FC.SAVE.SELECT
+syn keyword baanConstant FC.SEL.FIELD
+syn keyword baanConstant FC.SEL.FORM
+syn keyword baanConstant FC.SWITCH.ORDER.OFF
+syn keyword baanConstant FC.SWITCH.ORDER.ON
+syn keyword baanConstant FC.TEXT.MAIL.WINDOW
+syn keyword baanConstant FIND.DATA
+syn keyword baanConstant FIRST.FRM
+syn keyword baanConstant FIRST.SET
+syn keyword baanConstant FIRST.VIEW
+syn keyword baanConstant FLDCHANGED
+syn keyword baanConstant FLDKEYPRESS
+syn keyword baanConstant FORM.TAB.CHANGE
+syn keyword baanConstant GET.DEFAULTS
+syn keyword baanConstant GETS_ALL_CHARS
+syn keyword baanConstant GETS_NORMAL
+syn keyword baanConstant GETS_SKIP_ALL
+syn keyword baanConstant GLOBAL.COPY
+syn keyword baanConstant GLOBAL.DELETE
+syn keyword baanConstant HELP_ABOUT
+syn keyword baanConstant HELP_ARG_LEN
+syn keyword baanConstant HELP_BITMAP
+syn keyword baanConstant HELP_BLOCK
+syn keyword baanConstant HELP_CHOICE
+syn keyword baanConstant HELP_CLIENT_IMAGE_NOTLOADED
+syn keyword baanConstant HELP_CLIENT_IMAGE_READY
+syn keyword baanConstant HELP_CLIENT_NEW_ARGS
+syn keyword baanConstant HELP_CLIENT_NEW_INFO
+syn keyword baanConstant HELP_COMMANDS
+syn keyword baanConstant HELP_DOMAIN
+syn keyword baanConstant HELP_ENUM
+syn keyword baanConstant HELP_EXTERNAL
+syn keyword baanConstant HELP_FORM
+syn keyword baanConstant HELP_FORMFIELD
+syn keyword baanConstant HELP_FROM_INDEX
+syn keyword baanConstant HELP_GEM
+syn keyword baanConstant HELP_GIF
+syn keyword baanConstant HELP_GLOSSARY
+syn keyword baanConstant HELP_GOTO
+syn keyword baanConstant HELP_GOTOBLOCK
+syn keyword baanConstant HELP_GO_SYS_DEPENDANT
+syn keyword baanConstant HELP_HPGL
+syn keyword baanConstant HELP_IFUNCTION
+syn keyword baanConstant HELP_IFUNCTION2
+syn keyword baanConstant HELP_IFUNCTION3
+syn keyword baanConstant HELP_INDEX
+syn keyword baanConstant HELP_LABEL
+syn keyword baanConstant HELP_LABELHELP
+syn keyword baanConstant HELP_MARK
+syn keyword baanConstant HELP_MAXTYPE
+syn keyword baanConstant HELP_MAX_ARGS
+syn keyword baanConstant HELP_MAX_HIST
+syn keyword baanConstant HELP_MAX_IMAGE
+syn keyword baanConstant HELP_MENU
+syn keyword baanConstant HELP_MESSAGE
+syn keyword baanConstant HELP_ORGANIZER
+syn keyword baanConstant HELP_POPUP_TYPE
+syn keyword baanConstant HELP_POSTSCRIPT
+syn keyword baanConstant HELP_QUESTION
+syn keyword baanConstant HELP_REFERENCE
+syn keyword baanConstant HELP_RELATION
+syn keyword baanConstant HELP_RELATION2
+syn keyword baanConstant HELP_RELATION_DIAGRAM
+syn keyword baanConstant HELP_REPORT
+syn keyword baanConstant HELP_SESSION
+syn keyword baanConstant HELP_STARTSESSION
+syn keyword baanConstant HELP_STARTSHELL
+syn keyword baanConstant HELP_SUBFUNCTION
+syn keyword baanConstant HELP_SYSTEM_DEPENDANT
+syn keyword baanConstant HELP_TABLE
+syn keyword baanConstant HELP_TABLEFIELD
+syn keyword baanConstant HELP_USING
+syn keyword baanConstant HOOK_IS_APPLICABLE
+syn keyword baanConstant HOOK_IS_DERIVED
+syn keyword baanConstant HOOK_IS_MANDATORY
+syn keyword baanConstant HOOK_IS_READONLY
+syn keyword baanConstant HOOK_IS_VALID
+syn keyword baanConstant HOOK_UPDATE
+syn keyword baanConstant INCLUDE_ENUMS
+syn keyword baanConstant INTERRUPT
+syn keyword baanConstant LAST.FRM
+syn keyword baanConstant LAST.SET
+syn keyword baanConstant LAST.VIEW
+syn keyword baanConstant MARK.ABORT
+syn keyword baanConstant MARK.DELETE
+syn keyword baanConstant MARK.GOTO.NEXT
+syn keyword baanConstant MARK.GOTO.PREV
+syn keyword baanConstant MARK.OCCUR
+syn keyword baanConstant MARK.SHOW.OPT
+syn keyword baanConstant MARK.TAG
+syn keyword baanConstant MARK.TAG.ALL
+syn keyword baanConstant MARK.TO.CHOICE
+syn keyword baanConstant MARK.UNTAG
+syn keyword baanConstant MARK.UNTAG.ALL
+syn keyword baanConstant MARKONE.ACCEPT
+syn keyword baanConstant MSG.ALL
+syn keyword baanConstant MSG.ERROR
+syn keyword baanConstant MSG.INFO
+syn keyword baanConstant MSG.WARNING
+syn keyword baanConstant MSG.SUCCESS
+syn keyword baanConstant MODAL
+syn keyword baanConstant MODAL_OVERVIEW
+syn keyword baanConstant MODELESS
+syn keyword baanConstant MODELESS_ALWAYS
+syn keyword baanConstant MODIFY.SET
+syn keyword baanConstant MULTI_OCC
+syn keyword baanConstant NEXT.FRM
+syn keyword baanConstant NEXT.SET
+syn keyword baanConstant NEXT.VIEW
+syn keyword baanConstant NO.PERM.DEFINED
+syn keyword baanConstant NO.PERMISSION
+syn keyword baanConstant NO.RESTRICTION
+syn keyword baanConstant NO.ROLLBACK
+syn keyword baanConstant OLESVR.INIT
+syn keyword baanConstant OLESVR.OBJECT.CREATED
+syn keyword baanConstant OLESVR.OBJECT.DESTROYED
+syn keyword baanConstant OS_OS400
+syn keyword baanConstant OS_UNIX
+syn keyword baanConstant OS_WINDOWS_95
+syn keyword baanConstant OS_WINDOWS_NT
+syn keyword baanConstant PERM.DELETE
+syn keyword baanConstant PERM.MODIFY
+syn keyword baanConstant PERM.READ
+syn keyword baanConstant PERM.UNKNOWN
+syn keyword baanConstant PERM.WRITE
+syn keyword baanConstant PI
+syn keyword baanConstant PREV.FRM
+syn keyword baanConstant PREV.SET
+syn keyword baanConstant PREV.VIEW
+syn keyword baanConstant PRINT.DATA
+syn keyword baanConstant PROGRESS.BAR
+syn keyword baanConstant PROGRESS.CANCEL
+syn keyword baanConstant PROGRESS.NOAUTODESTROY
+syn keyword baanConstant PROGRESS.RESIZEABLE
+syn keyword baanConstant PROGRESS.STOP
+syn keyword baanConstant PROGRESS.TIMER
+syn keyword baanConstant PRTCL
+syn keyword baanConstant PRTCL.END.TRACE
+syn keyword baanConstant PRTCL.EXECUTE
+syn keyword baanConstant PRTCL.FIELD.OPTION
+syn keyword baanConstant PRTCL.GET.DATA
+syn keyword baanConstant PRTCL.GET.DATA.ANSWER
+syn keyword baanConstant PRTCL.MASK
+syn keyword baanConstant PRTCL.PUT.DATA
+syn keyword baanConstant PRTCL.START.TRACE
+syn keyword baanConstant PRTCL.UNKNOWN
+syn keyword baanConstant PSMAXSIZE
+syn keyword baanConstant QSS.EQLE
+syn keyword baanConstant QSS.EQUAL
+syn keyword baanConstant QSS.FIRST
+syn keyword baanConstant QSS.GT
+syn keyword baanConstant QSS.GTEQ
+syn keyword baanConstant QSS.LAST
+syn keyword baanConstant QSS.LESS
+syn keyword baanConstant QSS.LOOKUP.FOR.STRUCT
+syn keyword baanConstant QSS.NE
+syn keyword baanConstant QSS.SRC.DUPL.ALLOWED
+syn keyword baanConstant QSS.SRC.IS.SORTED
+syn keyword baanConstant RDI.CENTER
+syn keyword baanConstant RDI.LEFT
+syn keyword baanConstant RDI.LOWER
+syn keyword baanConstant RDI.NONE
+syn keyword baanConstant RDI.RIGHT
+syn keyword baanConstant RDI.UPPER
+syn keyword baanConstant RECOVER.SET
+syn keyword baanConstant RESIZE.FRM
+syn keyword baanConstant RESTART.INPUT
+syn keyword baanConstant ROTATE.CURR
+syn keyword baanConstant RP_IPCINFO_FLAG
+syn keyword baanConstant RP_INPROC
+syn keyword baanConstant RP_NOWAIT
+syn keyword baanConstant RP_NOWAIT_WITH_EVENT
+syn keyword baanConstant RP_WAIT
+syn keyword baanConstant RUN.JOB
+syn keyword baanConstant SAVE.DEFAULTS
+syn keyword baanConstant SBADJUST
+syn keyword baanConstant SBCONFIRM
+syn keyword baanConstant SBDOWN
+syn keyword baanConstant SBEND
+syn keyword baanConstant SBHOME
+syn keyword baanConstant SBMOVE
+syn keyword baanConstant SBPGDOWN
+syn keyword baanConstant SBPGUP
+syn keyword baanConstant SBPRESS
+syn keyword baanConstant SBRELEASE
+syn keyword baanConstant SBUP
+syn keyword baanConstant SEQ_F_R_LCK
+syn keyword baanConstant SEQ_F_W_LCK
+syn keyword baanConstant SEQ_R_LCK
+syn keyword baanConstant SEQ_W_LCK
+syn keyword baanConstant SESSION_NO_PERMISSION
+syn keyword baanConstant SESSION_DELETE_PERMISSION
+syn keyword baanConstant SESSION_INSERT_PERMISSION
+syn keyword baanConstant SESSION_MODIFY_PERMISSION
+syn keyword baanConstant SESSION_DISPLAY_PERMISSION
+syn keyword baanConstant SESSION_PRINT_PERMISSION
+syn keyword baanConstant SINGLE_OCC
+syn keyword baanConstant ST.ADD.SET
+syn keyword baanConstant ST.BITSET
+syn keyword baanConstant ST.BITSET.ZOOM
+syn keyword baanConstant ST.BRP.RUN
+syn keyword baanConstant ST.BRP.SEND
+syn keyword baanConstant ST.DEF.FIND
+syn keyword baanConstant ST.DOUBLE
+syn keyword baanConstant ST.DOUBLE.ZOOM
+syn keyword baanConstant ST.DUPL.OCCUR
+syn keyword baanConstant ST.ENUM
+syn keyword baanConstant ST.ENUM.ZOOM
+syn keyword baanConstant ST.FIND.DATA
+syn keyword baanConstant ST.FIRST.SET
+syn keyword baanConstant ST.LAST.SET
+syn keyword baanConstant ST.MARK.DELETE
+syn keyword baanConstant ST.MARK.OCCUR
+syn keyword baanConstant ST.MB
+syn keyword baanConstant ST.MB.ZOOM
+syn keyword baanConstant ST.MODIFY.SET
+syn keyword baanConstant ST.MULTI.2
+syn keyword baanConstant ST.MULTI.3
+syn keyword baanConstant ST.NUM.ZOOM
+syn keyword baanConstant ST.NUMERIC
+syn keyword baanConstant ST.PROG.BUSY
+syn keyword baanConstant ST.SINGLE.1
+syn keyword baanConstant ST.SINGLE.3
+syn keyword baanConstant ST.SINGLE.4
+syn keyword baanConstant ST.SORT
+syn keyword baanConstant ST.STRING
+syn keyword baanConstant ST.STRING.ZOOM
+syn keyword baanConstant ST.TEXT
+syn keyword baanConstant ST.TEXT.ZOOM
+syn keyword baanConstant ST.TIME
+syn keyword baanConstant ST.TIME.ZOOM
+syn keyword baanConstant ST.UPDATE.DB
+syn keyword baanConstant ST.ZOOM
+syn keyword baanConstant START.CHART
+syn keyword baanConstant START.QUERY
+syn keyword baanConstant START.SET
+syn keyword baanConstant STAT_EXECUTABLE
+syn keyword baanConstant STAT_READABLE
+syn keyword baanConstant STAT_WRITEABLE
+syn keyword baanConstant SUBDAL
+syn keyword baanConstant TDIR
+syn keyword baanConstant TEXT.MANAGER
+syn keyword baanConstant TFILE
+syn keyword baanConstant TRUE
+syn keyword baanConstant UPDATE.DB
+syn keyword baanConstant USER.0
+syn keyword baanConstant USER.1
+syn keyword baanConstant USER.2
+syn keyword baanConstant USER.3
+syn keyword baanConstant USER.4
+syn keyword baanConstant USER.5
+syn keyword baanConstant USER.6
+syn keyword baanConstant USER.7
+syn keyword baanConstant USER.8
+syn keyword baanConstant USER.9
+syn keyword baanConstant WINDOW.DIALOG
+syn keyword baanConstant WINDOW.LIST
+syn keyword baanConstant WINDOW.MMTCONTROLLER
+syn keyword baanConstant WINDOW.MMTSATELLITE
+syn keyword baanConstant WINDOW.MODAL.MENU
+syn keyword baanConstant WINDOW.MODELESS.MENU
+syn keyword baanConstant WINDOW.NONE
+syn keyword baanConstant WINDOW.PARAMETER
+syn keyword baanConstant WINDOW.SYNCHRONIZED
+syn keyword baanConstant WINDOW.WIZARD
+syn keyword baanConstant WITH.ROLLBACK
+syn keyword baanConstant WU.DLL
+syn keyword baanConstant WU.DOMA
+syn keyword baanConstant WU.FLDN
+syn keyword baanConstant WU.LANGOPT
+syn keyword baanConstant WU.MESS
+syn keyword baanConstant WU.QUES
+syn keyword baanConstant WU.SESS
+syn keyword baanConstant WU.TABL
+syn keyword baanConstant XML_DATA
+syn keyword baanConstant XML_DTD
+syn keyword baanConstant XML_ELEMENT
+syn keyword baanConstant XML_PI
+syn keyword baanConstant Z.AUTOACCEPT
+syn keyword baanConstant Z.AUTOZOOM
+syn keyword baanConstant Z.MENU
+syn keyword baanConstant Z.SESSION
+syn keyword baanConstant ZOOM
+
"************************************* 4GL ************************************"
" Program section
@@ -83,9 +873,9 @@ syn match baan4glh "before\.display\.object:"
syn match baan4glh "form\.\d\+:"
syn match baan4glh "form\.all:"
syn match baan4glh "form\.other:"
-syn match baan4gl "init\.form:"
-syn match baan4gl "before\.form:"
-syn match baan4gl "after\.form:"
+syn match baan4gl "init\.form:"
+syn match baan4gl "before\.form:"
+syn match baan4gl "after\.form:"
" Choice section
syn match baan4glh "choice\.start\.set:"
@@ -139,31 +929,32 @@ syn match baan4glh "choice\.calendar:"
syn match baan4glh "choice\.bms:"
syn match baan4glh "choice\.cmd\.whats\.this:"
syn match baan4glh "choice\.help\.index:"
-syn match baan4gl "before\.choice:"
-syn match baan4gl "on\.choice:"
-syn match baan4gl "after\.choice:"
+syn match baan4gl "before\.choice:"
+syn match baan4gl "on\.choice:"
+syn match baan4gl "after\.choice:"
" Field section
-syn match baan4glh "field\.\l\{5}\d\{3}\.\l\{4}\.\=c\=:"
+syn match baan4glh "field\.\l\{5}\d\{3}\.\l\{4,8}\.\=c\=:"
syn match baan4glh "field\.e\..\+:"
syn match baan4glh "field\.all:"
syn match baan4glh "field\.other:"
-syn match baan4gl "init\.field:"
-syn match baan4gl "before\.field:"
-syn match baan4gl "before\.input:"
-syn match baan4gl "before\.display:"
-syn match baan4gl "before\.zoom:"
-syn match baan4gl "before\.checks:"
-syn match baan4gl "domain\.error:"
-syn match baan4gl "ref\.input:"
-syn match baan4gl "ref\.display:"
-syn match baan4gl "check\.input:"
-syn match baan4gl "on\.input:"
-syn match baan4gl "when\.field\.changes:"
-syn match baan4gl "after\.zoom:"
-syn match baan4gl "after\.input:"
-syn match baan4gl "after\.display:"
-syn match baan4gl "after\.field:"
+syn match baan4gl "init\.field:"
+syn match baan4gl "before\.field:"
+syn match baan4gl "before\.input:"
+syn match baan4gl "before\.display:"
+syn match baan4gl "selection\.filter:"
+syn match baan4gl "before\.zoom:"
+syn match baan4gl "before\.checks:"
+syn match baan4gl "domain\.error:"
+syn match baan4gl "ref\.input:"
+syn match baan4gl "ref\.display:"
+syn match baan4gl "check\.input:"
+syn match baan4gl "on\.input:"
+syn match baan4gl "when\.field\.changes:"
+syn match baan4gl "after\.zoom:"
+syn match baan4gl "after\.input:"
+syn match baan4gl "after\.display:"
+syn match baan4gl "after\.field:"
" Group section
syn match baan4glh "group\.\d\+:"
@@ -175,6 +966,7 @@ syn match baan4gl "after\.group:"
syn match baan4glh "zoom\.from\..\+:"
syn match baan4gl "on\.entry:"
syn match baan4gl "on\.exit:"
+
" Main table section
syn match baan4glh "main\.table\.io:"
syn match baan4gl "before\.read:"
@@ -190,6 +982,24 @@ syn match baan4gl "after\.delete:"
syn match baan4gl "after\.skip\.delete:"
syn match baan4gl "read\.view:"
+"**************************** Dal Hooks ********************************
+syn keyword baanDalHook after.abort.transaction after.commit.transaction after.destroy.object
+syn keyword baanDalHook after.change.object after.get.object after.new.object after.save.object before.change.object
+syn keyword baanDalHook before.destroy.object before.get.object before.new.object before.open.object.set before.save.object
+syn keyword baanDalHook method.is.allowed set.object.defaults
+
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\.check"
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\.is.valid"
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\.is.applicable"
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\.is.never.applicable"
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\.is.derived"
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\.is.readonly"
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\.is.mandatory"
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\.make.valid"
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\.update"
+syn match baanDalHook "\l\{5}\d\{3}\.\l\{4,8}\..*\.is.applicable"
+
+
"number without a dot."
syn match baanNumber "\<\-\=\d\+\>"
"number with dot"
@@ -197,8 +1007,10 @@ syn match baanNumber "\<\-\=\d\+\.\d*\>"
"number starting with a dot"
syn match baanNumber "\<\-\=\.\d\+\>"
-" String"
-syn region baanString start=+"+ skip=+""+ end=+"+
+" String Error does not work correct with vim 6.0
+syn match baanOpenStringError +^[^^"]+ display contained excludenl
+syn region baanString start=+"+ skip=+""+ end=+"+ end=+^[^^]+ contains=baanOpenStringError keepend
+
" Comment"
syn match baanComment "|$"
syn match baanComment "|.$"
@@ -208,20 +1020,885 @@ syn match baanCommenth "^|#lra.*$"
syn match baanCommenth "^|#mdm.*$"
syn match baanCommenth "^|#[0-9][0-9][0-9][0-9][0-9].*$"
syn match baanCommenth "^|#N\=o\=Include.*$"
-syn region baanComment start="dllusage" end="enddllusage"
" Oldcode"
syn match baanUncommented "^|[^*#].*[^ ]"
+" DLL section
" SpaceError"
-syn match BaanSpaces " "
-syn match baanSpaceError "\s*$"
-syn match baanSpaceError " "
+syn match baanSpaces " "
+syn match baanSpaceError "\s*$"
+syn match baanSpaceError " "
+
+" Baan error"
+
+if exists("baan_code_stds") && baan_code_stds
+syn match BaanError "^\s*i\..*=\s*\(\k\|\"\)*\s*$" "assignment of an input var"
+syn match BaanError "^\s*ref.*\s[ilse]\..*$" " ref variable defined with i, l, e and s"
+syn match BaanError "^\s*const.*\s[olse]\..*$" " const variable defined with o, l, e and s"
+syn match BaanError "^\s*static.*\s\(i\|g\|l\|o\|io\)\..*$" " static defined without s."
+syn match BaanError "^\s*\(domain\s\|long\s\|string\s\).*\so\.\k*[,)]" " ref variable without ref"
+syn match BaanError "^\s*\(domain\s\|long\s\|string\s\).*\se\.\k*[,)]" " 'e.' variable without extern"
+syn match BaanError "^\s*i\..*,\s*|\s*ref.*$" "
+endif
+
+"**************************** bshell functions ********************************
+syn match baanBshell "\<shiftl\$"
+syn match baanBshell "\<shiftr\$"
+syn match baanBshell "\<shiftc\$"
+syn match baanBshell "\<strip\$"
+syn match baanBshell "\<tolower\$"
+syn match baanBshell "\<toupper\$"
+syn keyword baanBshell isdigit
+syn keyword baanBshell isspace
+syn match baanBshell "\<chr\$"
+syn keyword baanBshell len.in.bytes
+syn keyword baanBshell rpos
+syn match baanBshell "\<sprintf\$"
+syn match baanBshell "\<vsprintf\$"
+syn match baanBshell "\<concat\$"
+syn keyword baanBshell gregdate
+syn match baanBshell "\<w.to.dat\$"
+syn keyword baanBshell ttyname
+syn match baanBshell "\<ttyname\$"
+syn match baanBshell "\<creat.tmp.file\$"
+syn match baanBshell "\<string.set\$"
+syn keyword baanBshell string.scan
+syn keyword baanBshell not.fixed
+syn keyword baanBshell dummy
+syn keyword baanBshell alloc.mem
+syn keyword baanBshell free.mem
+syn keyword baanBshell copy.mem
+syn keyword baanBshell cmp.mem
+syn keyword baanBshell set.mem
+syn keyword baanBshell num.to.date
+syn keyword baanBshell date.to.num
+syn keyword baanBshell num.to.week
+syn keyword baanBshell week.to.num
+syn match baanBshell "\<num.to.date\$"
+syn keyword baanBshell expr.compile
+syn keyword baanBshell l.expr
+syn keyword baanBshell d.expr
+syn match baanBshell "\<s.expr\$"
+syn keyword baanBshell expr.free
+syn keyword baanBshell compnr.check
+syn match baanBshell "\<bse.dir\$"
+syn match baanBshell "\<bse.tmp.dir\$"
+syn match baanBshell "\<bse.release\$"
+syn match baanBshell "\<bse.portset\$"
+syn match baanBshell "\<getenv\$"
+syn keyword baanBshell base.extern
+syn keyword baanBshell at.base
+syn keyword baanBshell get.compnr
+syn keyword baanBshell base.next
+syn keyword baanBshell get.argc
+syn keyword baanBshell get.long.arg
+syn keyword baanBshell get.double.arg
+syn keyword baanBshell get.string.arg
+syn keyword baanBshell get.arg.type
+syn keyword baanBshell put.long.arg
+syn keyword baanBshell put.double.arg
+syn keyword baanBshell put.string.arg
+syn keyword baanBshell setenv
+syn keyword baanBshell cmp.password
+syn match baanBshell "\<crypt.password\$"
+syn keyword baanBshell is.password.ok
+syn keyword baanBshell block.cipher.encrypt
+syn keyword baanBshell block.cipher.decrypt
+syn keyword baanBshell encrypt.user.password
+syn keyword baanBshell verify.user.password
+syn keyword baanBshell asm.put.instance.id
+syn match baanBshell "\<date.to.inputstr\$"
+syn keyword baanBshell inputstr.to.date
+syn match baanBshell "\<hostname\$"
+syn keyword baanBshell base64.encode
+syn keyword baanBshell base64.decode
+syn keyword baanBshell sha.create
+syn keyword baanBshell sha.initialize
+syn keyword baanBshell sha.add.data
+syn keyword baanBshell sha.compute.output
+syn keyword baanBshell sha.destroy
+syn match baanBshell "\<uuid.generate\$"
+syn match baanBshell "\<uuid.format\$"
+syn keyword baanBshell resolve.labels.by.lookupkey
+syn keyword baanBshell resolve.labels.by.codepair
+syn keyword baanBshell lookupkey.hash
+syn keyword baanBshell lookupkey.unhash
+syn match baanBshell "\<mb.long.to.str\$"
+syn keyword baanBshell mb.width
+syn match baanBshell "\<mb.localename\$"
+syn match baanBshell "\<mb.tss.clean\$"
+syn match baanBshell "\<mb.ext.clean\$"
+syn match baanBshell "\<mb.import\$"
+syn match baanBshell "\<mb.export\$"
+syn keyword baanBshell mb.import.raw
+syn keyword baanBshell mb.export.raw
+syn keyword baanBshell uni.import
+syn keyword baanBshell uni.export
+syn keyword baanBshell utf8.import
+syn keyword baanBshell utf8.export
+syn keyword baanBshell mb.strpos
+syn keyword baanBshell mb.scrpos
+syn keyword baanBshell mb.char
+syn keyword baanBshell mb.type
+syn match baanBshell "\<mb.cast\$"
+syn match baanBshell "\<mb.cast.to.str\$"
+syn keyword baanBshell mb.display
+syn keyword baanBshell mb.isbidi
+syn keyword baanBshell mb.isbidi.language
+syn match baanBshell "\<mb.rev\$"
+syn keyword baanBshell mb.hasbidi
+syn keyword baanBshell mb.kb.lang
+syn keyword baanBshell mb.locale.info
+syn keyword baanBshell mb.locale.enumerate
+syn keyword baanBshell mb.nsets
+syn keyword baanBshell mb.set.info
+syn keyword baanBshell mb.char.info
+syn keyword baanBshell key.compare
+syn keyword baanBshell set.fields.default
+syn keyword baanBshell table.round
+syn keyword baanBshell halfadj
+syn keyword baanBshell round
+syn keyword baanBshell format.round
+syn match baanBshell "\<edit\$"
+syn match baanBshell "\<str\$"
+syn keyword baanBshell lval
+syn keyword baanBshell acos
+syn keyword baanBshell asin
+syn keyword baanBshell atan
+syn keyword baanBshell atan2
+syn keyword baanBshell cosh
+syn keyword baanBshell sinh
+syn keyword baanBshell tanh
+syn keyword baanBshell log10
+syn keyword baanBshell sqrt
+syn keyword baanBshell lpow
+syn keyword baanBshell random
+syn keyword baanBshell srand
+syn keyword baanBshell rnd.init
+syn keyword baanBshell rnd.i
+syn keyword baanBshell rnd.d
+syn keyword baanBshell double.cmp
+syn match baanBshell "\<tab\$"
+syn keyword baanBshell aux.open
+syn keyword baanBshell aux.print
+syn keyword baanBshell aux.close
+syn keyword baanBshell refresh
+syn keyword baanBshell cl.screen
+syn match baanBshell "\<delch\$"
+syn match baanBshell "\<deleteln\$"
+syn match baanBshell "\<insch\$"
+syn match baanBshell "\<insertln\$"
+syn keyword baanBshell change.window
+syn keyword baanBshell data.input
+syn keyword baanBshell del.window
+syn keyword baanBshell frame.window
+syn keyword baanBshell new.window
+syn keyword baanBshell window.size
+syn keyword baanBshell move.window
+syn keyword baanBshell resize.window
+syn keyword baanBshell get.row
+syn keyword baanBshell get.col
+syn keyword baanBshell get.cp
+syn keyword baanBshell map.window
+syn keyword baanBshell unmap.window
+syn keyword baanBshell set.bg.color
+syn keyword baanBshell set.fg.color
+syn keyword baanBshell no.scroll
+syn keyword baanBshell scroll
+syn keyword baanBshell cursor.on
+syn keyword baanBshell cursor.off
+syn keyword baanBshell sub.window
+syn keyword baanBshell current.window
+syn match baanBshell "\<keyin\$"
+syn keyword baanBshell dump.screen
+syn keyword baanBshell first.window
+syn keyword baanBshell last.window
+syn keyword baanBshell free.window
+syn keyword baanBshell #input
+syn keyword baanBshell #output
+syn keyword baanBshell wrebuild
+syn keyword baanBshell select.event.input
+syn keyword baanBshell next.event
+syn keyword baanBshell peek.event
+syn keyword baanBshell pending.events
+syn keyword baanBshell send.event
+syn keyword baanBshell send.signal
+syn keyword baanBshell get.display.data
+syn keyword baanBshell open.display
+syn keyword baanBshell link.display
+syn keyword baanBshell link.keyboard
+syn keyword baanBshell unlink.keyboard
+syn keyword baanBshell close.display
+syn keyword baanBshell current.display
+syn keyword baanBshell change.display
+syn keyword baanBshell sync.display.server
+syn match baanBshell "\<get.class.name\$"
+syn keyword baanBshell create.mwindow
+syn keyword baanBshell current.mwindow
+syn keyword baanBshell change.mwindow
+syn keyword baanBshell set.mwindow.title
+syn keyword baanBshell set.mwindow.size
+syn keyword baanBshell set.mwindow.mode
+syn keyword baanBshell get.mwindow.mode
+syn keyword baanBshell destroy.mwindow
+syn keyword baanBshell dialog
+syn keyword baanBshell get.mwindow.size
+syn keyword baanBshell create.bar
+syn keyword baanBshell current.bar
+syn keyword baanBshell change.bar
+syn keyword baanBshell change.bar.attr
+syn keyword baanBshell destroy.bar
+syn keyword baanBshell create.bar.button
+syn keyword baanBshell change.bar.item.attr
+syn keyword baanBshell destroy.bar.item
+syn keyword baanBshell create.object
+syn keyword baanBshell change.object
+syn keyword baanBshell get.object
+syn keyword baanBshell query.object
+syn keyword baanBshell destroy.object
+syn keyword baanBshell get.event.attribute
+syn keyword baanBshell create.sub.object
+syn keyword baanBshell create.sub.object.by.id
+syn keyword baanBshell change.sub.object
+syn keyword baanBshell get.sub.object
+syn keyword baanBshell query.sub.object
+syn keyword baanBshell destroy.sub.object
+syn keyword baanBshell create.arglist
+syn keyword baanBshell add.arg
+syn keyword baanBshell add.ref.arg
+syn keyword baanBshell delete.arg
+syn keyword baanBshell print.arglist
+syn keyword baanBshell destroy.arglist
+syn keyword baanBshell get.object.class.list
+syn keyword baanBshell get.object.class
+syn keyword baanBshell get.sub.object.class
+syn keyword baanBshell get.resource.class
+syn keyword baanBshell get.event.class
+syn keyword baanBshell get.pixmap.info
+syn keyword baanBshell compress.pixmap
+syn keyword baanBshell decompress.pixmap
+syn keyword baanBshell get.window.attrs
+syn keyword baanBshell get.mwindow.attrs
+syn keyword baanBshell create.gc
+syn keyword baanBshell change.gc
+syn keyword baanBshell get.gc
+syn keyword baanBshell destroy.gc
+syn keyword baanBshell load.font
+syn keyword baanBshell query.font
+syn keyword baanBshell free.font
+syn keyword baanBshell get.typeface
+syn keyword baanBshell list.fonts
+syn keyword baanBshell text.extends
+syn keyword baanBshell inherit.object
+syn keyword baanBshell create.gtext
+syn keyword baanBshell create.line
+syn keyword baanBshell create.polyline
+syn keyword baanBshell create.polygon
+syn keyword baanBshell create.rectangle
+syn keyword baanBshell create.arc
+syn keyword baanBshell create.pie
+syn keyword baanBshell create.composite
+syn keyword baanBshell create.image
+syn keyword baanBshell change.gtext
+syn keyword baanBshell change.gtext.label
+syn keyword baanBshell change.line
+syn keyword baanBshell change.polyline
+syn keyword baanBshell change.polygon
+syn keyword baanBshell change.rectangle
+syn keyword baanBshell change.arc
+syn keyword baanBshell change.pie
+syn keyword baanBshell get.gtext
+syn keyword baanBshell get.gtext.label
+syn keyword baanBshell get.line
+syn keyword baanBshell get.polyline
+syn keyword baanBshell get.polygon
+syn keyword baanBshell get.rectangle
+syn keyword baanBshell get.arc
+syn keyword baanBshell get.pie
+syn keyword baanBshell get.composite
+syn keyword baanBshell get.image
+syn keyword baanBshell move.gpart
+syn keyword baanBshell shift.gpart
+syn keyword baanBshell which.gpart
+syn keyword baanBshell which.gparts
+syn keyword baanBshell change.gpart.gc
+syn keyword baanBshell get.gpart.gc
+syn keyword baanBshell destroy.gpart
+syn keyword baanBshell destroy.composite
+syn keyword baanBshell first.gpart
+syn keyword baanBshell last.gpart
+syn keyword baanBshell next.gpart
+syn keyword baanBshell prev.gpart
+syn keyword baanBshell change.gpart.attr
+syn keyword baanBshell get.gpart.attr
+syn keyword baanBshell get.gpart
+syn keyword baanBshell get.gpart.box
+syn keyword baanBshell resize.gpart.box
+syn keyword baanBshell move.gpart.box
+syn keyword baanBshell activate
+syn keyword baanBshell reactivate
+syn keyword baanBshell act.and.sleep
+syn keyword baanBshell sleep
+syn match baanBshell "\<receive.bucket\$"
+syn keyword baanBshell send.bucket
+syn keyword baanBshell send.wait
+syn keyword baanBshell bms.send
+syn match baanBshell "\<bms.receive\$"
+syn keyword baanBshell bms.receive.buffer
+syn keyword baanBshell bms.add.mask
+syn keyword baanBshell bms.delete.mask
+syn keyword baanBshell bms.init
+syn keyword baanBshell wait.and.activate
+syn keyword baanBshell abort
+syn keyword baanBshell kill
+syn keyword baanBshell shell
+syn match baanBshell "\<argv\$"
+syn keyword baanBshell argc
+syn keyword baanBshell get.var
+syn keyword baanBshell put.var
+syn keyword baanBshell get.ref.var
+syn keyword baanBshell put.ref.var
+syn keyword baanBshell get.indexed.var
+syn keyword baanBshell put.indexed.var
+syn keyword baanBshell on.change.check
+syn keyword baanBshell off.change.check
+syn keyword baanBshell changed
+syn keyword baanBshell not.curr
+syn keyword baanBshell handle.report.pool
+syn keyword baanBshell get.symbol
+syn keyword baanBshell suspend
+syn keyword baanBshell set.timer
+syn keyword baanBshell set.alarm
+syn keyword baanBshell kill.timer
+syn keyword baanBshell pstat
+syn keyword baanBshell oipstat
+syn keyword baanBshell obj_in_core
+syn keyword baanBshell renice
+syn keyword baanBshell kill.pgrp
+syn keyword baanBshell set.pgrp
+syn keyword baanBshell get.pgrp
+syn keyword baanBshell grab.mwindow
+syn keyword baanBshell signal
+syn keyword baanBshell ptrace
+syn keyword baanBshell link.on.stack
+syn match baanBshell "\<zoom.to\$"
+syn keyword baanBshell retry.point
+syn keyword baanBshell jump.retry.point
+syn keyword baanBshell retry.level
+syn keyword baanBshell get.bw.hostname
+syn keyword baanBshell exit
+syn match baanBshell "\<dte\$"
+syn keyword baanBshell times.on
+syn keyword baanBshell times.off
+syn keyword baanBshell times.close
+syn keyword baanBshell times.total
+syn keyword baanBshell times.lines
+syn keyword baanBshell date.num
+syn keyword baanBshell time.num
+syn keyword baanBshell date.time.utc
+syn keyword baanBshell utc.to.local
+syn keyword baanBshell local.to.utc
+syn keyword baanBshell input.field
+syn keyword baanBshell output.field
+syn keyword baanBshell key.to.option
+syn keyword baanBshell option.to.key
+syn keyword baanBshell get.choice.data
+syn keyword baanBshell reset.zoom.info
+syn keyword baanBshell next.field
+syn keyword baanBshell print.form
+syn keyword baanBshell set.field.blank
+syn keyword baanBshell read.form
+syn keyword baanBshell read.fast.form
+syn keyword baanBshell change.form.field
+syn keyword baanBshell copy.form.field
+syn keyword baanBshell delete.form.field
+syn keyword baanBshell iget.field.attr
+syn keyword baanBshell sget.field.attr
+syn keyword baanBshell menu.control
+syn keyword baanBshell wait
+syn match baanBshell "\<bms.peek\$"
+syn keyword baanBshell create.menu
+syn keyword baanBshell refresh.bar.menu
+syn keyword baanBshell load.menu
+syn keyword baanBshell current.menu
+syn keyword baanBshell change.menu
+syn keyword baanBshell popup.menu
+syn keyword baanBshell set.menu
+syn keyword baanBshell change.menu.attr
+syn keyword baanBshell destroy.menu
+syn keyword baanBshell create.menu.button
+syn keyword baanBshell create.cascade.button
+syn keyword baanBshell change.menu.item.name
+syn keyword baanBshell change.cascade.menu
+syn keyword baanBshell change.menu.item.attr
+syn keyword baanBshell get.cascade.menu
+syn keyword baanBshell destroy.menu.item
+syn keyword baanBshell form.control
+syn match baanBshell "\<form.text\$"
+syn keyword baanBshell status.on
+syn keyword baanBshell status.off
+syn keyword baanBshell status.mess
+syn keyword baanBshell status.field
+syn match baanBshell "\<enum.descr\$"
+syn keyword baanBshell mark.occurrence
+syn keyword baanBshell start.mark
+syn keyword baanBshell end.mark
+syn keyword baanBshell get.attrs
+syn keyword baanBshell put.attrs
+syn keyword baanBshell act.zoom
+syn keyword baanBshell init.first
+syn keyword baanBshell init.last
+syn keyword baanBshell init.next
+syn keyword baanBshell init.prev
+syn keyword baanBshell set.max
+syn keyword baanBshell set.min
+syn keyword baanBshell set.fmax
+syn keyword baanBshell set.fmin
+syn keyword baanBshell print.const
+syn keyword baanBshell is.option.on
+syn keyword baanBshell brp.build
+syn keyword baanBshell brp.field
+syn keyword baanBshell pathname
+syn keyword baanBshell file.stat
+syn keyword baanBshell file.cp
+syn keyword baanBshell file.mv
+syn keyword baanBshell file.rm
+syn keyword baanBshell file.chown
+syn keyword baanBshell file.chmod
+syn keyword baanBshell stat.info
+syn keyword baanBshell disk.info
+syn keyword baanBshell mkdir
+syn keyword baanBshell rmdir
+syn keyword baanBshell open.message
+syn keyword baanBshell send.message
+syn keyword baanBshell recv.message
+syn keyword baanBshell close.message
+syn keyword baanBshell store.byte
+syn keyword baanBshell store.short
+syn keyword baanBshell store.long
+syn keyword baanBshell store.float
+syn keyword baanBshell store.double
+syn keyword baanBshell load.byte
+syn keyword baanBshell load.short
+syn keyword baanBshell load.long
+syn keyword baanBshell load.float
+syn keyword baanBshell load.double
+syn keyword baanBshell bit.and
+syn keyword baanBshell bit.or
+syn keyword baanBshell bit.exor
+syn keyword baanBshell bit.inv
+syn keyword baanBshell bit.in
+syn keyword baanBshell bit.shiftl
+syn keyword baanBshell bit.shiftr
+syn keyword baanBshell check.domain
+syn keyword baanBshell check.all.domain
+syn keyword baanBshell seq.clearerr
+syn keyword baanBshell seq.eof
+syn keyword baanBshell seq.error
+syn keyword baanBshell seq.open
+syn keyword baanBshell seq.close
+syn keyword baanBshell seq.flush
+syn keyword baanBshell seq.rewind
+syn keyword baanBshell seq.tell
+syn keyword baanBshell seq.read
+syn keyword baanBshell seq.write
+syn match baanBshell "\<seq.getc\$"
+syn match baanBshell "\<seq.putc\$"
+syn match baanBshell "\<seq.ungetc\$"
+syn keyword baanBshell seq.skip
+syn keyword baanBshell seq.seek
+syn keyword baanBshell seq.gets
+syn keyword baanBshell seq.puts
+syn keyword baanBshell seq.unlink
+syn keyword baanBshell seq.spool.line
+syn keyword baanBshell seq.r.long
+syn keyword baanBshell seq.w.long
+syn keyword baanBshell seq.r.short
+syn keyword baanBshell seq.w.short
+syn keyword baanBshell seq.lock
+syn keyword baanBshell seq.unlock
+syn keyword baanBshell seq.islocked
+syn keyword baanBshell pipe.open
+syn keyword baanBshell pipe.close
+syn keyword baanBshell pipe.flush
+syn keyword baanBshell pipe.gets
+syn keyword baanBshell pipe.puts
+syn keyword baanBshell pipe.read
+syn keyword baanBshell pipe.write
+syn keyword baanBshell pipe.clearerr
+syn keyword baanBshell pipe.eof
+syn keyword baanBshell pipe.error
+syn keyword baanBshell sock.connect
+syn keyword baanBshell sock.listen
+syn keyword baanBshell sock.accept
+syn keyword baanBshell sock.recv
+syn keyword baanBshell sock.send
+syn keyword baanBshell sock.flush
+syn keyword baanBshell sock.close
+syn keyword baanBshell sock.inherit
+syn keyword baanBshell sock.clearerr
+syn keyword baanBshell sock.eof
+syn keyword baanBshell sock.error
+syn keyword baanBshell get.system.info
+syn keyword baanBshell get.db.count
+syn keyword baanBshell get.db.system.info
+syn keyword baanBshell path.is.absolute
+syn keyword baanBshell make.path.absolute
+syn keyword baanBshell fstat.info
+syn keyword baanBshell dir.open
+syn keyword baanBshell dir.open.tree
+syn keyword baanBshell dir.close
+syn keyword baanBshell dir.entry
+syn keyword baanBshell dir.rewind
+syn keyword baanBshell ims.clearerr
+syn keyword baanBshell ims.eof
+syn keyword baanBshell ims.error
+syn keyword baanBshell ims.close
+syn keyword baanBshell ims.flush
+syn keyword baanBshell ims.rewind
+syn keyword baanBshell ims.tell
+syn keyword baanBshell ims.read
+syn keyword baanBshell ims.write
+syn match baanBshell "\<ims.getc\$"
+syn match baanBshell "\<ims.putc\$"
+syn keyword baanBshell ims.skip
+syn keyword baanBshell ims.seek
+syn keyword baanBshell ims.gets
+syn keyword baanBshell ims.puts
+syn keyword baanBshell ims.spool.line
+syn keyword baanBshell ims.r.long
+syn keyword baanBshell ims.w.long
+syn keyword baanBshell ims.r.short
+syn keyword baanBshell ims.w.short
+syn keyword baanBshell ims.openfba
+syn keyword baanBshell ims.openvba
+syn keyword baanBshell ims.getproperties
+syn keyword baanBshell ims.setvbaproperties
+syn keyword baanBshell db.get.physical.compnr
+syn keyword baanBshell db.bind
+syn keyword baanBshell db.unbind
+syn keyword baanBshell db.error
+syn keyword baanBshell db.error.message
+syn keyword baanBshell db.detail.error
+syn keyword baanBshell db.first
+syn keyword baanBshell db.last
+syn keyword baanBshell db.next
+syn keyword baanBshell db.prev
+syn keyword baanBshell db.gt
+syn keyword baanBshell db.ge
+syn keyword baanBshell db.eq
+syn keyword baanBshell db.curr
+syn keyword baanBshell db.lt
+syn keyword baanBshell db.le
+syn keyword baanBshell db.delete
+syn keyword baanBshell db.insert
+syn keyword baanBshell db.update
+syn keyword baanBshell db.check.row.changed
+syn keyword baanBshell db.check.row.domains
+syn keyword baanBshell db.check.restricted
+syn keyword baanBshell db.ref.handle.mode
+syn keyword baanBshell db.set.to.default
+syn keyword baanBshell db.create.index
+syn keyword baanBshell db.drop.index
+syn keyword baanBshell db.change.order
+syn keyword baanBshell db.create.table
+syn keyword baanBshell db.clear.table
+syn keyword baanBshell db.drop.table
+syn keyword baanBshell db.lock.table
+syn keyword baanBshell db.table.begin.import
+syn keyword baanBshell db.table.end.import
+syn keyword baanBshell db.table.update.statistics
+syn keyword baanBshell db.indexinfo
+syn keyword baanBshell db.nr.indices
+syn keyword baanBshell db.nr.rows
+syn keyword baanBshell db.row.length
+syn keyword baanBshell db.transaction.is.on
+syn keyword baanBshell commit.transaction
+syn keyword baanBshell set.transaction.readonly
+syn keyword baanBshell abort.transaction
+syn keyword baanBshell db.record.to.columns
+syn keyword baanBshell db.columns.to.record
+syn keyword baanBshell db.schedule
+syn keyword baanBshell db.permission
+syn keyword baanBshell db.set.notransaction
+syn keyword baanBshell db.set.transaction
+syn keyword baanBshell db.set.child.transaction
+syn keyword baanBshell get.db.permission
+syn keyword baanBshell get.session.permission
+syn keyword baanBshell ams.control
+syn keyword baanBshell db.get.old.row
+syn keyword baanBshell db.max.retry
+syn keyword baanBshell sql.parse
+syn keyword baanBshell sql.select.bind
+syn keyword baanBshell sql.where.bind
+syn keyword baanBshell sql.bind.input
+syn keyword baanBshell sql.exec
+syn keyword baanBshell sql.fetch
+syn keyword baanBshell sql.break
+syn keyword baanBshell sql.close
+syn keyword baanBshell sql.error
+syn keyword baanBshell sql.set.rds.full
+syn keyword baanBshell rdi.table
+syn keyword baanBshell rdi.index
+syn keyword baanBshell rdi.column
+syn keyword baanBshell rdi.table.column
+syn keyword baanBshell rdi.reference
+syn keyword baanBshell rdi.column.combined
+syn keyword baanBshell rdi.domain
+syn keyword baanBshell rdi.domain.long
+syn keyword baanBshell rdi.domain.double
+syn keyword baanBshell rdi.domain.string
+syn keyword baanBshell rdi.domain.raw
+syn keyword baanBshell rdi.domain.enum
+syn keyword baanBshell rdi.domain.enum.value
+syn keyword baanBshell rdi.domain.combined
+syn keyword baanBshell rdi.session.info
+syn keyword baanBshell rdi.session.dlls
+syn keyword baanBshell rdi.ref.route
+syn keyword baanBshell rdi.session.subject.info
+syn keyword baanBshell rdi.session.subject
+syn keyword baanBshell rdi.session.key
+syn keyword baanBshell rdi.session.form
+syn keyword baanBshell rdi.session.textfield
+syn keyword baanBshell rdi.first.day.of.week
+syn match baanBshell "\<rdi.date.input.format\$"
+syn keyword baanBshell rdi.format.digits
+syn keyword baanBshell rdi.permission
+syn keyword baanBshell rdi.option.info
+syn keyword baanBshell rdi.option.short
+syn keyword baanBshell rdi.vrc.path
+syn keyword baanBshell rdi.audit.hosts
+syn keyword baanBshell rdi.table.sequence
+syn keyword baanBshell iget.fld.attr
+syn keyword baanBshell sget.fld.attr
+syn keyword baanBshell iget.frm.attr
+syn keyword baanBshell sget.frm.attr
+syn keyword baanBshell iput.fld.attr
+syn keyword baanBshell sput.fld.attr
+syn keyword baanBshell iput.frm.attr
+syn keyword baanBshell put.var.to.field
+syn keyword baanBshell get.var.from.field
+syn match baanBshell "\<rdi.etoc\$"
+syn keyword baanBshell rdi.ctoe
+syn keyword baanBshell get.cust.code
+syn keyword baanBshell get.lic.no
+syn keyword baanBshell get.cust.name
+syn keyword baanBshell get.mach.id
+syn keyword baanBshell fsum
+syn match baanBshell "\<get.resource\$"
+syn keyword baanBshell qss.sort
+syn keyword baanBshell qss.search
+syn keyword baanBshell load_dll
+syn keyword baanBshell exec_dll_function
+syn keyword baanBshell get_function
+syn keyword baanBshell exec_function
+syn keyword baanBshell parse_and_exec_function
+syn keyword baanBshell pty.open
+syn keyword baanBshell pty.close
+syn keyword baanBshell pty.read
+syn keyword baanBshell pty.write
+syn keyword baanBshell pty.winsize
+syn keyword baanBshell pty.winsize.ok
+syn keyword baanBshell pty.ok
+syn keyword baanBshell user.exists
+syn keyword baanBshell group.exists
+syn keyword baanBshell is.administrator
+syn keyword baanBshell mtime
+syn keyword baanBshell getcwd
+syn keyword baanBshell set.strip.mode
+syn keyword baanBshell set.symbol.strip.mode
+syn keyword baanBshell nullify.symbol
+syn keyword baanBshell bshell.pid
+syn keyword baanBshell create.new.symbol
+syn keyword baanBshell push.by.name
+syn keyword baanBshell array.info
+syn keyword baanBshell array.to.string
+syn keyword baanBshell many.to.string
+syn keyword baanBshell ostype
+syn keyword baanBshell utc.num
+syn keyword baanBshell set.time.zone
+syn keyword baanBshell get.time.zone
+syn keyword baanBshell run.prog
+syn keyword baanBshell run.baan.prog
+syn keyword baanBshell get.status.text
+syn keyword baanBshell dir.is.available
+syn keyword baanBshell dir.set.server
+syn keyword baanBshell dir.get.last.error
+syn keyword baanBshell dir.init.object
+syn keyword baanBshell dir.free.object
+syn keyword baanBshell dir.clear.object
+syn keyword baanBshell dir.create.object
+syn keyword baanBshell dir.get.object
+syn keyword baanBshell dir.remove.object
+syn keyword baanBshell dir.update.object
+syn keyword baanBshell dir.init.search
+syn keyword baanBshell dir.free.search
+syn keyword baanBshell dir.execute.search
+syn keyword baanBshell dir.abandon.search
+syn keyword baanBshell dir.get.first.row
+syn keyword baanBshell dir.get.next.row
+syn keyword baanBshell dir.get.prev.row
+syn keyword baanBshell dir.get.element.count
+syn keyword baanBshell dir.get.element.name
+syn keyword baanBshell dir.get.element.type
+syn keyword baanBshell dir.get.value.count
+syn keyword baanBshell dir.add.element
+syn keyword baanBshell dir.add.element.int
+syn keyword baanBshell dir.add.element.str
+syn keyword baanBshell dir.add.element.time
+syn keyword baanBshell dir.get.value.int
+syn keyword baanBshell dir.get.value.str
+syn keyword baanBshell dir.get.value.time
+syn keyword baanBshell dir.get.value.named.str
+syn keyword baanBshell dir.set.value.int
+syn keyword baanBshell dir.set.value.str
+syn keyword baanBshell dir.set.value.time
+syn keyword baanBshell dir.set.value.named.str
+syn keyword baanBshell dir.remove.element
+syn keyword baanBshell dir.find.element
+syn keyword baanBshell utc.add
+syn keyword baanBshell type.define
+syn keyword baanBshell type.free
+syn keyword baanBshell type.get.fieldnumber
+syn keyword baanBshell container.create
+syn keyword baanBshell container.clear
+syn keyword baanBshell container.resize
+syn keyword baanBshell container.set.nfields
+syn keyword baanBshell container.set.ifields
+syn keyword baanBshell container.set.fields
+syn keyword baanBshell container.get.nfields
+syn keyword baanBshell container.get.ifields
+syn keyword baanBshell container.get.fields
+syn keyword baanBshell container.actual.size
+syn keyword baanBshell container.get.actual.size
+syn keyword baanBshell container.set.actual.size
+syn keyword baanBshell container.size
+syn keyword baanBshell container.free
+syn keyword baanBshell xma.process_next_event
+syn keyword baanBshell xma.init_instance
+syn keyword baanBshell fini.service
+syn keyword baanBshell corba.boa.process_next_event
+syn keyword baanBshell corba.boa.set_impl
+syn keyword baanBshell corba.available
+syn keyword baanBshell corba.orb.string_to_object
+syn keyword baanBshell corba.orb.release
+syn keyword baanBshell corba.request.invoke
+syn keyword baanBshell corba.request.send
+syn keyword baanBshell corba.request.get_response
+syn keyword baanBshell corba.request.object
+syn keyword baanBshell corba.request.delete
+syn keyword baanBshell set.debug.cpu.opts
+syn keyword baanBshell get.debug.cpu.opts
+syn match baanBshell "\<bsh.mesg\$"
+syn keyword baanBshell toggle.cpu
+syn keyword baanBshell cpu.is.debug
+syn keyword baanBshell set.profprint
+syn keyword baanBshell art.init
+syn keyword baanBshell art.define.transaction.class
+syn keyword baanBshell art.begin.transaction
+syn keyword baanBshell art.update.transaction
+syn keyword baanBshell art.end.transaction
+syn keyword baanBshell java.new.queue
+syn keyword baanBshell java.destroy.queue
+syn keyword baanBshell java.install.listener
+syn keyword baanBshell java.uninstall.listener
+syn keyword baanBshell java.put.bucket
+syn keyword baanBshell java.get.bucket
+syn keyword baanBshell java.lookup.queue
+syn keyword baanBshell java.execute.static.method
+syn keyword baanBshell java.execute.static.method.sync
+syn keyword baanBshell java.execute.static.method.async
+syn keyword baanBshell xml.write
+syn keyword baanBshell xml.read
+syn keyword baanBshell xml.newnode
+syn keyword baanBshell xml.unlinknode
+syn keyword baanBshell xml.deletenode
+syn keyword baanBshell xml.appendchildnode
+syn keyword baanBshell xml.addnode
+syn keyword baanBshell xml.insertnode
+syn keyword baanBshell xml.duplicatenode
+syn keyword baanBshell xml.setnodeproperties
+syn keyword baanBshell xml.getnodeproperties
+syn keyword baanBshell xml.deletenodeproperties
+syn keyword baanBshell xml.findfirstnode
+syn keyword baanBshell xml.findnodes
+syn keyword baanBshell xml.findsetofsiblingnodes
+syn keyword baanBshell xmlcontainsvalidcharactersonly
+syn keyword baanBshell xmlwrite
+syn keyword baanBshell xmlwritepretty
+syn keyword baanBshell xmlwritetostring
+syn keyword baanBshell xmlwriteprettytostring
+syn keyword baanBshell xmlread
+syn keyword baanBshell xmlreadfromstring
+syn keyword baanBshell xmlnewnode
+syn keyword baanBshell xmlnewdataelement
+syn keyword baanBshell xmlrewritedataelement
+syn keyword baanBshell xmlgetdataelement
+syn keyword baanBshell xmlsetname
+syn keyword baanBshell xmlsetdata
+syn keyword baanBshell xmlsetattribute
+syn keyword baanBshell xmldeleteattribute
+syn keyword baanBshell xmlgetname
+syn keyword baanBshell xmlgetdata
+syn keyword baanBshell xmlgettype
+syn keyword baanBshell xmlgetparent
+syn keyword baanBshell xmlgetfirstchild
+syn keyword baanBshell xmlgetlastchild
+syn keyword baanBshell xmlgetrightsibling
+syn keyword baanBshell xmlgetleftsibling
+syn keyword baanBshell xmlgetnumattributes
+syn keyword baanBshell xmlgetnumsiblings
+syn keyword baanBshell xmlgetnumleftsiblings
+syn keyword baanBshell xmlgetnumrightsiblings
+syn keyword baanBshell xmlgetnumchilds
+syn keyword baanBshell xmlgetattribute
+syn keyword baanBshell xmlgetattributename
+syn keyword baanBshell xmldelete
+syn keyword baanBshell xmlunlink
+syn keyword baanBshell xmlinsert
+syn keyword baanBshell xmladd
+syn keyword baanBshell xmlappend
+syn keyword baanBshell xmlinsertinchilds
+syn keyword baanBshell xmlappendtochilds
+syn keyword baanBshell xmlduplicate
+syn keyword baanBshell xmlduplicateandinsert
+syn keyword baanBshell xmlduplicateandadd
+syn keyword baanBshell xmlduplicateandappend
+syn keyword baanBshell xmlduplicateandinsertinchilds
+syn keyword baanBshell xmlduplicateandappendtochilds
+syn keyword baanBshell xmlduplicatetoprocess
+syn keyword baanBshell xmlfindfirst
+syn keyword baanBshell xmlfindfirstmatch
+syn keyword baanBshell xmlfindmatch
+syn keyword baanBshell xmlfindnodes
+syn keyword baanBshell xmlfindsetofsiblingnodes
+syn keyword baanBshell xmlexecutesql
+syn keyword baanBshell xmlexecutedllmethod
+syn keyword baanBshell xmldllsignature
+syn keyword baanBshell xmlnodetosymbol
+syn keyword baanBshell xmlputstringtolog
+syn keyword baanBshell xmlgetlog
+syn keyword baanBshell xmlcleanuplog
+syn keyword baanBshell xmlinstallloglistener
+syn keyword baanBshell xmldeinstallloglistener
+syn keyword baanBshell xmlinitsql
+syn keyword baanBshell xmlrefreshsqlcache
+syn keyword baanBshell xmlstatisticssqlcache
+syn keyword baanBshell bclm.dump
+syn keyword baanBshell bclm.init
+syn keyword baanBshell bclm.requestlicense
+syn keyword baanBshell bclm.confirmlicense
+syn keyword baanBshell bclm.releaselicense
+syn keyword baanBshell bclm.customerdata
+syn keyword baanBshell bclm.enabledemoperiod
+syn keyword baanBshell bclm.productidlicensed
+syn keyword baanBshell bclm.set.desktop
" 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_baan_syn_inits")
if version < 508
- let did_c_syn_inits = 1
+ let did_baan_syn_inits = 1
command -nargs=+ HiLink hi link <args>
else
command -nargs=+ HiLink hi def link <args>
@@ -229,15 +1906,25 @@ if version >= 508 || !exists("did_baan_syn_inits")
HiLink baanConditional Conditional
HiLink baan3gl Statement
+ HiLink baan3glpre PreProc
HiLink baan4gl Statement
HiLink baan4glh Statement
HiLink baansql Statement
HiLink baansqlh Statement
+ HiLink baanDalHook Statement
HiLink baanNumber Number
HiLink baanString String
+ HiLink baanOpenStringError Error
+ HiLink baanConstant Constant
HiLink baanComment Comment
HiLink baanCommenth Comment
HiLink baanUncommented Comment
+ HiLink baanDLLUsage Comment
+ HiLink baanFunUsage Comment
+ HiLink baanIdentifier Normal
+ HiLink baanBshell Function
+ HiLink baanType Type
+ HiLink baanStorageClass StorageClass
delcommand HiLink
endif
diff --git a/runtime/syntax/smcl.vim b/runtime/syntax/smcl.vim
index e95cecbda..d9afba6de 100644
--- a/runtime/syntax/smcl.vim
+++ b/runtime/syntax/smcl.vim
@@ -1,14 +1,14 @@
-" stata_smcl.vim -- Vim syntax file for smcl files.
+" smcl.vim -- Vim syntax file for smcl files.
" Language: SMCL -- Stata Markup and Control Language
" Maintainer: Jeff Pitblado <jpitblado@stata.com>
-" Last Change: 14apr2006
-" Version: 1.1.1
-" Location: http://www.stata.com/users/jpitblado/files/vimfiles/syntax/stata_smcl.vim
+" Last Change: 26apr2006
+" Version: 1.1.2
" Log:
" 20mar2003 updated the match definition for cmdab
" 14apr2006 'syntax clear' only under version control
" check for 'b:current_syntax', removed 'did_smcl_syntax_inits'
+" 26apr2006 changed 'stata_smcl' to 'smcl'
if version < 600
syntax clear
@@ -303,6 +303,6 @@ hi def link smclLink Underlined
hi def link smclComment Comment
hi def link smclString String
-let b:current_syntax = "stata_smcl"
+let b:current_syntax = "smcl"
" vim: ts=8
diff --git a/runtime/syntax/stata.vim b/runtime/syntax/stata.vim
index 500560952..e1f19c84f 100644
--- a/runtime/syntax/stata.vim
+++ b/runtime/syntax/stata.vim
@@ -1,14 +1,16 @@
" stata.vim -- Vim syntax file for Stata do, ado, and class files.
" Language: Stata and/or Mata
" Maintainer: Jeff Pitblado <jpitblado@stata.com>
-" Last Change: 17apr2006
-" Version: 1.1.2
-" Location: http://www.stata.com/users/jpitblado/files/vimfiles/syntax/stata.vim
+" Last Change: 26apr2006
+" Version: 1.1.4
" Log:
" 14apr2006 renamed syntax groups st* to stata*
" 'syntax clear' only under version control
" check for 'b:current_syntax', removed 'did_stata_syntax_inits'
+" 17apr2006 fixed start expression for stataFunc
+" 26apr2006 fixed brace confusion in stataErrInParen and stataErrInBracket
+" fixed paren/bracket confusion in stataFuncGroup
if version < 600
syntax clear
@@ -182,7 +184,7 @@ syn region stataEString matchgroup=Nothing start=/`"/ end=/"'/ oneline contains=
syn region stataString matchgroup=Nothing start=/"/ end=/"/ oneline contains=@stataMacroGroup
" define clusters
-syn cluster stataFuncGroup contains=@stataMacroGroup,stataFunc,stataString,stataEstring
+syn cluster stataFuncGroup contains=@stataMacroGroup,stataFunc,stataString,stataEstring,stataParen,stataBracket
syn cluster stataMacroGroup contains=stataGlobal,stataLocal
syn cluster stataParenGroup contains=stataParenError,stataBracketError,stataBraceError,stataSpecial,stataFormat
@@ -410,14 +412,14 @@ syn region stataFunc matchgroup=Function start=/\<vecdiag(/ end=/)/ contains=@st
" Errors to catch
" taken from $VIMRUNTIME/syntax/c.vim
" catch errors caused by wrong parenthesis, braces and brackets
-syn region stataParen transparent start=/(/ end=/)/ contains=ALLBUT,@stataParenGroup,stataErrInBracket,stataErrInBrace
+syn region stataParen transparent start=/(/ end=/)/ contains=ALLBUT,@stataParenGroup,stataErrInBracket,stataErrInBrace
syn region stataBracket transparent start=/\[/ end=/]/ contains=ALLBUT,@stataParenGroup,stataErrInParen,stataErrInBrace
-syn region stataBrace transparent start=/{/ end=/}/ contains=ALLBUT,@stataParenGroup,stataErrInParen,stataErrInBracket
+syn region stataBrace transparent start=/{/ end=/}/ contains=ALLBUT,@stataParenGroup,stataErrInParen,stataErrInBracket
syn match stataParenError /[\])}]/
syn match stataBracketError /]/
syn match stataBraceError /}/
-syn match stataErrInParen contained /[\]{}]/
-syn match stataErrInBracket contained /[){}]/
+syn match stataErrInParen contained /[\]}]/
+syn match stataErrInBracket contained /[)}]/
syn match stataErrInBrace contained /[)\]]/
" assign highlight groups
diff --git a/runtime/syntax/vim.vim b/runtime/syntax/vim.vim
index fcc8f7212..da3e7575c 100644
--- a/runtime/syntax/vim.vim
+++ b/runtime/syntax/vim.vim
@@ -1,8 +1,8 @@
" Vim syntax file
" Language: Vim 7.0 script
" Maintainer: Dr. Charles E. Campbell, Jr. <NdrOchipS@PcampbellAfamily.Mbiz>
-" Last Change: April 25, 2006
-" Version: 7.0-46
+" Last Change: Apr 26, 2006
+" Version: 7.0-47
" Automatically generated keyword lists: {{{1
" Quit when a syntax file was already loaded {{{2
@@ -20,7 +20,7 @@ syn keyword vimCommand contained ab[breviate] abc[lear] abo[veleft] al[l] arga[d
syn match vimCommand contained "\<z[-+^.=]"
" vimOptions are caught only when contained in a vimSet {{{2
-syn keyword vimOption contained : acd ai akm al aleph allowrevins altkeymap ambiwidth ambw anti antialias ar arab arabic arabicshape ari arshape autochdir autoindent autoread autowrite autowriteall aw awa background backspace backup backupcopy backupdir backupext backupskip balloondelay ballooneval balloonexpr bdir bdlay beval bex bexpr bg bh bin binary biosk bioskey bk bkc bl bomb breakat brk browsedir bs bsdir bsk bt bufhidden buflisted buftype casemap cb ccv cd cdpath cedit cf cfu ch charconvert ci cin cindent cink cinkeys cino cinoptions cinw cinwords clipboard cmdheight cmdwinheight cmp cms co columns com comments commentstring compatible complete completefunc completeopt confirm consk conskey copyindent cot cp cpo cpoptions cpt cscopepathcomp cscopeprg cscopequickfix cscopetag cscopetagorder cscopeverbose cspc csprg csqf cst csto csverb cuc cul cursorcolumn cursorline cwh debug deco def define delcombine dex dg dict dictionary diff diffexpr diffopt digraph dip dir directory display dy ea ead eadirection eb ed edcompatible ef efm ei ek enc encoding endofline eol ep equalalways equalprg errorbells errorfile errorformat esckeys et eventignore ex expandtab exrc fcl fcs fdc fde fdi fdl fdls fdm fdn fdo fdt fen fenc fencs fex ff ffs fileencoding fileencodings fileformat fileformats filetype fillchars fk fkmap flp fml fmr fo foldclose foldcolumn foldenable foldexpr foldignore foldlevel foldlevelstart foldmarker foldmethod foldminlines foldnestmax foldopen foldtext formatexpr formatlistpat formatoptions formatprg fp fs fsync ft gcr gd gdefault gfm gfn gfs gfw ghr go gp grepformat grepprg gtl gtt guicursor guifont guifontset guifontwide guiheadroom guioptions guipty guitablabel guitabtooltip helpfile helpheight helplang hf hh hi hid hidden highlight history hk hkmap hkmapp hkp hl hlg hls hlsearch ic icon iconstring ignorecase im imactivatekey imak imc imcmdline imd imdisable imi iminsert ims imsearch inc include includeexpr incsearch inde indentexpr indentkeys indk inex inf infercase insertmode is isf isfname isi isident isk iskeyword isp isprint joinspaces js key keymap keymodel keywordprg km kmp kp langmap langmenu laststatus lazyredraw lbr lcs linebreak lines linespace lisp lispwords list listchars lm lmap loadplugins lpl ls lsp lw lz ma macatsui magic makeef makeprg mat matchpairs matchtime maxcombine maxfuncdepth maxmapdepth maxmem maxmempattern maxmemtot mco mef menuitems mfd mh mis mkspellmem ml mls mm mmd mmp mmt mod modeline modelines modifiable modified more mouse mousef mousefocus mousehide mousem mousemodel mouses mouseshape mouset mousetime mp mps msm mzq mzquantum nf nrformats nu number numberwidth nuw oft ofu omnifunc operatorfunc opfunc osfiletype pa para paragraphs paste pastetoggle patchexpr patchmode path pdev penc pex pexpr pfn ph pheader pi pm pmbcs pmbfn popt preserveindent previewheight previewwindow printdevice printencoding printexpr printfont printheader printmbcharset printmbfont printoptions prompt pt pumheight pvh pvw qe quoteescape readonly remap report restorescreen revins ri rightleft rightleftcmd rl rlc ro rs rtp ru ruf ruler rulerformat runtimepath sb sbo sbr sc scb scr scroll scrollbind scrolljump scrolloff scrollopt scs sect sections secure sel selection selectmode sessionoptions sft sh shcf shell shellcmdflag shellpipe shellquote shellredir shellslash shelltemp shelltype shellxquote shiftround shiftwidth shm shortmess shortname showbreak showcmd showfulltag showmatch showmode showtabline shq si sidescroll sidescrolloff siso sj slm sm smartcase smartindent smarttab smc smd sn so softtabstop sol sp spc spell spellcapcheck spellfile spelllang spellsuggest spf spl splitbelow splitright spr sps sr srr ss ssl ssop st sta stal startofline statusline stl stmp sts su sua suffixes suffixesadd sw swapfile swapsync swb swf switchbuf sws sxq syn synmaxcol syntax ta tabline tabpagemax tabstop tag tagbsearch taglength tagrelative tags tagstack tal tb tbi tbidi tbis tbs tenc term termbidi termencoding terse textauto textmode textwidth tf tgst thesaurus tildeop timeout timeoutlen title titlelen titleold titlestring tl tm to toolbar toolbariconsize top tpm tr ts tsl tsr ttimeout ttimeoutlen ttm tty ttybuiltin ttyfast ttym ttymouse ttyscroll ttytype tw tx uc ul undolevels updatecount updatetime ut vb vbs vdir ve verbose verbosefile vfile vi viewdir viewoptions viminfo virtualedit visualbell vop wa wak warn wb wc wcm wd weirdinvert wfh wfw wh whichwrap wi wig wildchar wildcharm wildignore wildmenu wildmode wildoptions wim winaltkeys window winfixheight winfixwidth winheight winminheight winminwidth winwidth wiv wiw wm wmh wmnu wmw wop wrap wrapmargin wrapscan write writeany writebackup writedelay ws ww
+syn keyword vimOption contained acd ai akm al aleph allowrevins altkeymap ambiwidth ambw anti antialias ar arab arabic arabicshape ari arshape autochdir autoindent autoread autowrite autowriteall aw awa background backspace backup backupcopy backupdir backupext backupskip balloondelay ballooneval balloonexpr bdir bdlay beval bex bexpr bg bh bin binary biosk bioskey bk bkc bl bomb breakat brk browsedir bs bsdir bsk bt bufhidden buflisted buftype casemap cb ccv cd cdpath cedit cf cfu ch charconvert ci cin cindent cink cinkeys cino cinoptions cinw cinwords clipboard cmdheight cmdwinheight cmp cms co columns com comments commentstring compatible complete completefunc completeopt confirm consk conskey copyindent cot cp cpo cpoptions cpt cscopepathcomp cscopeprg cscopequickfix cscopetag cscopetagorder cscopeverbose cspc csprg csqf cst csto csverb cuc cul cursorcolumn cursorline cwh debug deco def define delcombine dex dg dict dictionary diff diffexpr diffopt digraph dip dir directory display dy ea ead eadirection eb ed edcompatible ef efm ei ek enc encoding endofline eol ep equalalways equalprg errorbells errorfile errorformat esckeys et eventignore ex expandtab exrc fcl fcs fdc fde fdi fdl fdls fdm fdn fdo fdt fen fenc fencs fex ff ffs fileencoding fileencodings fileformat fileformats filetype fillchars fk fkmap flp fml fmr fo foldclose foldcolumn foldenable foldexpr foldignore foldlevel foldlevelstart foldmarker foldmethod foldminlines foldnestmax foldopen foldtext formatexpr formatlistpat formatoptions formatprg fp fs fsync ft gcr gd gdefault gfm gfn gfs gfw ghr go gp grepformat grepprg gtl gtt guicursor guifont guifontset guifontwide guiheadroom guioptions guipty guitablabel guitabtooltip helpfile helpheight helplang hf hh hi hid hidden highlight history hk hkmap hkmapp hkp hl hlg hls hlsearch ic icon iconstring ignorecase im imactivatekey imak imc imcmdline imd imdisable imi iminsert ims imsearch inc include includeexpr incsearch inde indentexpr indentkeys indk inex inf infercase insertmode is isf isfname isi isident isk iskeyword isp isprint joinspaces js key keymap keymodel keywordprg km kmp kp langmap langmenu laststatus lazyredraw lbr lcs linebreak lines linespace lisp lispwords list listchars lm lmap loadplugins lpl ls lsp lw lz ma macatsui magic makeef makeprg mat matchpairs matchtime maxcombine maxfuncdepth maxmapdepth maxmem maxmempattern maxmemtot mco mef menuitems mfd mh mis mkspellmem ml mls mm mmd mmp mmt mod modeline modelines modifiable modified more mouse mousef mousefocus mousehide mousem mousemodel mouses mouseshape mouset mousetime mp mps msm mzq mzquantum nf nrformats nu number numberwidth nuw oft ofu omnifunc operatorfunc opfunc osfiletype pa para paragraphs paste pastetoggle patchexpr patchmode path pdev penc pex pexpr pfn ph pheader pi pm pmbcs pmbfn popt preserveindent previewheight previewwindow printdevice printencoding printexpr printfont printheader printmbcharset printmbfont printoptions prompt pt pumheight pvh pvw qe quoteescape readonly remap report restorescreen revins ri rightleft rightleftcmd rl rlc ro rs rtp ru ruf ruler rulerformat runtimepath sb sbo sbr sc scb scr scroll scrollbind scrolljump scrolloff scrollopt scs sect sections secure sel selection selectmode sessionoptions sft sh shcf shell shellcmdflag shellpipe shellquote shellredir shellslash shelltemp shelltype shellxquote shiftround shiftwidth shm shortmess shortname showbreak showcmd showfulltag showmatch showmode showtabline shq si sidescroll sidescrolloff siso sj slm sm smartcase smartindent smarttab smc smd sn so softtabstop sol sp spc spell spellcapcheck spellfile spelllang spellsuggest spf spl splitbelow splitright spr sps sr srr ss ssl ssop st sta stal startofline statusline stl stmp sts su sua suffixes suffixesadd sw swapfile swapsync swb swf switchbuf sws sxq syn synmaxcol syntax ta tabline tabpagemax tabstop tag tagbsearch taglength tagrelative tags tagstack tal tb tbi tbidi tbis tbs tenc term termbidi termencoding terse textauto textmode textwidth tf tgst thesaurus tildeop timeout timeoutlen title titlelen titleold titlestring tl tm to toolbar toolbariconsize top tpm tr ts tsl tsr ttimeout ttimeoutlen ttm tty ttybuiltin ttyfast ttym ttymouse ttyscroll ttytype tw tx uc ul undolevels updatecount updatetime ut vb vbs vdir ve verbose verbosefile vfile vi viewdir viewoptions viminfo virtualedit visualbell vop wa wak warn wb wc wcm wd weirdinvert wfh wfw wh whichwrap wi wig wildchar wildcharm wildignore wildmenu wildmode wildoptions wim winaltkeys window winfixheight winfixwidth winheight winminheight winminwidth winwidth wiv wiw wm wmh wmnu wmw wop wrap wrapmargin wrapscan write writeany writebackup writedelay ws ww
" vimOptions: These are the turn-off setting variants {{{2
syn keyword vimOption contained noacd noai noakm noallowrevins noaltkeymap noanti noantialias noar noarab noarabic noarabicshape noari noarshape noautochdir noautoindent noautoread noautowrite noautowriteall noaw noawa nobackup noballooneval nobeval nobin nobinary nobiosk nobioskey nobk nobl nobomb nobuflisted nocf noci nocin nocindent nocompatible noconfirm noconsk noconskey nocopyindent nocp nocscopetag nocscopeverbose nocst nocsverb nocuc nocul nocursorcolumn nocursorline nodeco nodelcombine nodg nodiff nodigraph nodisable noea noeb noed noedcompatible noek noendofline noeol noequalalways noerrorbells noesckeys noet noex noexpandtab noexrc nofen nofk nofkmap nofoldenable nogd nogdefault noguipty nohid nohidden nohk nohkmap nohkmapp nohkp nohls nohlsearch noic noicon noignorecase noim noimc noimcmdline noimd noincsearch noinf noinfercase noinsertmode nois nojoinspaces nojs nolazyredraw nolbr nolinebreak nolisp nolist noloadplugins nolpl nolz noma nomacatsui nomagic nomh noml nomod nomodeline nomodifiable nomodified nomore nomousef nomousefocus nomousehide nonu nonumber nopaste nopi nopreserveindent nopreviewwindow noprompt nopvw noreadonly noremap norestorescreen norevins nori norightleft norightleftcmd norl norlc noro nors noru noruler nosb nosc noscb noscrollbind noscs nosecure nosft noshellslash noshelltemp noshiftround noshortname noshowcmd noshowfulltag noshowmatch noshowmode nosi nosm nosmartcase nosmartindent nosmarttab nosmd nosn nosol nospell nosplitbelow nosplitright nospr nosr nossl nosta nostartofline nostmp noswapfile noswf nota notagbsearch notagrelative notagstack notbi notbidi notbs notermbidi noterse notextauto notextmode notf notgst notildeop notimeout notitle noto notop notr nottimeout nottybuiltin nottyfast notx novb novisualbell nowa nowarn nowb noweirdinvert nowfh nowfw nowildmenu nowinfixheight nowinfixwidth nowiv nowmnu nowrap nowrapscan nowrite nowriteany nowritebackup nows
@@ -163,7 +163,7 @@ syn case ignore
syn keyword vimUserAttrbKey contained bar ban[g] cou[nt] ra[nge] com[plete] n[args] re[gister]
syn keyword vimUserAttrbCmplt contained augroup buffer command dir environment event expression file function help highlight mapping menu option something tag tag_listfiles var
syn keyword vimUserAttrbCmplt contained custom customlist nextgroup=vimUserAttrbCmpltFunc,vimUserCmdError
-syn match vimUserAttrbCmpltFunc contained ",\%(\h\w*#\u\w*\|\u\w*\)"hs=s+1 nextgroup=vimUserCmdError
+syn match vimUserAttrbCmpltFunc contained ",\%(\h\w*\%(#\u\w*\)\+\|\u\w*\)"hs=s+1 nextgroup=vimUserCmdError
syn case match
syn match vimUserAttrbCmplt contained "custom,\u\w*"