aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--README.md2
-rw-r--r--vis-lua.c9
2 files changed, 10 insertions, 1 deletions
diff --git a/README.md b/README.md
index 253f5c9..23c7433 100644
--- a/README.md
+++ b/README.md
@@ -617,7 +617,7 @@ At this time there exists no API stability guarantees.
- `to(line, col)`
- `pos` bytes from start of file (0 based)
- `number` one based index of cursor
- - `selection` a `range`
+ - `selection` read/write access to selection represented as a `range`
- `range` denoted by absolute postions in bytes from the start of the file,
an invalid range is represented as `nil`
- `start`
diff --git a/vis-lua.c b/vis-lua.c
index a17ef3d..9c17849 100644
--- a/vis-lua.c
+++ b/vis-lua.c
@@ -752,6 +752,15 @@ static int window_cursor_newindex(lua_State *L) {
view_cursors_to(cur, pos);
return 0;
}
+
+ if (strcmp(key, "selection") == 0) {
+ Filerange sel = getrange(L, 3);
+ if (text_range_valid(&sel))
+ view_cursors_selection_set(cur, &sel);
+ else
+ view_cursors_selection_clear(cur);
+ return 0;
+ }
}
return newindex_common(L);
}