diff options
| author | Marc André Tanner <mat@brain-dump.org> | 2016-02-17 23:00:25 +0100 |
|---|---|---|
| committer | Marc André Tanner <mat@brain-dump.org> | 2016-02-18 16:50:40 +0100 |
| commit | 0774b6e6933ce3093e2ecda1619c876bc4b85696 (patch) | |
| tree | e4e5c65fbb57bb7bec894948a17e22f61580bf61 | |
| parent | 89486c17e6436fe2cbe10cf4e9f7d385aa35c3fe (diff) | |
| download | vis-0774b6e6933ce3093e2ecda1619c876bc4b85696.tar.gz vis-0774b6e6933ce3093e2ecda1619c876bc4b85696.tar.xz | |
vis-lua: add helper functions to implement motions/text objects in lua
| -rw-r--r-- | visrc.lua | 27 |
1 files changed, 27 insertions, 0 deletions
@@ -2,6 +2,33 @@ vis.lexers = require('lexer') vis.events = {} +vis.motion_new = function(vis, key, motion) + local id = vis:motion_register(motion) + if id < 0 then + return false + end + local binding = function() + vis:motion(id) + end + vis:map(vis.MODE_NORMAL, key, binding) + vis:map(vis.MODE_VISUAL, key, binding) + vis:map(vis.MODE_OPERATOR_PENDING, key, binding) + return true +end + +vis.textobject_new = function(vis, key, textobject) + local id = vis:textobject_register(textobject) + if id < 0 then + return false + end + local binding = function() + vis:textobject(id) + end + vis:map(vis.MODE_VISUAL, key, binding) + vis:map(vis.MODE_OPERATOR_PENDING, key, binding) + return true +end + vis.events.win_open = function(win) local files = { |
