From 5516fc534ea03ba4ee42da2cc14e76d9d26151bc Mon Sep 17 00:00:00 2001 From: Aliaksei Budavei <0x000c70@gmail.com> Date: Fri, 9 Jan 2026 17:19:18 +0000 Subject: [PATCH] runtime(syntax-tests): Adapt "runtime/syntax/testdir/vimcmd" for "src/testdir/util/shared.vim" Problem: When "util/shared.vim" is sourced and GetVimCommand is called on behalf of the syntax test runner, the "vimcmd" file will be searched in the current working directory, i.e. "src/testdir", whereas the desired file is in "runtime/syntax/testdir". Solution: Temporarily copy "vimcmd" between test directories. closes: #19127 Signed-off-by: Aliaksei Budavei <0x000c70@gmail.com> Signed-off-by: Christian Brabandt --- runtime/syntax/testdir/runtest.vim | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/runtime/syntax/testdir/runtest.vim b/runtime/syntax/testdir/runtest.vim index 6dce6508a6..9392a46671 100644 --- a/runtime/syntax/testdir/runtest.vim +++ b/runtime/syntax/testdir/runtest.vim @@ -69,6 +69,16 @@ endif " Use the script for source code screendump testing. It sources other scripts, " therefore we must "cd" there. cd ../../src/testdir + +let s:vimcmdSyntaxFname = fnameescape(syntaxDir .. '/testdir/vimcmd') + +" Adapt "runtime/syntax/testdir/vimcmd" for "src/testdir/util/shared.vim". +if filereadable(s:vimcmdSyntaxFname) + call delete('vimcmd') + call filecopy(s:vimcmdSyntaxFname, 'vimcmd') + exe 'au ExitPre call delete("' .. fnameescape(getcwd() .. '/vimcmd') .. '")' +endif + source util/screendump.vim source util/term_util.vim exe 'cd ' .. fnameescape(syntaxDir) -- 2.47.3