# HG changeset patch # User Bram Moolenaar # Date 1596053705 -7200 # Node ID b0b57d91671c1d55a82eb71f250fbd6fb7c64660 # Parent c32589555cc6d117cb51831cfef727806f86b0ff patch 8.2.1325: Vim9: using Vim9 script for autaload not tested Commit: https://github.com/vim/vim/commit/ea2d8d25718836bf627b67b7fcd28a1e528bb7b9 Author: Bram Moolenaar 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. diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt --- 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 diff --git a/src/testdir/sautest/autoload/auto9.vim b/src/testdir/sautest/autoload/auto9.vim 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 diff --git a/src/testdir/test_autoload.vim b/src/testdir/test_autoload.vim --- 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 diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -755,6 +755,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1325, +/**/ 1324, /**/ 1323,