Add Text To A Neovim Buffer With Lua
Use `vim.api.nvim_buf_set_lines()` to write lines to a Neovim buffer. For example, this will append two lines to the end of a the
Code
local bufnr = 25
local start_line = -1
local end_line = -1
local lines = { "alfa" }
vim.api.nvim_buf_set_lines(
bufnr, start_line, end_line, false, lines
)
From the docs: nvim_buf_set_lines({buffer}, {start}, {end}, {strict_indexing}, {replacement}) Sets (replaces) a line-range in the buffer. Indexing is zero-based, end-exclusive. Negative indices are interpreted as length+1+index: -1 refers to the index past the end. So to change or delete the last element use start=-2 and end=-1. To insert lines at a given index, set `start` and `end` to the same index. To delete a range of lines, set `replacement` to an empty array. Out-of-bounds indices are clamped to the nearest valid value, unless `strict_indexing` is set. Attributes: not allowed when |textlock| is active Parameters: {buffer} Buffer handle, or 0 for current buffer {start} First line index {end} Last line index (exclusive) {strict_indexing} Whether out-of-bounds should be an error. {replacement} Array of lines to use as replacement