From be1fbe38b31b6046d396407c4efbf238941c6b08 Mon Sep 17 00:00:00 2001 From: "Justin M. Keyes" Date: Fri, 21 Feb 2025 02:02:32 +0100 Subject: 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). --- test/functional/ex_cmds/source_spec.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'test/functional/ex_cmds/source_spec.lua') diff --git a/test/functional/ex_cmds/source_spec.lua b/test/functional/ex_cmds/source_spec.lua index dba158962f..8a15aa04d1 100644 --- a/test/functional/ex_cmds/source_spec.lua +++ b/test/functional/ex_cmds/source_spec.lua @@ -227,7 +227,7 @@ describe(':source', function() feed('GVkk') feed_command(':source') - eq(' "\\ a\n \\ b', exec_lua('return _G.a')) + eq(' "\\ a\n \\ b', exec_lua('return _G.a')) end) it('whole buffer', function() @@ -247,7 +247,7 @@ describe(':source', function() feed_command(':source') eq(12, eval('g:c')) - eq(' \\ 1\n "\\ 2', exec_lua('return _G.a')) + eq(' \\ 1\n "\\ 2', exec_lua('return _G.a')) eq(':source (no file)', api.nvim_get_var('sfile_value')) eq(':source (no file)', api.nvim_get_var('stack_value')) eq(':source (no file)', api.nvim_get_var('script_value')) -- cgit