From ec7453804421f738955a5f4460f44172318d42ff Mon Sep 17 00:00:00 2001 From: luukvbaal Date: Tue, 26 Dec 2023 02:07:58 +0100 Subject: fix(column): correct width after truncated 'statuscolumn' error (#26737) Problem: Default number column has incorrect width after 'statuscolumn' is unset due to an error, but was also truncated. Solution: Reverse 'statuscolumn' error and truncate return branches. --- test/functional/ui/statuscolumn_spec.lua | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) (limited to 'test') diff --git a/test/functional/ui/statuscolumn_spec.lua b/test/functional/ui/statuscolumn_spec.lua index 74a7e3607f..f786355b4d 100644 --- a/test/functional/ui/statuscolumn_spec.lua +++ b/test/functional/ui/statuscolumn_spec.lua @@ -23,7 +23,7 @@ describe('statuscolumn', function() end) it("fails with invalid 'statuscolumn'", function() - command([[set stc=%{v:relnum?v:relnum:(v:lnum==5?invalid:v:lnum)}\ ]]) + command([[set stc=%{v:relnum?v:relnum:(v:lnum==5?'truncate':v:lnum)}%{!v:relnum&&v:lnum==5?invalid:''}\ ]]) screen:expect([[ 4 aaaaa | 3 aaaaa | @@ -43,6 +43,22 @@ describe('statuscolumn', function() command('norm 5G') eq('Vim(redraw):E121: Undefined variable: invalid', pcall_err(command, 'redraw!')) eq('', eval('&statuscolumn')) + screen:expect([[ + 4 aaaaa | + 5 ^aaaaa | + 6 aaaaa | + 7 aaaaa | + 8 aaaaa | + 9 aaaaa | + 10 aaaaa | + 11 aaaaa | + 12 aaaaa | + 13 aaaaa | + 14 aaaaa | + 15 aaaaa | + 16 aaaaa | + | + ]]) end) it("widens with irregular 'statuscolumn' width", function() -- cgit