aboutsummaryrefslogtreecommitdiffstats
path: root/autoload/nvim_treesitter.vim
diff options
context:
space:
mode:
Diffstat (limited to 'autoload/nvim_treesitter.vim')
-rw-r--r--autoload/nvim_treesitter.vim16
1 files changed, 16 insertions, 0 deletions
diff --git a/autoload/nvim_treesitter.vim b/autoload/nvim_treesitter.vim
new file mode 100644
index 000000000..3e5ce40e6
--- /dev/null
+++ b/autoload/nvim_treesitter.vim
@@ -0,0 +1,16 @@
+function! s:visual_node(node_range)
+ let [l:cursor_start, l:cursor_end] = a:node_range
+ if !empty(l:cursor_start) && !empty(l:cursor_end)
+ call cursor(l:cursor_start[0]+1, l:cursor_start[1]+1)
+ normal v
+ call cursor(l:cursor_end[0]+1, l:cursor_end[1])
+ endif
+endfunction
+
+function! nvim_treesitter#select_node_incr()
+ call s:visual_node(luaeval('require"nvim-treesitter.textobj".node_incremental()'))
+endfunction
+
+function! nvim_treesitter#select_context_incr()
+ call s:visual_node(luaeval('require"nvim-treesitter.textobj".context_incremental()'))
+endfunction