change type of SEARCH message to take a DFA, instead of a searchString
This commit is contained in:
@@ -13,7 +13,7 @@ struct
|
||||
let
|
||||
val buffer = LineGap.goToIdx (low, buffer)
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val msgs = SEARCH (buffer, raise Fail "searchString", time) :: msgs
|
||||
val msgs = SEARCH (buffer, #dfa app, time) :: msgs
|
||||
|
||||
val buffer = LineGap.goToIdx (low - 1111, buffer)
|
||||
val (buffer, searchList) =
|
||||
@@ -235,8 +235,7 @@ struct
|
||||
|
||||
val buffer = LineGap.delete (low, length, buffer)
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg =
|
||||
SEARCH (buffer, raise Fail "searchString", time) :: initialMsg
|
||||
val initialMsg = SEARCH (buffer, #dfa app, time) :: initialMsg
|
||||
|
||||
val buffer = LineGap.goToIdx (cursorIdx - 1111, buffer)
|
||||
val (buffer, searchList) =
|
||||
@@ -705,8 +704,7 @@ struct
|
||||
|
||||
val buffer = LineGap.delete (0, cursorIdx, buffer)
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg =
|
||||
SEARCH (buffer, raise Fail "searchString", time) :: initialMsg
|
||||
val initialMsg = SEARCH (buffer, dfa, time) :: initialMsg
|
||||
|
||||
val buffer = LineGap.goToIdx (cursorIdx - 1111, buffer)
|
||||
val (buffer, searchList) =
|
||||
@@ -754,8 +752,7 @@ struct
|
||||
|
||||
val buffer = LineGap.delete (low, length, buffer)
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg =
|
||||
SEARCH (buffer, raise Fail "searchString", time) :: initialMsg
|
||||
val initialMsg = SEARCH (buffer, dfa, time) :: initialMsg
|
||||
|
||||
val buffer = LineGap.goToIdx (low - 1111, buffer)
|
||||
val (buffer, searchList) = SearchList.buildRange (buffer, low + 1111, dfa)
|
||||
@@ -813,8 +810,7 @@ struct
|
||||
val buffer = LineGap.delete (low, length, buffer)
|
||||
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg =
|
||||
SEARCH (buffer, raise Fail "searchString", time) :: initialMsg
|
||||
val initialMsg = SEARCH (buffer, dfa, time) :: initialMsg
|
||||
|
||||
val buffer = LineGap.goToIdx (low - 1111, buffer)
|
||||
val (buffer, searchList) =
|
||||
@@ -846,8 +842,7 @@ struct
|
||||
val buffer = LineGap.delete (low, length, buffer)
|
||||
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg =
|
||||
SEARCH (buffer, raise Fail "searchString", time) :: initialMsg
|
||||
val initialMsg = SEARCH (buffer, dfa, time) :: initialMsg
|
||||
|
||||
val buffer = LineGap.goToIdx (low - 1111, buffer)
|
||||
val (buffer, searchList) =
|
||||
@@ -876,8 +871,7 @@ struct
|
||||
|
||||
val buffer = LineGap.delete (low, length, buffer)
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg =
|
||||
SEARCH (buffer, raise Fail "searchString", time) :: initialMsg
|
||||
val initialMsg = SEARCH (buffer, dfa, time) :: initialMsg
|
||||
|
||||
val buffer = LineGap.goToIdx (low - 1111, buffer)
|
||||
val (buffer, searchList) =
|
||||
@@ -990,8 +984,7 @@ struct
|
||||
low
|
||||
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg =
|
||||
SEARCH (buffer, raise Fail "searchString", time) :: initialMsg
|
||||
val initialMsg = SEARCH (buffer, dfa, time) :: initialMsg
|
||||
|
||||
val buffer = LineGap.goToIdx (low - 1111, buffer)
|
||||
val (buffer, searchList) =
|
||||
|
||||
@@ -31,9 +31,9 @@ struct
|
||||
let
|
||||
open MailboxType
|
||||
|
||||
val {cursorIdx = origCursorIdx, ...} = app
|
||||
val {cursorIdx = origCursorIdx, dfa, ...} = app
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg = [SEARCH (buffer, raise Fail "searchString", time)]
|
||||
val initialMsg = [SEARCH (buffer, dfa, time)]
|
||||
in
|
||||
NormalDelete.finishAfterDeletingBuffer
|
||||
(app, origCursorIdx, buffer, time, initialMsg)
|
||||
@@ -94,7 +94,7 @@ struct
|
||||
let
|
||||
open MailboxType
|
||||
|
||||
val {cursorIdx, buffer, ...} = app
|
||||
val {cursorIdx, buffer, dfa, ...} = app
|
||||
val buffer = LineGap.goToIdx (cursorIdx, buffer)
|
||||
|
||||
val lineStart = Cursor.vi0 (buffer, cursorIdx)
|
||||
@@ -127,7 +127,7 @@ struct
|
||||
loop (nextLine, buffer, count - 1)
|
||||
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg = [SEARCH (buffer, raise Fail "searchString", time)]
|
||||
val initialMsg = [SEARCH (buffer, dfa, time)]
|
||||
in
|
||||
NormalDelete.finishAfterDeletingBuffer
|
||||
(app, newCursorIdx, buffer, time, initialMsg)
|
||||
|
||||
@@ -77,8 +77,12 @@ struct
|
||||
, ...
|
||||
} = app
|
||||
|
||||
val dfa =
|
||||
if caseSensitive then CaseSensitiveDfa.fromString searchString
|
||||
else CaseInsensitiveDfa.fromString searchString
|
||||
|
||||
val buffer = LineGap.goToStart buffer
|
||||
val initialMsg = [SEARCH (buffer, searchString, time)]
|
||||
val initialMsg = [SEARCH (buffer, dfa, time)]
|
||||
|
||||
(* move LineGap to first line displayed on screen *)
|
||||
val buffer = LineGap.goToLine (startLine, buffer)
|
||||
@@ -100,10 +104,6 @@ struct
|
||||
val msgs = DRAW drawMsg :: initialMsg
|
||||
|
||||
val mode = NORMAL_MODE ""
|
||||
|
||||
val dfa =
|
||||
if caseSensitive then CaseSensitiveDfa.fromString searchString
|
||||
else CaseInsensitiveDfa.fromString searchString
|
||||
in
|
||||
NormalSearchModeWith.returnToNormalMode
|
||||
(app, buffer, tempSearchList, startLine, mode, dfa, msgs)
|
||||
|
||||
@@ -1 +1,2 @@
|
||||
structure SearchMsg = struct type t = LineGap.t * string * Time.time end
|
||||
structure SearchMsg =
|
||||
struct type t = LineGap.t * int vector vector * Time.time end
|
||||
|
||||
@@ -5,8 +5,9 @@ struct
|
||||
(* Prerequisite to sending message: move buffer to end. *)
|
||||
fun loop () =
|
||||
let
|
||||
val (buffer, searchString, time) = Mailbox.recv SearchMailbox.mailbox
|
||||
val searchList = SearchList.build (buffer, searchString)
|
||||
val (buffer, dfa, time) = Mailbox.recv SearchMailbox.mailbox
|
||||
val searchList =
|
||||
raise Fail "todo: reimplement full builder for searchList"
|
||||
val msg = InputMsg.WITH_SEARCH_LIST (searchList, time)
|
||||
val () = InputMailbox.append msg
|
||||
in
|
||||
|
||||
Reference in New Issue
Block a user