neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

commit 899ec829be85b52202f0ce32c455ae4f4d60b85b
parent e855a23c02a7f74b39a8858ce818ede5b9ecd4b1
Author: Jan Edmund Lazo <jan.lazo@mail.utoronto.ca>
Date:   Fri, 26 Dec 2025 04:51:47 -0500

vim-patch:9.0.0145: substitute that joins lines drops text properties (#37108)

Problem:    Substitute that joins lines drops text properties.
Solution:   Move text properties of the last line to the new line.

https://github.com/vim/vim/commit/213bbaf15afc628e5f83d1ae6526631ca8292292

Co-authored-by: Bram Moolenaar <Bram@vim.org>
Diffstat:
Msrc/nvim/ex_cmds.c | 3++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/src/nvim/ex_cmds.c b/src/nvim/ex_cmds.c @@ -4182,7 +4182,8 @@ static int do_sub(exarg_T *eap, const proftime_T timeout, const int cmdpreview_n if (nmatch == 1) { p1 = sub_firstline; } else { - p1 = ml_get(sub_firstlnum + (linenr_T)nmatch - 1); + linenr_T lastlnum = sub_firstlnum + (linenr_T)nmatch - 1; + p1 = ml_get(lastlnum); nmatch_tl += nmatch - 1; } int copy_len = regmatch.startpos[0].col - copycol;