mirror of
https://github.com/neovim/neovim.git
synced 2026-04-21 06:45:37 +00:00
feat(lua): vim.text.indent()
Problem: Indenting text is a common task in plugins/scripts for presentation/formatting, yet vim has no way of doing it (especially "dedent", and especially non-buffer text). Solution: Introduce `vim.text.indent()`. It sets the *exact* indentation because that's a more difficult (and thus more useful) task than merely "increasing the current indent" (which is somewhat easy with a `gsub()` one-liner).
This commit is contained in:
@@ -82,7 +82,7 @@ describe('treesitter node API', function()
|
||||
]])
|
||||
|
||||
exec_lua(function()
|
||||
local parser = vim.treesitter.get_parser(0, 'c')
|
||||
local parser = assert(vim.treesitter.get_parser(0, 'c'))
|
||||
local tree = parser:parse()[1]
|
||||
_G.root = tree:root()
|
||||
vim.treesitter.language.inspect('c')
|
||||
@@ -92,7 +92,7 @@ describe('treesitter node API', function()
|
||||
end
|
||||
end)
|
||||
|
||||
exec_lua 'node = root:descendant_for_range(0, 11, 0, 16)'
|
||||
exec_lua 'node = root:descendant_for_range(0, 9, 0, 14)'
|
||||
eq('int x', lua_eval('node_text(node)'))
|
||||
|
||||
exec_lua 'node = node:next_sibling()'
|
||||
|
||||
Reference in New Issue
Block a user