0
0
mirror of https://github.com/vim/vim.git synced 2025-09-23 03:43:49 -04:00

patch 9.1.0403: Vim9: not able to import file from start dir

Problem:  Vim9: not able to import file from start dir
          (Danielle McLean)
Solution: Allow to import from start directory
          (Yegappan Lakshmanan)

fixes: #13313
closes: #14740

Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Yegappan Lakshmanan
2024-05-10 13:10:54 +02:00
committed by Christian Brabandt
parent 63f2a5b8ad
commit 8c35c26c1f
3 changed files with 31 additions and 1 deletions

View File

@@ -682,7 +682,7 @@ find_script_in_rtp(char_u *name)
{ {
int sid = -1; int sid = -1;
(void)do_in_path_and_pp(p_rtp, name, DIP_NOAFTER, (void)do_in_path_and_pp(p_rtp, name, DIP_START | DIP_NOAFTER,
find_script_callback, &sid); find_script_callback, &sid);
return sid; return sid;
} }

View File

@@ -3283,4 +3283,32 @@ def Test_set_imported_class_member()
v9.CheckScriptSuccess(lines) v9.CheckScriptSuccess(lines)
enddef enddef
" Test for using an imported function from the vimrc file.  The function is
" defined in the 'start' directory of a package.
def Test_import_from_vimrc()
mkdir('Ximport/pack/foobar/start/foo/autoload', 'pR')
var lines =<< trim END
vim9script
export def Foo()
writefile(['Foo called'], 'Xoutput.log')
enddef
END
writefile(lines, 'Ximport/pack/foobar/start/foo/autoload/foo.vim')
lines =<< trim END
vim9script
set packpath+=./Ximport
try
import autoload 'foo.vim'
foo.Foo()
catch
writefile(['Failed to import foo.vim'], 'Xoutput.log')
endtry
qall!
END
writefile(lines, 'Xvimrc', 'D')
g:RunVim([], [], '-u Xvimrc')
assert_equal(['Foo called'], readfile('Xoutput.log'))
delete('Xoutput.log')
enddef
" vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker " vim: ts=8 sw=2 sts=2 expandtab tw=80 fdm=marker

View File

@@ -704,6 +704,8 @@ static char *(features[]) =
static int included_patches[] = static int included_patches[] =
{ /* Add new patch number below this line */ { /* Add new patch number below this line */
/**/
403,
/**/ /**/
402, 402,
/**/ /**/