diff options
author | luukvbaal <31730729+luukvbaal@users.noreply.github.com> | 2023-02-28 03:19:58 +0100 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-02-28 10:19:58 +0800 |
commit | 9a271f6afd7a9b1c17d694b57ee1f489496000aa (patch) | |
tree | fc30b3c6e8ef7ddcc1aa2c1a4ec66a45901df9f4 | |
parent | f113cba3ec127201f54094f9174b50ee3001fbee (diff) | |
download | rneovim-9a271f6afd7a9b1c17d694b57ee1f489496000aa.tar.gz rneovim-9a271f6afd7a9b1c17d694b57ee1f489496000aa.tar.bz2 rneovim-9a271f6afd7a9b1c17d694b57ee1f489496000aa.zip |
fix(column): cmdwin cursor is offset with 'statuscolumn' (#22445)
-rw-r--r-- | src/nvim/drawline.c | 2 | ||||
-rw-r--r-- | test/functional/ui/statuscolumn_spec.lua | 20 |
2 files changed, 21 insertions, 1 deletions
diff --git a/src/nvim/drawline.c b/src/nvim/drawline.c index cd815da458..bf8649afe0 100644 --- a/src/nvim/drawline.c +++ b/src/nvim/drawline.c @@ -1199,7 +1199,7 @@ int win_line(win_T *wp, linenr_T lnum, int startrow, int endrow, bool nochange, statuscol.draw = true; statuscol.sattrs = sattrs; statuscol.foldinfo = foldinfo; - statuscol.width = win_col_off(wp); + statuscol.width = win_col_off(wp) - (cmdwin_type != 0 && wp == curwin); statuscol.use_cul = use_cursor_line_sign(wp, lnum); statuscol.sign_cul_attr = statuscol.use_cul ? sign_cul_attr : 0; statuscol.num_attr = sign_num_attr ? sign_num_attr diff --git a/test/functional/ui/statuscolumn_spec.lua b/test/functional/ui/statuscolumn_spec.lua index 287686cf37..f997546c7c 100644 --- a/test/functional/ui/statuscolumn_spec.lua +++ b/test/functional/ui/statuscolumn_spec.lua @@ -478,4 +478,24 @@ describe('statuscolumn', function() | ]]) end) + + it('works with cmdwin', function() + feed(':set stc=%l<CR>q:k$') + screen:expect([[ + 7 aaaaa | + 8 aaaaa | + 9 aaaaa | + 10aaaaa | + [No Name] [+] | + :1set stc=%^l | + :2 | + ~ | + ~ | + ~ | + ~ | + ~ | + [Command Line] | + : | + ]]) + end) end) |