aboutsummaryrefslogtreecommitdiff
path: root/vis-lua.c
diff options
context:
space:
mode:
authorMarc André Tanner <mat@brain-dump.org>2016-04-16 11:50:17 +0200
committerMarc André Tanner <mat@brain-dump.org>2016-04-16 12:52:04 +0200
commit2499521dc70b064007df652af8e68eaad8acbf2b (patch)
treed2f504bfa0adbf5a7c3ca96901f025aada5e35ad /vis-lua.c
parentb02c26e64aca90c3d2f3af0e94a985dc43831655 (diff)
downloadvis-2499521dc70b064007df652af8e68eaad8acbf2b.tar.gz
vis-2499521dc70b064007df652af8e68eaad8acbf2b.tar.xz
vis-lua: add cursor.selection property
Diffstat (limited to 'vis-lua.c')
-rw-r--r--vis-lua.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/vis-lua.c b/vis-lua.c
index 3533681..4b484b2 100644
--- a/vis-lua.c
+++ b/vis-lua.c
@@ -645,6 +645,22 @@ static int window_cursor_index(lua_State *L) {
lua_pushunsigned(L, view_cursors_number(cur)+1);
return 1;
}
+
+ if (strcmp(key, "selection") == 0) {
+ Filerange sel = view_cursors_selection_get(cur);
+ if (text_range_valid(&sel)) {
+ lua_createtable(L, 0, 2);
+ lua_pushstring(L, "start");
+ lua_pushunsigned(L, sel.start);
+ lua_settable(L, -3);
+ lua_pushstring(L, "finish");
+ lua_pushunsigned(L, sel.end);
+ lua_settable(L, -3);
+ } else {
+ lua_pushnil(L);
+ }
+ return 1;
+ }
}
return index_common(L);