You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
32 lines
1.1 KiB
Lua
32 lines
1.1 KiB
Lua
local M = {}
|
|
|
|
M.enable = function()
|
|
local venn_enabled = vim.inspect(vim.b.venn_enabled)
|
|
if venn_enabled == "nil" then
|
|
vim.b.venn_enabled = true
|
|
vim.cmd[[setlocal ve=all]]
|
|
-- draw a line on HJKL keystokes
|
|
vim.api.nvim_buf_set_keymap(0, "n", "J", "<C-v>j:VBox<CR>", {noremap = true})
|
|
vim.api.nvim_buf_set_keymap(0, "n", "K", "<C-v>k:VBox<CR>", {noremap = true})
|
|
vim.api.nvim_buf_set_keymap(0, "n", "L", "<C-v>l:VBox<CR>", {noremap = true})
|
|
vim.api.nvim_buf_set_keymap(0, "n", "H", "<C-v>h:VBox<CR>", {noremap = true})
|
|
-- draw a box by pressing "f" with visual selection
|
|
vim.api.nvim_buf_set_keymap(0, "v", "f", ":VBox<CR>", {noremap = true})
|
|
else
|
|
vim.cmd[[setlocal ve=]]
|
|
vim.cmd[[mapclear <buffer>]]
|
|
vim.b.venn_enabled = nil
|
|
end
|
|
end
|
|
|
|
M.disable = function()
|
|
local venn_enabled = vim.inspect(vim.b.venn_enabled)
|
|
if venn_enabled ~= "nil" then
|
|
vim.cmd[[setlocal ve=]]
|
|
vim.cmd[[mapclear <buffer>]]
|
|
vim.b.venn_enabled = nil
|
|
end
|
|
end
|
|
|
|
return M
|