diff options
-rw-r--r-- | runtime/doc/vim9.txt | 10 | ||||
-rw-r--r-- | src/testdir/sautest/autoload/auto9.vim | 9 | ||||
-rw-r--r-- | src/testdir/test_autoload.vim | 5 | ||||
-rw-r--r-- | src/version.c | 2 |
4 files changed, 23 insertions, 3 deletions
diff --git a/runtime/doc/vim9.txt b/runtime/doc/vim9.txt index 7b2597dc6e..5d264b673d 100644 --- a/runtime/doc/vim9.txt +++ b/runtime/doc/vim9.txt @@ -118,9 +118,13 @@ Functions and variables are script-local by default ~ *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 index 0000000000..c89ce3a33d --- /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 index b8c4fa251f..57967bf64f 100644 --- 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 index 0734bdc1e3..02fa087806 100644 --- 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, |