Hi, curaga!
Clear, let's test this patch and if TinyCore comunity members and maintainers will account it useful I will accomodate it for the BB-current.
Hi, andyj!
Sorry for delay, I took some attempts to lower the memory consumption, but without success. The problem is that when we are using regexp find/replace the output string may be quite big even for very short command. And current vi memory model is : whole text placed in the RAM as a single chunk. So inserting X byte-long string inside the text of Y bytes size may require for at least 3*X+Y bytes for realloc(), don't forget about undo buffer. So I've made the dummy limit of 1M (MAX_SUBSTITUTED_LEN in the source) for substituted string length. Of course the smarter approach is to try allocate 3*X+Y, if failed then stop the operation, and in the case of success free this buf immediately and allocate the X-size buffer. If You will test the patch and approve it is working, I can continue with it. Another thing TODO is storing the last :s command data for further use as default, but this will need touching globals. Not a difficult issue, but not ready yet.
If You will build busybox-1.29.3, don't apply the vi-aimed patch from the repo src directory, apply only this one attached, it includes all: ranges, backward search and regexps.
I will wait for the reply.
Regards!