From 02cc5a0e532ac54b988815269b4a85d5dd4108f4 Mon Sep 17 00:00:00 2001 From: Humza Shahid Date: Thu, 25 Sep 2025 09:09:18 +0100 Subject: [PATCH] make failing test for 'dk' motion pass by appending a newline to the buffer if the buffer becomes empty --- fcore/normal-mode/make-normal-delete.sml | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/fcore/normal-mode/make-normal-delete.sml b/fcore/normal-mode/make-normal-delete.sml index a8d7209..cd8b957 100644 --- a/fcore/normal-mode/make-normal-delete.sml +++ b/fcore/normal-mode/make-normal-delete.sml @@ -497,6 +497,10 @@ struct val buffer = LineGap.goToIdx (endOfLine, buffer) val initialMsg = Fn.initMsgs (lineIdx, length, buffer) val buffer = LineGap.delete (lineIdx, length, buffer) + + val buffer = + if #textLength buffer = 0 then LineGap.append ("\n", buffer) + else buffer in finishAfterDeletingBuffer (app, newCursorIdx, buffer, time, initialMsg) end @@ -512,6 +516,10 @@ struct val newCursorIdx = Cursor.viH (buffer, lineIdx, 1) val buffer = LineGap.goToIdx (newCursorIdx, buffer) val newCursorIdx = Cursor.vi0 (buffer, newCursorIdx) + + val buffer = + if #textLength buffer = 0 then LineGap.append ("\n", buffer) + else buffer in finishAfterDeletingBuffer (app, newCursorIdx, buffer, time, initialMsg) end