Mercurial > vim
changeset 21550:b0b57d91671c v8.2.1325
patch 8.2.1325: Vim9: using Vim9 script for autaload not tested
Commit: https://github.com/vim/vim/commit/ea2d8d25718836bf627b67b7fcd28a1e528bb7b9
Author: Bram Moolenaar <Bram@vim.org>
Date: Wed Jul 29 22:11:05 2020 +0200
patch 8.2.1325: Vim9: using Vim9 script for autaload not tested
Problem: Vim9: using Vim9 script for autaload not tested.
Solution: Add a test. Update help.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Wed, 29 Jul 2020 22:15:05 +0200 |
parents | c32589555cc6 |
children | 24c7210c4134 |
files | runtime/doc/vim9.txt src/testdir/sautest/autoload/auto9.vim src/testdir/test_autoload.vim src/version.c |
diffstat | 4 files changed, 23 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/runtime/doc/vim9.txt +++ b/runtime/doc/vim9.txt @@ -118,9 +118,13 @@ Functions and variables are script-local *vim9-scopes* When using `:function` or `:def` to specify a new function at the script level in a Vim9 script, the function is local to the script, as if "s:" was -prefixed. Using the "s:" prefix is optional. - -To define or use a global function or variable the "g:" prefix must be used. +prefixed. Using the "s:" prefix is optional. To define or use a global +function or variable the "g:" prefix must be used. For functions in an +autoload script the "name#" prefix is sufficient. > + def ThisFunction() # script-local + def s:ThisFunction() # script-local + def g:ThatFunction() # global + def scriptname#function() # autoload When using `:function` or `:def` to specify a new function inside a function, the function is local to the function. It is not possible to define a
new file mode 100644 --- /dev/null +++ b/src/testdir/sautest/autoload/auto9.vim @@ -0,0 +1,9 @@ +vim9script + +func auto9#getsome() + return 'some' +endfunc + +def auto9#add42(count: number): number + return count + 42 +enddef
--- a/src/testdir/test_autoload.vim +++ b/src/testdir/test_autoload.vim @@ -17,3 +17,8 @@ func Test_source_autoload() source sautest/autoload/sourced.vim call assert_equal(1, g:loaded_sourced_vim) endfunc + +func Test_autoload_vim9script() + call assert_equal('some', auto9#getsome()) + call assert_equal(49, auto9#add42(7)) +endfunc