Luigit
repositories / dotfiles

dotfiles

bugabingas dorkfiles

owned by admin

neovim/lua/bugabinga/cmdline/position.lua

Raw
local _anchor = nil

local function at_cursor(cmdline_width)
  local row = math.max(0, vim.fn.screenrow() - 2)
  local col = 0
  local screen_width = vim.o.columns
  local width = cmdline_width or 40
  if col + width > screen_width then
    col = math.max(0, screen_width - width - 1)
  end
  return { row = row, col = col }
end

local function get_cmdline_anchor()
  return _anchor
end

local function set_cmdline_anchor(anchor)
  _anchor = anchor
end

return {
  at_cursor = at_cursor,
  get_cmdline_anchor = get_cmdline_anchor,
  set_cmdline_anchor = set_cmdline_anchor,
}