diff options
Diffstat (limited to 'lua/warp/col_selectors/grid.lua')
-rw-r--r-- | lua/warp/col_selectors/grid.lua | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/lua/warp/col_selectors/grid.lua b/lua/warp/col_selectors/grid.lua index ce99b96..7ad5847 100644 --- a/lua/warp/col_selectors/grid.lua +++ b/lua/warp/col_selectors/grid.lua @@ -44,7 +44,18 @@ M.strategy = function() display = function() local curpos = vim.api.nvim_win_get_cursor(0) local line_at = vim.fn.getline(curpos[1]) - local unfiltered = big_line:sub(1, #line_at + 1) + local current_win = vim.api.nvim_get_current_win(); + local wininfo = vim.fn.getwininfo(current_win)[1] + + local width = wininfo.width - wininfo.textoff + if vim.o.virtualedit ~= 'all' then + width = math.min(#line_at + 1, width) + end + if vim.o.virtualedit == 'onemore' then + width = width + 1 + end + + local unfiltered = big_line:sub(1, width) local line = unfiltered if filter then |