[PATCH 4/8] vi: 'ZZ' should warn if there are more files to edit

Ron Yorston rmy at pobox.com
Sun Apr 25 10:53:23 UTC 2021


When 'ZZ' was used to save the current file and more files were
available to edit BusyBox vi immediately moved on to the next file.
The correct behaviour is to issue a warning.

function                                             old     new   delta
do_cmd                                              4673    4724     +51
------------------------------------------------------------------------------
(add/remove: 0/0 grow/shrink: 1/0 up/down: 51/0)               Total: 51 bytes

Signed-off-by: Ron Yorston <rmy at pobox.com>
---
 editors/vi.c | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/editors/vi.c b/editors/vi.c
index a38f2189d..7de55d1e6 100644
--- a/editors/vi.c
+++ b/editors/vi.c
@@ -4010,6 +4010,14 @@ static void do_cmd(int c)
 		} else {
 			editing = 0;
 		}
+		// are there other files to edit?
+		j = cmdline_filecnt - optind - 1;
+		if (editing == 0 && j > 0) {
+			editing = 1;
+			modified_count = 0;
+			last_modified_count = -1;
+			status_line_bold("%u more file(s) to edit", j);
+		}
 		break;
 	case '^':			// ^- move to first non-blank on line
 		dot_begin();
-- 
2.30.2



More information about the busybox mailing list