mirror of
https://github.com/vim/vim.git
synced 2025-08-26 20:03:41 -04:00
And anticipate occasional multibyte line wrapping owing to:
> A poorly rendered line may otherwise become wrapped when enough of
> spurious U+FFFD (0xEF 0xBF 0xBD) characters claim more columns than
> are available (75) and then invalidate line correspondence under test.
Observe that for "vim_ex_command.vim" another workaround is
chosen: the long line containing an only multibyte character
near its EOL is conversely made longer by padding and moving
the character to a separate _tail_ part of the wrapped line.
That is, the _head_ part of the line is all ASCII characters
and the wrapped _tail_ part is a mix of various characters
whose total byte count is within bounds.
Other unmodified tracked files of interest:
java_lambda_expressions.java,
java_lambda_expressions_signature.java,
java_numbers.java,
markdown_conceal.markdown,
vim9_generic_function_example_set.vim
Also, remove stray U+FFFC (0xEF 0xBF 0xBC) characters.
Related to #16559 and #17704.
Reference:
0fde6aebdd/runtime/syntax/testdir/README.txt (L120-L123)
closes: #17868
Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
278 lines
3.7 KiB
VimL
278 lines
3.7 KiB
VimL
" Vim function calls
|
|
" VIM_TEST_SETUP hi link vimUserFunc Todo
|
|
|
|
|
|
call abs(42)
|
|
|
|
|
|
" Command/function distinction
|
|
|
|
" append browse call chdir confirm copy delete eval execute filter function
|
|
" insert join map match mode sort split substitute swapname type
|
|
|
|
let append = append(42)
|
|
call append(42)
|
|
" command
|
|
append
|
|
.
|
|
" bad command
|
|
append(42)
|
|
append (42)
|
|
|
|
let browse = browse(42)
|
|
call browse(42)
|
|
" command
|
|
browse(42)
|
|
browse (42)
|
|
|
|
let call = call(42)
|
|
call call(42)
|
|
" command
|
|
call(42)
|
|
call (42)
|
|
|
|
let chdir = chdir(42)
|
|
call chdir(42)
|
|
" command
|
|
chdir(42)
|
|
chdir (42)
|
|
|
|
let confirm = confirm(42)
|
|
call confirm(42)
|
|
" command
|
|
confirm(42)
|
|
confirm (42)
|
|
|
|
let copy = copy(42)
|
|
call copy(42)
|
|
" command
|
|
copy(42)
|
|
copy (42)
|
|
|
|
let delete = delete(42)
|
|
call delete(42)
|
|
" command
|
|
delete(42)
|
|
delete (42)
|
|
|
|
let eval = eval(42)
|
|
call eval(42)
|
|
" command
|
|
eval(42)
|
|
eval (42)
|
|
|
|
let execute = execute(42)
|
|
call execute(42)
|
|
" command
|
|
execute(42)
|
|
execute (42)
|
|
|
|
let filter = filter(42)
|
|
call filter(42)
|
|
" command
|
|
filter(42)
|
|
filter (42)
|
|
|
|
let function = function(42)
|
|
call function(42)
|
|
" command
|
|
function(42)
|
|
function (42)
|
|
|
|
let insert = insert(42)
|
|
call insert(42)
|
|
" command
|
|
insert
|
|
.
|
|
" bad command
|
|
insert(42)
|
|
insert (42)
|
|
|
|
let join = join(42)
|
|
call join(42)
|
|
" command
|
|
join(42)
|
|
join (42)
|
|
|
|
let map = map(42)
|
|
call map(42)
|
|
" command
|
|
map(42)
|
|
map (42)
|
|
|
|
let match = match(42)
|
|
call match(42)
|
|
" command
|
|
match(42)
|
|
match (42)
|
|
|
|
let sort = sort(42)
|
|
call sort(42)
|
|
" command
|
|
sort(42)
|
|
sort (42)
|
|
|
|
let split = split(42)
|
|
call split(42)
|
|
" command
|
|
split(42)
|
|
split (42)
|
|
|
|
let substitute = substitute(42)
|
|
call substitute(42)
|
|
" command
|
|
substitute(42)
|
|
substitute (42)
|
|
|
|
let swapname = swapname(42)
|
|
call swapname(42)
|
|
" command
|
|
swapname(42)
|
|
swapname (42)
|
|
|
|
let type = type(42)
|
|
call type(42)
|
|
" Vim9 command
|
|
" type(42)
|
|
" type (42)
|
|
|
|
let uniq = uniq(42)
|
|
call uniq(42)
|
|
" command
|
|
uniq(42)
|
|
uniq (42)
|
|
|
|
|
|
" Errors
|
|
|
|
let foo = foo(42)
|
|
call foo(42)
|
|
|
|
let if = if(42)
|
|
call if(42)
|
|
" command
|
|
if(42) | .. | endif
|
|
if (42) | .. | endif
|
|
|
|
let echo = echo(42)
|
|
call echo(42)
|
|
" command
|
|
echo(42)
|
|
echo (42)
|
|
|
|
|
|
" Expressions
|
|
|
|
let foo = abs(42)
|
|
|
|
echo abs(42)
|
|
echo (abs(42))
|
|
echo abs(42) + foo
|
|
echo foo + abs(42)
|
|
|
|
echo Foo()
|
|
echo (Foo())
|
|
echo Foo() + bar
|
|
echo bar + Foo()
|
|
|
|
|
|
" Scope modifiers and qualified names
|
|
|
|
let foo = s:foo(42)
|
|
call s:foo(42)
|
|
|
|
let foo = g:foo(42)
|
|
call g:foo(42)
|
|
|
|
let foo = b:foo(42)
|
|
call b:foo(42)
|
|
|
|
let foo = w:foo(42)
|
|
call w:foo(42)
|
|
|
|
let foo = t:foo(42)
|
|
call t:foo(42)
|
|
|
|
let foo = l:foo(42)
|
|
call l:foo(42)
|
|
|
|
let foo = a:foo(42)
|
|
call a:foo(42)
|
|
|
|
let foo = v:foo(42)
|
|
call v:foo(42)
|
|
|
|
|
|
let foo = module.foo(42)
|
|
call module.foo(42)
|
|
|
|
let foo = s:module.foo(42)
|
|
call module.foo(42)
|
|
|
|
let foo = g:module.foo(42)
|
|
call g:module.foo(42)
|
|
|
|
let foo = b:module.foo(42)
|
|
call b:module.foo(42)
|
|
|
|
let foo = w:module.foo(42)
|
|
call w:module.foo(42)
|
|
|
|
let foo = t:module.foo(42)
|
|
call t:module.foo(42)
|
|
|
|
let foo = l:module.foo(42)
|
|
call l:module.foo(42)
|
|
|
|
let foo = a:module.foo(42)
|
|
call a:module.foo(42)
|
|
|
|
let foo = v:module.foo(42)
|
|
call v:module.foo(42)
|
|
|
|
|
|
let foo = module#foo(42)
|
|
call module#foo(42)
|
|
|
|
let foo = g:module#foo(42)
|
|
call g:module#foo(42)
|
|
|
|
|
|
" Not builtin functions
|
|
|
|
call s:substitute()
|
|
call g:substitute()
|
|
call b:substitute()
|
|
call w:substitute()
|
|
call t:substitute()
|
|
call l:substitute()
|
|
call a:substitute()
|
|
call v:substitute()
|
|
|
|
call <SID>substitute()
|
|
|
|
call s:substitute.substitute()
|
|
call g:substitute.substitute()
|
|
call b:substitute.substitute()
|
|
call w:substitute.substitute()
|
|
call t:substitute.substitute()
|
|
call l:substitute.substitute()
|
|
call a:substitute.substitute()
|
|
call v:substitute.substitute()
|
|
|
|
call substitute#substitute()
|
|
call g:substitute#substitute()
|
|
|
|
|
|
" Chained function calls
|
|
|
|
call module.foo().bar()
|
|
call module.foo().substitute()
|
|
|
|
|
|
" Issue #17766 (valid function call highlighted as error)
|
|
|
|
call module[0].foo()
|
|
call module[0].substitute()
|
|
|