From f89d0d8230f34dca49eddbea179d274955b572b9 Mon Sep 17 00:00:00 2001 From: KillTheMule Date: Fri, 1 Feb 2019 01:40:01 +0100 Subject: inccommand: auto-disable if folding is slow #9568 Fixes #9557 --- test/functional/ui/inccommand_spec.lua | 33 +++++++++++++++++++++++++++++++++ 1 file changed, 33 insertions(+) (limited to 'test') diff --git a/test/functional/ui/inccommand_spec.lua b/test/functional/ui/inccommand_spec.lua index 3228d6b7fc..536264019c 100644 --- a/test/functional/ui/inccommand_spec.lua +++ b/test/functional/ui/inccommand_spec.lua @@ -1151,6 +1151,39 @@ describe(":substitute, inccommand=split", function() eq("split", eval("&inccommand")) end) + it("deactivates if 'foldexpr' is slow #9557", function() + insert([[ + a + a + a + a + a + a + a + a + ]]) + source([[ + function! Slowfold(lnum) + sleep 5m + return a:lnum % 3 + endfun + ]]) + command('set redrawtime=1 inccommand=split') + command('set foldmethod=expr foldexpr=Slowfold(v:lnum)') + feed(':%s/a/bcdef') + + -- Assert that 'inccommand' is DISABLED in cmdline mode. + retry(nil, nil, function() + eq('', eval('&inccommand')) + end) + + -- Assert that 'inccommand' is again ENABLED after leaving cmdline mode. + feed([[]]) + retry(nil, nil, function() + eq('split', eval('&inccommand')) + end) + end) + it("clears preview if non-previewable command is edited #5585", function() -- Put a non-previewable command in history. feed_command("echo 'foo'") -- cgit