runtime(vim): Split Vim legacy and Vim9 script indent tests Commit: https://github.com/vim/vim/commit/221c53202da1e9a2a30d081a46eacdeb220be443 Author: Doug Kearns <dougkea...@gmail.com> Date: Mon Jan 13 07:54:33 2025 +0100
runtime(vim): Split Vim legacy and Vim9 script indent tests The indent test file is not highlighted correctly as it's currently a syntactically erroneous mix of legacy and Vim9 script. This is causing spurious indent test failures as the indent script relies on syntax ID tests to determine the context of lines being processed. Splitting the tests into legacy and Vim9 specific files allows for correct syntax highlighting and indenting. closes: #16431 Signed-off-by: Doug Kearns <dougkea...@gmail.com> Signed-off-by: Christian Brabandt <c...@256bit.org> diff --git a/runtime/indent/testdir/vim.in b/runtime/indent/testdir/vim.in index 431528ee2..6b894b510 100644 --- a/runtime/indent/testdir/vim.in +++ b/runtime/indent/testdir/vim.in @@ -113,284 +113,12 @@ echo 0 end " END_INDENT -" START_INDENT -var result = Func( -arg1, -arg2 -) -" END_INDENT - -" START_INDENT -var result = Func(arg1, -arg2) -" END_INDENT - -" START_INDENT -filter(list, (k, v) => -v > 0) -" END_INDENT - -" START_INDENT -filter(list, (k, v) => { -const x = get(list, k, 0) -return x > 0 -}) -" END_INDENT - -" START_INDENT -if x > 0 -filter(list, (k, v) => { -const x = get(list, k, 1) -return x > 0 -}) -endif -" END_INDENT - -" START_INDENT -{ -var temp = 'temp' -} -" END_INDENT - -" START_INDENT -var text = lead -.. middle -.. end -" END_INDENT - -" START_INDENT -var text = lead .. -middle .. -end -" END_INDENT - -" START_INDENT -var total = start + -end - -correction -" END_INDENT - -" START_INDENT -var result = start -:+ print -" END_INDENT - -" START_INDENT -var result = positive -? PosFunc(arg) -: NegFunc(arg) -" END_INDENT - -" START_INDENT -var result = GetBuilder() -->BuilderSetWidth(333) -->BuilderSetHeight(777) -->BuilderBuild() -" END_INDENT - -" START_INDENT -var result = MyDict -.member -" END_INDENT - -" START_INDENT -autocmd BufNewFile *.match if condition -| echo 'match' -| endif -" END_INDENT - -" START_INDENT -set cpo+=C -var lines =<< trim END -| this works -END -set cpo-=C -" END_INDENT - -" START_INDENT -syn region Text -\ start='foo' -#\ comment -\ end='bar' -" END_INDENT - -" START_INDENT -au CursorHold * echom 'BEFORE bar' -#\ some comment -| echom 'AFTER bar' -" END_INDENT - -" START_INDENT -def MyFunc(text: string, -separator = '-' -): string -enddef -" END_INDENT - -" START_INDENT -def MyFunc( -text: string, -separator = '-' -): string -enddef -" END_INDENT - -" START_INDENT -[var1, var2] = -Func() -" END_INDENT - -" START_INDENT -const list = ['one', -'two'] -" END_INDENT - -" START_INDENT -const list = [ -'one', -'two', -] -" END_INDENT - -" START_INDENT -const dict = {one: 1, -two: 2 -} -" END_INDENT - -" START_INDENT -const dict = { -one: 1, -two: 2 -} -" END_INDENT - -" START_INDENT -if true -const dict = -{ -one: 1, -two: 2 -} -endif -" END_INDENT - -" START_INDENT -def Func() -return { -one: 1 -} -enddef -" END_INDENT - -" START_INDENT -echo { -a: 0, -# b -# c -} -" END_INDENT - -" START_INDENT -echo search( -# comment -'1' -.. '2' -) -" END_INDENT - -" START_INDENT -if true -var v = ( # trailing "(" starts line continuation -3 + 4 # nothing special -) # end of expression indicates continued line -var x: number # needs to align with previous "var" -endif -" END_INDENT - -" START_INDENT -def Func() # {{{ -# comment -if true -return -endif -enddef -" END_INDENT - -" START_INDENT -echo { -key: -'value', -} -" END_INDENT - -" START_INDENT -var id = time -->timer_start((_) => { -n = 0 -}) -" END_INDENT - " START_INDENT augroup Name autocmd! augroup END " END_INDENT -" START_INDENT -var n = -# comment -1 -+ 2 - -var s = '' -" END_INDENT - -" START_INDENT -var keys = { -J: 'j', -"\<Home>": '1G', -"\<End>": 'G', -z: 'zz' -} -" END_INDENT - -" START_INDENT -export def Func( -n: number, -s: string, -...l: list<bool> -) -enddef -" END_INDENT - -" START_INDENT -var heredoc =<< trim ENDD -var nested_heredoc =<< trim END -END -ENDD -" END_INDENT - -" START_INDENT -if true -else " comment -endif -" END_INDENT - -" START_INDENT -if true | echo 'one' | endif -if true | echo 'two' | endif -if true | echo 'three' | endif -" END_INDENT - -" START_INDENT -if true -:'<-1 mark < -else -echo '' -endif -" END_INDENT - " START_INDENT substitute/pat /rep / echo @@ -404,92 +132,12 @@ echo 2 endtry " END_INDENT -" START_INDENT -def Func() -Cmd % -enddef -" END_INDENT - " START_INDENT if end == 'xxx' || end == 'yyy' echo endif " END_INDENT -" START_INDENT -if true -popup_move(id, {col: 1, -line: 2}) -endif -setwinvar(id, 'name', 3) -" END_INDENT - -" START_INDENT -var d = [ -{a: 'x', -b: 'y'}, -FuncA(), -FuncB(), -] -" END_INDENT - -" START_INDENT -var ll = [[ -1, -2, -3], [ -4, -5, -6], [ -7, -8, -9]] -" END_INDENT - -" START_INDENT -var ld = [{ -a: 'xxx', -b: 'yyy'}, { -c: 'xxx', -d: 'yyy'}, { -e: 'xxx', -f: 'yyy'}, { -}] -" END_INDENT - -" START_INDENT -var d = { -a: { -b: { -c: [{ -d: 'e', -f: 'g', -h: 'i' -}], -j: 'k', -}, -}, -} -" END_INDENT - -" START_INDENT -if true -var end: any -if true -end = 0 -elseif true -echo -endif -endif -" END_INDENT - -" START_INDENT -if true -var d = { -end: 0} -endif -" END_INDENT - " START_INDENT nunmap <buffer> ( nunmap <buffer> ) @@ -499,224 +147,6 @@ silent! xunmap i{ silent! xunmap a{ " END_INDENT -" START_INDENT -def Func( -s: string, -n = 1, -m = 2 -) -enddef -" END_INDENT - -" START_INDENT -var h =<< END -text -END - -def Func() -echo -enddef -" END_INDENT - -" START_INDENT -def Func() -var h =<< END -text -END -echo 'test' -enddef -" END_INDENT - -" START_INDENT -def Foo() -lcd - -enddef -def Bar() -echo -enddef -" END_INDENT - -" START_INDENT -if true -n = Func(1, 2, -3) -endif -" END_INDENT - -" START_INDENT -def Func(s: string, -n: number): bool -if true -return false -endif -enddef -" END_INDENT - -" START_INDENT -def Func( -n: number) -# -echo -enddef -" END_INDENT - -" START_INDENT -" INDENT_AT this-line -def Func( - n: number) - # -echo # this-line -enddef -" END_INDENT - -" START_INDENT -if true -if true -normal! == -endif -endif -" END_INDENT - -" START_INDENT -var d = { -a: () => true, -b: () => true -&& true -&& Foo(), -c: () => Bar(), -e: () => Baz(), -} -" END_INDENT - -" START_INDENT -def Select(Cont: func(func(any)), Pred: func(any): bool): func(func(any)) -return (Emit: func(any)) => { -Cont((t: any) => { -if Pred(t) -Emit(t) -endif -}) -} -enddef -" END_INDENT - -" START_INDENT -" INDENT_EXE let g:vim_indent = {'more_in_bracket_block': v:true} -def Select(Cont: func(func(any)), Pred: func(any): bool): func(func(any)) -return (Emit: func(any)) => { -Cont((t: any) => { -if Pred(t) -Emit(t) -endif -}) -} -enddef -" END_INDENT - -" START_INDENT -" INDENT_EXE unlet! g:vim_indent -" END_INDENT - -" START_INDENT -g:lightline = { -'active': { -'left': [ [ 'mode', 'paste' ], [ 'readonly', 'relativepath', 'modified' ] ], -}, -'inactive': { -'left': [ [ 'readonly', 'relativepath', 'modified' ] ], -} -} -" END_INDENT - -" START_INDENT -if getline(1, 10) -->map((_, v: string): number => strcharlen(v)) -->max() > 1'000 -&l:breakindent = false -&l:linebreak = false -else -&l:breakindent = true -&l:linebreak = true -endif -" END_INDENT - -" START_INDENT -var ext2cmd: dict<string> = { -doc: $'antiword {fname}', -docx: $'pandoc --from=docx --to=markdown {fname}', -epub: $'pandoc --from=epub --to=markdown {fname}', -odp: $'odt2txt {fname}', -odt: $'odt2txt {fname}', -pdf: $'pdftotext -nopgbrk -layout -q -eol unix {fname} -', -rtf: 'unrtf --text', -} -" END_INDENT - -" START_INDENT -const ptybuf: number = term_start(&shell, { -hidden: true, -exit_cb: (_, _) => { -if true -close -else -help -endif -} -}) -" END_INDENT - -" START_INDENT -var d = { -a: 0, -# a ' quote {{{ -#}}} -b: 0, -} -" END_INDENT - -" START_INDENT -echo printf('%s () %s', -1, -2 -) -" END_INDENT - -" START_INDENT -prop_add(1, col('.'), { -length: 2, -type: 'test' -}) -" END_INDENT - -" START_INDENT -echo (() => " string starting with space")() -echo -" END_INDENT - -" START_INDENT -var variables = deepcopy(g:) -->filter((k: string, _): bool => -k =~ ' -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to vim_dev+unsubscr...@googlegroups.com. To view this discussion visit https://groups.google.com/d/msgid/vim_dev/E1tXEQc-008lkU-Td%40256bit.org.