From cb88db8cfcd511a87889484c4b2ba1dfb23ff2ea Mon Sep 17 00:00:00 2001 From: TorchedSammy <38820196+TorchedSammy@users.noreply.github.com> Date: Fri, 13 May 2022 20:52:48 -0400 Subject: [PATCH] feat: add hilbish.vim interface (closes #114) --- nature/init.lua | 1 + nature/vim.lua | 19 +++++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 nature/vim.lua diff --git a/nature/init.lua b/nature/init.lua index f1f7dbb..7dd8953 100644 --- a/nature/init.lua +++ b/nature/init.lua @@ -7,6 +7,7 @@ package.path = package.path .. ';' .. hilbish.dataDir .. '/?/init.lua' require 'nature.commands' require 'nature.completions' require 'nature.opts' +require 'nature.vim' local shlvl = tonumber(os.getenv 'SHLVL') if shlvl ~= nil then diff --git a/nature/vim.lua b/nature/vim.lua new file mode 100644 index 0000000..0d10f94 --- /dev/null +++ b/nature/vim.lua @@ -0,0 +1,19 @@ +local vim = {} +hilbish.vim = { + registers = {} +} + +setmetatable(hilbish.vim.registers, { + __newindex = function(_, k, v) + hilbish.editor.setVimRegister(k, v) + end, + __index = function(_, k) + return hilbish.editor.getVimRegister(k) + end +}) + +setmetatable(hilbish.vim, { + __index = function(_, k) + if k == 'mode' then return hilbish.vimMode end + end +})