M = {}
local vpos = vim.fn.getpos('v')
local begin_pos = { vpos[2], vpos[3] - 1 }
local end_pos = vim.api.nvim_win_get_cursor(0)
if begin_pos[1] < end_pos[1] or begin_pos[1] == end_pos[1] and begin_pos[2] <= end_pos[2] then
return { start = begin_pos, last = end_pos }
else
return { start = end_pos, last = begin_pos }
end
end
return M