remove references to 'Cursor.clipIdx' and delete that function once it is no longer used

This commit is contained in:
2025-09-16 16:08:01 +01:00
parent 578d3af5ec
commit 12478f8ac2
2 changed files with 10 additions and 36 deletions

View File

@@ -1251,38 +1251,4 @@ struct
end
| [] => true
end
(* Prerequisite: lineGap is moved to cursorIdx *)
fun clipIdx (lineGap: LineGap.t, cursorIdx) =
let
val {rightStrings, idx = bufferIdx, ...} = lineGap
in
(* We are trying to check if cursorIdx is within the buffer. *)
case rightStrings of
_ :: _ :: _ =>
(* if there is a string after the hd,
* we are definitely in a valid idx and should return it *)
cursorIdx
| [hd] =>
let
val strIdx = cursorIdx - bufferIdx
in
if strIdx < String.size hd - 1 then
(* if we are before the last char in the string.
* Unix file endings always have \n at the end
* but we do not want cursor to ever go to end
* as vi also does not go to the very end.
* This is why we check strIdx is before the last char.
* *)
cursorIdx
else
(* if end of buffer - 2 is greater than 0, then that;
* else, 0 *)
Int.max (bufferIdx + String.size hd - 2, 0)
end
| [] =>
(* if end of buffer - 2 is greater than 0, then that;
* else, 0 *)
Int.max (bufferIdx - 2, 0)
end
end