[Toybox] [PATCH] vi.c: line ranges, fixed line gotos, CTRL-D, etc

Rob Landley rob at landley.net
Sun Oct 1 14:55:44 PDT 2023


On 10/1/23 13:33, Jarno Mäkipää wrote:
>> A lot of ex commands don't necessarily do movement, 's' for example for example shouldn't
>> effect cursor position. If a "counter" (Line range) is given, it loops through the line range
>> and executes the command for each line before going down to the next one, this is why 'd' goes up after
>> deleting the line, It should stay on the current line so we don't skip any.
> 
> By looking man page for ex. There is this [2addr]
> cmd[buffer][count][flags] logic that some commands follow, where 2addr
> argument is relatively same thing as movement in vi. By meaning that
> you search beginning and end positions for operation. But then again
> most of commands dont exactly follow this and there is special case
> after special case. making generic ex command parsing logic might be
> pain to implement.

In the absence of a test suite, could we at least fill out the help text to list
the implemented features? (You don't even have to describe what they do, just...
what's there?)

I can do it myself eventually, but I'm already spinning enough plates that
swap-thrashing overhead is dominating the runtime...

Rob


More information about the Toybox mailing list