Move the caret one unit left or right.
- edit: the text being edited.
- unit: how far to go.
- direction: -1 for left, 1 for right.
- extend: keep the anchor, so the selection grows or shrinks.
edit: Text_Edit;
defer free_text_edit(*edit);
set_contents(*edit, "one two");
move_by(*edit, .WORD, 1);
assert(edit.cursor == 3);
move_by(*edit, .DOCUMENT, 1, extend = true);
assert(selected_text(*edit) == " two");move_by :: (edit: *Text_Edit, unit: Unit, direction: int, extend: bool = false)
Move the caret one unit left or right.
Parameters
- edit: *Text_Edit
- the text being edited.
- unit: Unit
- how far to go.
- direction: int
- -1 for left, 1 for right.
- extend: bool = false
- keep the anchor, so the selection grows or shrinks.
edit: Text_Edit;
defer free_text_edit(*edit);
set_contents(*edit, "one two");
move_by(*edit, .WORD, 1);
assert(edit.cursor == 3);
move_by(*edit, .DOCUMENT, 1, extend = true);
assert(selected_text(*edit) == " two");