1
0
forked from aniani/vim

Update runtime files

This commit is contained in:
Bram Moolenaar 2022-01-31 15:40:56 +00:00
parent 424bcae1fb
commit c4573eb12d
11 changed files with 98 additions and 69 deletions

View File

@ -4,13 +4,13 @@ vim9script noclear
# Language: C # Language: C
# Maintainer: Bram Moolenaar <Bram@vim.org> # Maintainer: Bram Moolenaar <Bram@vim.org>
# Rewritten in Vim9 script by github user lacygoill # Rewritten in Vim9 script by github user lacygoill
# Last Change: 2021 Dec 27 # Last Change: 2022 Jan 31
var prepended: string var prepended: string
var grepCache: dict<list<dict<any>>> var grepCache: dict<list<dict<any>>>
# This function is used for the 'omnifunc' option. # This function is used for the 'omnifunc' option.
def ccomplete#Complete(findstart: bool, abase: string): any # {{{1 export def Complete(findstart: bool, abase: string): any # {{{1
if findstart if findstart
# Locate the start of the item, including ".", "->" and "[...]". # Locate the start of the item, including ".", "->" and "[...]".
var line: string = getline('.') var line: string = getline('.')
@ -202,7 +202,7 @@ def ccomplete#Complete(findstart: bool, abase: string): any # {{{1
|| !v['static'] || !v['static']
|| bufnr('%') == bufnr(v['filename'])) || bufnr('%') == bufnr(v['filename']))
res = extendnew(res, tags->map((_, v: dict<any>) => Tag2item(v))) res = res->extend(tags->map((_, v: dict<any>) => Tag2item(v)))
endif endif
if len(res) == 0 if len(res) == 0
@ -216,9 +216,9 @@ def ccomplete#Complete(findstart: bool, abase: string): any # {{{1
for i: number in len(diclist)->range() for i: number in len(diclist)->range()
# New ctags has the "typeref" field. Patched version has "typename". # New ctags has the "typeref" field. Patched version has "typename".
if diclist[i]->has_key('typename') if diclist[i]->has_key('typename')
res = extendnew(res, diclist[i]['typename']->StructMembers(items[1 :], true)) res = res->extend(diclist[i]['typename']->StructMembers(items[1 :], true))
elseif diclist[i]->has_key('typeref') elseif diclist[i]->has_key('typeref')
res = extendnew(res, diclist[i]['typeref']->StructMembers(items[1 :], true)) res = res->extend(diclist[i]['typeref']->StructMembers(items[1 :], true))
endif endif
# For a variable use the command, which must be a search pattern that # For a variable use the command, which must be a search pattern that
@ -227,7 +227,7 @@ def ccomplete#Complete(findstart: bool, abase: string): any # {{{1
var line: string = diclist[i]['cmd'] var line: string = diclist[i]['cmd']
if line[: 1] == '/^' if line[: 1] == '/^'
var col: number = line->charidx(match(line, '\<' .. items[0] .. '\>')) var col: number = line->charidx(match(line, '\<' .. items[0] .. '\>'))
res = extendnew(res, line[2 : col - 1]->Nextitem(items[1 :], 0, true)) res = res->extend(line[2 : col - 1]->Nextitem(items[1 :], 0, true))
endif endif
endif endif
endfor endfor
@ -259,8 +259,7 @@ def GetAddition( # {{{1
line: string, line: string,
match: string, match: string,
memarg: list<dict<any>>, memarg: list<dict<any>>,
bracket: bool bracket: bool): string
): string
# Guess if the item is an array. # Guess if the item is an array.
if bracket && match(line, match .. '\s*\[') > 0 if bracket && match(line, match .. '\s*\[') > 0
return '[' return '['
@ -405,8 +404,7 @@ enddef
def Tagcmd2extra( # {{{1 def Tagcmd2extra( # {{{1
cmd: string, cmd: string,
name: string, name: string,
fname: string fname: string): string
): string
# Turn a command from a tag line to something that is useful in the menu # Turn a command from a tag line to something that is useful in the menu
var x: string var x: string
if cmd =~ '^/^' if cmd =~ '^/^'
@ -430,8 +428,7 @@ def Nextitem( # {{{1
lead: string, lead: string,
items: list<string>, items: list<string>,
depth: number, depth: number,
all: bool all: bool): list<dict<string>>
): list<dict<string>>
# Find composing type in "lead" and match items[0] with it. # Find composing type in "lead" and match items[0] with it.
# Repeat this recursively for items[1], if it's there. # Repeat this recursively for items[1], if it's there.
# When resolving typedefs "depth" is used to avoid infinite recursion. # When resolving typedefs "depth" is used to avoid infinite recursion.
@ -473,11 +470,11 @@ def Nextitem( # {{{1
# New ctags has the "typeref" field. Patched version has "typename". # New ctags has the "typeref" field. Patched version has "typename".
if item->has_key('typeref') if item->has_key('typeref')
res = extendnew(res, item['typeref']->StructMembers(items, all)) res = res->extend(item['typeref']->StructMembers(items, all))
continue continue
endif endif
if item->has_key('typename') if item->has_key('typename')
res = extendnew(res, item['typename']->StructMembers(items, all)) res = res->extend(item['typename']->StructMembers(items, all))
continue continue
endif endif
@ -511,11 +508,11 @@ def Nextitem( # {{{1
endif endif
endfor endfor
if name != '' if name != ''
res = extendnew(res, StructMembers(cmdtokens[0] .. ':' .. name, items, all)) res = res->extend(StructMembers(cmdtokens[0] .. ':' .. name, items, all))
endif endif
elseif depth < 10 elseif depth < 10
# Could be "typedef other_T some_T". # Could be "typedef other_T some_T".
res = extendnew(res, cmdtokens[0]->Nextitem(items, depth + 1, all)) res = res->extend(cmdtokens[0]->Nextitem(items, depth + 1, all))
endif endif
endif endif
endif endif
@ -531,8 +528,7 @@ enddef
def StructMembers( # {{{1 def StructMembers( # {{{1
atypename: string, atypename: string,
items: list<string>, items: list<string>,
all: bool all: bool): list<dict<string>>
): list<dict<string>>
# Search for members of structure "typename" in tags files. # Search for members of structure "typename" in tags files.
# Return a list with resulting matches. # Return a list with resulting matches.
@ -643,8 +639,7 @@ enddef
def SearchMembers( # {{{1 def SearchMembers( # {{{1
matches: list<dict<any>>, matches: list<dict<any>>,
items: list<string>, items: list<string>,
all: bool all: bool): list<dict<string>>
): list<dict<string>>
# For matching members, find matches for following items. # For matching members, find matches for following items.
# When "all" is true find all, otherwise just return 1 if there is any member. # When "all" is true find all, otherwise just return 1 if there is any member.
@ -674,7 +669,7 @@ def SearchMembers( # {{{1
endif endif
if typename != '' if typename != ''
res = extendnew(res, StructMembers(typename, items, all)) res = res->extend(StructMembers(typename, items, all))
else else
# Use the search command (the declaration itself). # Use the search command (the declaration itself).
var sb: number = line->match('\t\zs/^') var sb: number = line->match('\t\zs/^')
@ -683,7 +678,7 @@ def SearchMembers( # {{{1
var e: number = line var e: number = line
->charidx(match(line, '\<' .. matches[i]['match'] .. '\>', sb)) ->charidx(match(line, '\<' .. matches[i]['match'] .. '\>', sb))
if e > 0 if e > 0
res = extendnew(res, line[s : e - 1]->Nextitem(items, 0, all)) res = res->extend(line[s : e - 1]->Nextitem(items, 0, all))
endif endif
endif endif
endif endif

View File

@ -1,7 +1,7 @@
" Vim functions for file type detection " Vim functions for file type detection
" "
" Maintainer: Bram Moolenaar <Bram@vim.org> " Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2022 Jan 28 " Last Change: 2022 Jan 31
" These functions are moved here from runtime/filetype.vim to make startup " These functions are moved here from runtime/filetype.vim to make startup
" faster. " faster.
@ -67,7 +67,7 @@ func dist#ft#FTasmsyntax()
endif endif
endfunc endfunc
func dist#ft#FTbas() func dist#ft#FTbas(alt = '')
if exists("g:filetype_bas") if exists("g:filetype_bas")
exe "setf " . g:filetype_bas exe "setf " . g:filetype_bas
return return
@ -88,6 +88,8 @@ func dist#ft#FTbas()
setf qb64 setf qb64
elseif match(lines, '\cVB_Name\|Begin VB\.\(Form\|MDIForm\|UserControl\)') > -1 elseif match(lines, '\cVB_Name\|Begin VB\.\(Form\|MDIForm\|UserControl\)') > -1
setf vb setf vb
elseif a:alt != ''
exe 'setf ' .. a:alt
else else
setf basic setf basic
endif endif

View File

@ -1,4 +1,4 @@
*indent.txt* For Vim version 8.2. Last change: 2019 Dec 07 *indent.txt* For Vim version 8.2. Last change: 2022 Jan 31
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -778,6 +778,15 @@ You can set the indent for the first line after <script> and <style>
"auto" auto indent (same indent as the blocktag) "auto" auto indent (same indent as the blocktag)
"inc" auto indent + one indent step "inc" auto indent + one indent step
You can set the indent for attributes after an open <tag line: >
:let g:html_indent_attribute = 1
<
VALUE MEANING ~
1 auto indent, one indent step more than <tag
2 auto indent, two indent steps (default)
> 2 auto indent, more indent steps
Many tags increase the indent for what follows per default (see "Add Indent Many tags increase the indent for what follows per default (see "Add Indent
Tags" in the script). You can add further tags with: > Tags" in the script). You can add further tags with: >

View File

@ -7779,7 +7779,6 @@ interactive-functions usr_41.txt /*interactive-functions*
interfaces-5.2 version5.txt /*interfaces-5.2* interfaces-5.2 version5.txt /*interfaces-5.2*
internal-variables eval.txt /*internal-variables* internal-variables eval.txt /*internal-variables*
internal-wordlist spell.txt /*internal-wordlist* internal-wordlist spell.txt /*internal-wordlist*
internal_get_nv_cmdchar() builtin.txt /*internal_get_nv_cmdchar()*
internet intro.txt /*internet* internet intro.txt /*internet*
interrupt() builtin.txt /*interrupt()* interrupt() builtin.txt /*interrupt()*
intro intro.txt /*intro* intro intro.txt /*intro*
@ -9919,10 +9918,7 @@ test_feedinput() testing.txt /*test_feedinput()*
test_garbagecollect_now() testing.txt /*test_garbagecollect_now()* test_garbagecollect_now() testing.txt /*test_garbagecollect_now()*
test_garbagecollect_soon() testing.txt /*test_garbagecollect_soon()* test_garbagecollect_soon() testing.txt /*test_garbagecollect_soon()*
test_getvalue() testing.txt /*test_getvalue()* test_getvalue() testing.txt /*test_getvalue()*
test_gui_drop_files() testing.txt /*test_gui_drop_files()* test_gui_event() testing.txt /*test_gui_event()*
test_gui_mouse_event() testing.txt /*test_gui_mouse_event()*
test_gui_tabline_event() testing.txt /*test_gui_tabline_event()*
test_gui_tabmenu_event() testing.txt /*test_gui_tabmenu_event()*
test_ignore_error() testing.txt /*test_ignore_error()* test_ignore_error() testing.txt /*test_ignore_error()*
test_null_blob() testing.txt /*test_null_blob()* test_null_blob() testing.txt /*test_null_blob()*
test_null_channel() testing.txt /*test_null_channel()* test_null_channel() testing.txt /*test_null_channel()*

View File

@ -1,4 +1,4 @@
*todo.txt* For Vim version 8.2. Last change: 2022 Jan 29 *todo.txt* For Vim version 8.2. Last change: 2022 Jan 31
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -38,19 +38,16 @@ browser use: https://github.com/vim/vim/issues/1234
*known-bugs* *known-bugs*
-------------------- Known bugs and current work ----------------------- -------------------- Known bugs and current work -----------------------
Only find a global function from Vim9 script when using "g:" ? #9637
Disallow defining a script#Func() in Vim9 script.
Cannot use command modifier for "import 'name.vim' as vim9" Cannot use command modifier for "import 'name.vim' as vim9"
range() returns list<number>, but it's OK if map() changes the type.
#9665 Change internal_func_ret_type() to return current and declared type?
When making a copy of a list or dict, do not keep the type? #9644 When making a copy of a list or dict, do not keep the type? #9644
With deepcopy() all, with copy() this still fails: With deepcopy() all, with copy() this still fails:
var l: list<list<number>> = [[1], [2]] var l: list<list<number>> = [[1], [2]]
l->copy()[0][0] = 'x' l->copy()[0][0] = 'x'
Remove EBCDIC support?
Once Vim9 is stable: Once Vim9 is stable:
- Add all the error numbers in a good place in documentation. - Add all the error numbers in a good place in documentation.
done until E1145 done until E1145

View File

@ -1,4 +1,4 @@
*vim9.txt* For Vim version 8.2. Last change: 2022 Jan 29 *vim9.txt* For Vim version 8.2. Last change: 2022 Jan 30
VIM REFERENCE MANUAL by Bram Moolenaar VIM REFERENCE MANUAL by Bram Moolenaar
@ -372,13 +372,12 @@ Global variables must be prefixed with "g:", also at the script level. >
g:global = 'value' g:global = 'value'
var Funcref = g:ThatFunction var Funcref = g:ThatFunction
Global functions must be prefixed with "g:" when defining them, but can be Global functions must be prefixed with "g:": >
called without "g:". >
vim9script vim9script
def g:GlobalFunc(): string def g:GlobalFunc(): string
return 'text' return 'text'
enddef enddef
echo GlobalFunc() echo g:GlobalFunc()
The "g:" prefix is not needed for auto-load functions. The "g:" prefix is not needed for auto-load functions.
*vim9-function-defined-later* *vim9-function-defined-later*
@ -1334,10 +1333,10 @@ variable was declared in a legacy function.
When a type has been declared this is attached to a list or string. When When a type has been declared this is attached to a list or string. When
later some expression attempts to change the type an error will be given: > later some expression attempts to change the type an error will be given: >
var ll: list<number> = [1, 2, 3] var ll: list<number> = [1, 2, 3]
ll->extend('x') # Error, 'x' is not a number ll->extend(['x']) # Error, 'x' is not a number
If the type is inferred then the type is allowed to change: > If the type is inferred then the type is allowed to change: >
[1, 2, 3]->extend('x') # result: [1, 2, 3, 'x'] [1, 2, 3]->extend(['x']) # result: [1, 2, 3, 'x']
Stricter type checking ~ Stricter type checking ~

View File

@ -1,7 +1,7 @@
" Vim support file to detect file types " Vim support file to detect file types
" "
" Maintainer: Bram Moolenaar <Bram@vim.org> " Maintainer: Bram Moolenaar <Bram@vim.org>
" Last Change: 2022 Jan 29 " Last Change: 2022 Jan 31
" Listen very carefully, I will say this only once " Listen very carefully, I will say this only once
if exists("did_load_filetypes") if exists("did_load_filetypes")
@ -2051,7 +2051,7 @@ au BufRead,BufNewFile *.hw,*.module,*.pkg
\ endif \ endif
" Visual Basic (also uses *.bas) or FORM " Visual Basic (also uses *.bas) or FORM
au BufNewFile,BufRead *.frm call dist#ft#FTVB("form") au BufNewFile,BufRead *.frm call dist#ft#FTbas('form')
" SaxBasic is close to Visual Basic " SaxBasic is close to Visual Basic
au BufNewFile,BufRead *.sba setf vb au BufNewFile,BufRead *.sba setf vb

View File

@ -1,7 +1,7 @@
" Vim indent script for HTML " Vim indent script for HTML
" Maintainer: Bram Moolenaar " Maintainer: Bram Moolenaar
" Original Author: Andy Wokula <anwoku@yahoo.de> " Original Author: Andy Wokula <anwoku@yahoo.de>
" Last Change: 2021 Jun 13 " Last Change: 2022 Jan 31
" Version: 1.0 "{{{ " Version: 1.0 "{{{
" Description: HTML indent script with cached state for faster indenting on a " Description: HTML indent script with cached state for faster indenting on a
" range of lines. " range of lines.
@ -149,6 +149,15 @@ func HtmlIndent_CheckUserSettings()
let b:html_indent_line_limit = 200 let b:html_indent_line_limit = 200
endif endif
endif endif
if exists('b:html_indent_attribute')
let b:hi_attr_indent = b:html_indent_attribute
elseif exists('g:html_indent_attribute')
let b:hi_attr_indent = g:html_indent_attribute
else
let b:hi_attr_indent = 2
endif
endfunc "}}} endfunc "}}}
" Init Script Vars " Init Script Vars
@ -946,11 +955,11 @@ func s:InsideTag(foundHtmlString)
let idx = match(text, '<' . s:tagname . '\s\+\zs\w') let idx = match(text, '<' . s:tagname . '\s\+\zs\w')
endif endif
if idx == -1 if idx == -1
" after just "<tag" indent two levels more " after just "<tag" indent two levels more by default
let idx = match(text, '<' . s:tagname . '$') let idx = match(text, '<' . s:tagname . '$')
if idx >= 0 if idx >= 0
call cursor(lnum, idx + 1) call cursor(lnum, idx + 1)
return virtcol('.') - 1 + shiftwidth() * 2 return virtcol('.') - 1 + shiftwidth() * b:hi_attr_indent
endif endif
endif endif
if idx > 0 if idx > 0

View File

@ -1,4 +1,4 @@
" vim: set ft=html sw=4 : " vim: set ft=html sw=4 ts=8 :
" START_INDENT " START_INDENT
@ -41,6 +41,11 @@ dd text
dt text dt text
</dt> </dt>
</dl> </dl>
<div
class="test"
style="color: yellow">
text
</div>
</body> </body>
</html> </html>
@ -50,6 +55,7 @@ dt text
% START_INDENT % START_INDENT
% INDENT_EXE let g:html_indent_style1 = "inc" % INDENT_EXE let g:html_indent_style1 = "inc"
% INDENT_EXE let g:html_indent_script1 = "zero" % INDENT_EXE let g:html_indent_script1 = "zero"
% INDENT_EXE let g:html_indent_attribute = 1
% INDENT_EXE call HtmlIndent_CheckUserSettings() % INDENT_EXE call HtmlIndent_CheckUserSettings()
<html> <html>
<body> <body>
@ -61,6 +67,11 @@ div#d2 { color: green; }
var v1 = "v1"; var v1 = "v1";
var v2 = "v2"; var v2 = "v2";
</script> </script>
<div
class="test"
style="color: yellow">
text
</div>
</body> </body>
</html> </html>
% END_INDENT % END_INDENT

View File

@ -1,4 +1,4 @@
" vim: set ft=html sw=4 : " vim: set ft=html sw=4 ts=8 :
" START_INDENT " START_INDENT
@ -41,6 +41,11 @@ div#d2 { color: green; }
dt text dt text
</dt> </dt>
</dl> </dl>
<div
class="test"
style="color: yellow">
text
</div>
</body> </body>
</html> </html>
@ -50,6 +55,7 @@ div#d2 { color: green; }
% START_INDENT % START_INDENT
% INDENT_EXE let g:html_indent_style1 = "inc" % INDENT_EXE let g:html_indent_style1 = "inc"
% INDENT_EXE let g:html_indent_script1 = "zero" % INDENT_EXE let g:html_indent_script1 = "zero"
% INDENT_EXE let g:html_indent_attribute = 1
% INDENT_EXE call HtmlIndent_CheckUserSettings() % INDENT_EXE call HtmlIndent_CheckUserSettings()
<html> <html>
<body> <body>
@ -61,6 +67,11 @@ div#d2 { color: green; }
var v1 = "v1"; var v1 = "v1";
var v2 = "v2"; var v2 = "v2";
</script> </script>
<div
class="test"
style="color: yellow">
text
</div>
</body> </body>
</html> </html>
% END_INDENT % END_INDENT

View File

@ -1,8 +1,8 @@
" Vim syntax file " Vim syntax file
" Language: Vim 8.2 script " Language: Vim 8.2 script
" Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM> " Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
" Last Change: January 11, 2022 " Last Change: January 30, 2022
" Version: 8.2-24 " Version: 8.2-26
" URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_VIM
" Automatically generated keyword lists: {{{1 " Automatically generated keyword lists: {{{1
@ -78,11 +78,11 @@ syn match vimHLGroup contained "Conceal"
syn case match syn case match
" Function Names {{{2 " Function Names {{{2
syn keyword vimFuncName contained abs argc assert_equal assert_match atan browse bufloaded byteidx charclass chdir ch_log ch_sendexpr col copy debugbreak diff_hlID empty execute expandcmd filter floor foldlevel function getchangelist getcmdline getcursorcharpos getftime getmarklist getreg gettagstack getwinvar has_key histget hlset input inputsecret isinf job_info join keys line2byte listener_flush luaeval mapset matchdelete matchstr mkdir or popup_clear popup_filter_yesno popup_hide popup_notification prevnonblank prompt_setprompt prop_list prop_type_get pyeval readdir reg_recording remote_foreground remove round screencol searchcount server2client setcharpos setfperm setqflist setwinvar sign_getdefined sign_undefine sinh sound_playevent split str2list strdisplaywidth strlen strwidth synconcealed system tagfiles term_dumpdiff term_getattr term_getsize term_list term_setkill test_alloc_fail test_getvalue test_null_channel test_null_partial test_scrollbar test_void timer_stopall trunc uniq winbufnr win_getid win_id2win winnr win_splitmove syn keyword vimFuncName contained abs argc assert_equal assert_match atan browse bufloaded byteidx charclass chdir ch_log ch_sendexpr col copy debugbreak diff_hlID empty execute expandcmd filter floor foldlevel function getchangelist getcmdline getcursorcharpos getftime getmarklist getreg gettagstack getwinvar has_key histget hlset input inputsecret isdirectory job_getchannel job_stop json_encode line listener_add log10 mapnew matcharg matchlist min nr2char popup_beval popup_filter_menu popup_getpos popup_move pow prompt_setinterrupt prop_find prop_type_delete py3eval readblob reg_executing remote_expr remote_startserver reverse screenchars search searchpos setcellwidths setenv setpos settagstack sign_define sign_placelist sin soundfold spellsuggest str2float strchars string strtrans swapname synstack tabpagewinnr tempname term_getansicolors term_getscrolled terminalprops term_setapi term_wait test_garbagecollect_soon test_null_channel test_null_partial test_scrollbar test_void timer_stopall trunc uniq winbufnr win_getid win_id2win winnr win_splitmove
syn keyword vimFuncName contained acos argidx assert_equalfile assert_nobeep atan2 browsedir bufname byteidxcomp charcol ch_evalexpr ch_logfile ch_sendraw complete cos deepcopy digraph_get environ exepath extend finddir fmod foldtext garbagecollect getchar getcmdpos getcwd getftype getmatches getreginfo gettext glob haslocaldir histnr hostname inputdialog insert islocked job_setoptions js_decode len lispindent listener_remove map match matchend matchstrpos mode pathshorten popup_close popup_findinfo popup_list popup_setoptions printf prop_add prop_remove prop_type_list pyxeval readdirex reltime remote_peek rename rubyeval screenpos searchdecl serverlist setcharsearch setline setreg sha256 sign_getplaced sign_unplace slice sound_playfile sqrt str2nr strftime strpart submatch synID systemlist taglist term_dumpload term_getcursor term_getstatus term_scrape term_setrestore test_autochdir test_gui_drop_files test_null_dict test_null_string test_setmouse timer_info tolower type values wincol win_gettype winlayout winrestcmd winwidth syn keyword vimFuncName contained acos argidx assert_equalfile assert_nobeep atan2 browsedir bufname byteidxcomp charcol ch_evalexpr ch_logfile ch_sendraw complete cos deepcopy digraph_get environ exepath extend finddir fmod foldtext garbagecollect getchar getcmdpos getcwd getftype getmatches getreginfo gettext glob haslocaldir histnr hostname inputdialog insert isinf job_info join keys line2byte listener_flush luaeval mapset matchdelete matchstr mkdir or popup_clear popup_filter_yesno popup_hide popup_notification prevnonblank prompt_setprompt prop_list prop_type_get pyeval readdir reg_recording remote_foreground remove round screencol searchcount server2client setcharpos setfperm setqflist setwinvar sign_getdefined sign_undefine sinh sound_playevent split str2list strdisplaywidth strlen strwidth synconcealed system tagfiles term_dumpdiff term_getattr term_getsize term_list term_setkill test_alloc_fail test_getvalue test_null_dict test_null_string test_setmouse timer_info tolower type values wincol win_gettype winlayout winrestcmd winwidth
syn keyword vimFuncName contained add arglistid assert_exception assert_notequal balloon_gettext bufadd bufnr call charidx ch_evalraw ch_open ch_setoptions complete_add cosh delete digraph_getlist escape exists extendnew findfile fnameescape foldtextresult get getcharmod getcmdtype getenv getimstatus getmousepos getregtype getwininfo glob2regpat hasmapto hlexists iconv inputlist interrupt isnan job_start js_encode libcall list2blob localtime maparg matchadd matchfuzzy max mzeval perleval popup_create popup_findpreview popup_locate popup_settext prompt_getprompt prop_add_list prop_type_add pum_getpos rand readfile reltimefloat remote_read repeat screenattr screenrow searchpair setbufline setcmdpos setloclist settabvar shellescape sign_jump sign_unplacelist sort sound_stop srand strcharlen strgetchar strptime substitute synIDattr tabpagebuflist tan term_dumpwrite term_getjob term_gettitle term_sendkeys term_setsize test_feedinput test_gui_mouse_event test_null_function test_option_not_set test_settime timer_pause toupper typename virtcol windowsversion win_gotoid winline winrestview wordcount syn keyword vimFuncName contained add arglistid assert_exception assert_notequal balloon_gettext bufadd bufnr call charidx ch_evalraw ch_open ch_setoptions complete_add cosh delete digraph_getlist escape exists extendnew findfile fnameescape foldtextresult get getcharmod getcmdtype getenv getimstatus getmousepos getregtype getwininfo glob2regpat hasmapto hlexists iconv inputlist internal_get_nv_cmdchar islocked job_setoptions js_decode len lispindent listener_remove map match matchend matchstrpos mode pathshorten popup_close popup_findinfo popup_list popup_setoptions printf prop_add prop_remove prop_type_list pyxeval readdirex reltime remote_peek rename rubyeval screenpos searchdecl serverlist setcharsearch setline setreg sha256 sign_getplaced sign_unplace slice sound_playfile sqrt str2nr strftime strpart submatch synID systemlist taglist term_dumpload term_getcursor term_getstatus term_scrape term_setrestore test_autochdir test_gui_event test_null_function test_option_not_set test_settime timer_pause toupper typename virtcol windowsversion win_gotoid winline winrestview wordcount
syn keyword vimFuncName contained and argv assert_fails assert_notmatch balloon_show bufexists bufwinid ceil ch_canread ch_getbufnr ch_read ch_status complete_check count deletebufline digraph_set eval exists_compiled feedkeys flatten fnamemodify foreground getbufinfo getcharpos getcmdwintype getfontname getjumplist getpid gettabinfo getwinpos globpath histadd hlget indent inputrestore invert items job_status json_decode libcallnr list2str log mapcheck matchaddpos matchfuzzypos menu_info nextnonblank popup_atcursor popup_dialog popup_getoptions popup_menu popup_show prompt_setcallback prop_clear prop_type_change pumvisible range reduce reltimestr remote_send resolve screenchar screenstring searchpairpos setbufvar setcursorcharpos setmatches settabwinvar shiftwidth sign_place simplify sound_clear spellbadword state strcharpart stridx strridx swapinfo synIDtrans tabpagenr tanh term_getaltscreen term_getline term_gettty term_setansicolors term_start test_garbagecollect_now test_ignore_error test_null_job test_override test_srand_seed timer_start tr undofile visualmode win_execute winheight win_move_separator winsaveview writefile syn keyword vimFuncName contained and argv assert_fails assert_notmatch balloon_show bufexists bufwinid ceil ch_canread ch_getbufnr ch_read ch_status complete_check count deletebufline digraph_set eval exists_compiled feedkeys flatten fnamemodify foreground getbufinfo getcharpos getcmdwintype getfontname getjumplist getpid gettabinfo getwinpos globpath histadd hlget indent inputrestore interrupt isnan job_start js_encode libcall list2blob localtime maparg matchadd matchfuzzy max mzeval perleval popup_create popup_findpreview popup_locate popup_settext prompt_getprompt prop_add_list prop_type_add pum_getpos rand readfile reltimefloat remote_read repeat screenattr screenrow searchpair setbufline setcmdpos setloclist settabvar shellescape sign_jump sign_unplacelist sort sound_stop srand strcharlen strgetchar strptime substitute synIDattr tabpagebuflist tan term_dumpwrite term_getjob term_gettitle term_sendkeys term_setsize test_feedinput test_ignore_error test_null_job test_override test_srand_seed timer_start tr undofile visualmode win_execute winheight win_move_separator winsaveview writefile
syn keyword vimFuncName contained append asin assert_false assert_report balloon_split buflisted bufwinnr changenr ch_close ch_getjob ch_readblob cindent complete_info cscope_connection did_filetype digraph_setlist eventhandler exp filereadable flattennew foldclosed fullcommand getbufline getcharsearch getcompletion getfperm getline getpos gettabvar getwinposx has histdel hlID index inputsave isdirectory job_getchannel job_stop json_encode line listener_add log10 mapnew matcharg matchlist min nr2char popup_beval popup_filter_menu popup_getpos popup_move pow prompt_setinterrupt prop_find prop_type_delete py3eval readblob reg_executing remote_expr remote_startserver reverse screenchars search searchpos setcellwidths setenv setpos settagstack sign_define sign_placelist sin soundfold spellsuggest str2float strchars string strtrans swapname synstack tabpagewinnr tempname term_getansicolors term_getscrolled terminalprops term_setapi term_wait test_garbagecollect_soon test_null_blob test_null_list test_refcount test_unknown timer_stop trim undotree wildmenumode win_findbuf win_id2tabwin win_move_statusline win_screenpos xor syn keyword vimFuncName contained append asin assert_false assert_report balloon_split buflisted bufwinnr changenr ch_close ch_getjob ch_readblob cindent complete_info cscope_connection did_filetype digraph_setlist eventhandler exp filereadable flattennew foldclosed fullcommand getbufline getcharsearch getcompletion getfperm getline getpos gettabvar getwinposx has histdel hlID index inputsave invert items job_status json_decode libcallnr list2str log mapcheck matchaddpos matchfuzzypos menu_info nextnonblank popup_atcursor popup_dialog popup_getoptions popup_menu popup_show prompt_setcallback prop_clear prop_type_change pumvisible range reduce reltimestr remote_send resolve screenchar screenstring searchpairpos setbufvar setcursorcharpos setmatches settabwinvar shiftwidth sign_place simplify sound_clear spellbadword state strcharpart stridx strridx swapinfo synIDtrans tabpagenr tanh term_getaltscreen term_getline term_gettty term_setansicolors term_start test_garbagecollect_now test_null_blob test_null_list test_refcount test_unknown timer_stop trim undotree wildmenumode win_findbuf win_id2tabwin win_move_statusline win_screenpos xor
syn keyword vimFuncName contained appendbufline assert_beeps assert_inrange assert_true blob2list bufload byte2line char2nr ch_close_in ch_info ch_readraw clearmatches confirm cursor diff_filler echoraw executable expand filewritable float2nr foldclosedend funcref getbufvar getcharstr getcurpos getfsize getloclist getqflist gettabwinvar getwinposy syn keyword vimFuncName contained appendbufline assert_beeps assert_inrange assert_true blob2list bufload byte2line char2nr ch_close_in ch_info ch_readraw clearmatches confirm cursor diff_filler echoraw executable expand filewritable float2nr foldclosedend funcref getbufvar getcharstr getcurpos getfsize getloclist getqflist gettabwinvar getwinposy
"--- syntax here and above generated by mkvimvim --- "--- syntax here and above generated by mkvimvim ---