1
0
forked from aniani/vim

patch 9.1.1213: cannot :put while keeping indent

Problem:  cannot :put while keeping indent
          (Peter Aronoff)
Solution: add the :iput ex command (64-bitman)

fixes: #16225
closes: #16886

Signed-off-by: 64-bitman <60551350+64-bitman@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
64-bitman
2025-03-16 21:10:47 +01:00
committed by Christian Brabandt
parent 7ceca3eb00
commit 250739d442
18 changed files with 268 additions and 81 deletions

View File

@@ -2188,15 +2188,17 @@ generate_SOURCE(cctx_T *cctx, int sid)
}
/*
* Generate an ISN_PUT instruction.
* Generate an ISN_PUT or ISN_IPUT instruction depending on fixindent.
*/
int
generate_PUT(cctx_T *cctx, int regname, linenr_T lnum)
generate_PUT(cctx_T *cctx, int regname, linenr_T lnum, int fixindent)
{
isn_T *isn;
RETURN_OK_IF_SKIP(cctx);
if ((isn = generate_instr(cctx, ISN_PUT)) == NULL)
isn = (fixindent) ? generate_instr(cctx, ISN_IPUT) :
generate_instr(cctx, ISN_PUT);
if (isn == NULL)
return FAIL;
isn->isn_arg.put.put_regname = regname;
isn->isn_arg.put.put_lnum = lnum;