summary refs log tree commit diff
path: root/.config/nvim/lua/mod/utils.lua
blob: 1f3cd8b44f33314c9d4528b3e1cbba125b27c55d (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
local M = {}

function M.buf_edit_lines(buf, start_row, end_row, callback)
  local lines = {}
  lines = vim.api.nvim_buf_get_lines(buf, start_row, end_row, true)
  lines = callback(lines)
  return vim.api.nvim_buf_set_lines(buf, start_row, end_row, true, lines)
end

function M.edit_current_line(callback)
  local row, _ = unpack(vim.api.nvim_win_get_cursor(0))
  return M.buf_edit_lines(0, row - 1, row, callback)
end

return M