74 lines
1.9 KiB
Lua
74 lines
1.9 KiB
Lua
local M = {
|
|
"jbyuki/venn.nvim", -- draw ascii diagrams
|
|
dependencies = {
|
|
"anuvyklack/hydra.nvim",
|
|
},
|
|
keys = { "<leader>V" },
|
|
}
|
|
|
|
local venn_hint_old = [[
|
|
^^^Draw arrow^^^ Select region with <C-v>
|
|
^ ^ _K_ ^ ^ _f_: surround it with box
|
|
_H_ ^ ^ _L_
|
|
^ ^ _J_ ^ ^ _<Esc>_
|
|
]]
|
|
|
|
local H = require("my.plugins.hydra").hint
|
|
|
|
local venn_hint = H.concat_many_h({
|
|
H.add_title("Draw arrows", H.directional("H", "J", "K", "L", 3)),
|
|
H.add_title(
|
|
"Actions",
|
|
H.concat_many_w({
|
|
H.concat_h("<C-v>", ": select region"),
|
|
H.concat_h(H.pad_right(H.highlight("f"), 5), ": surround with box"),
|
|
H.concat_h(H.pad_right(H.highlight("<Esc>"), 5), ": quit"),
|
|
}, { justify = "left" })
|
|
),
|
|
}, 3).value
|
|
|
|
function M.config()
|
|
local r = "<leader>V"
|
|
vim.keymap.set("n", r .. "H", "<C-v>h:VBox<CR>", { desc = "left" })
|
|
vim.keymap.set("n", r .. "J", "<C-v>j:VBox<CR>", { desc = "down" })
|
|
vim.keymap.set("n", r .. "K", "<C-v>k:VBox<CR>", { desc = "up" })
|
|
vim.keymap.set("n", r .. "L", "<C-v>l:VBox<CR>", { desc = "right" })
|
|
vim.keymap.set("v", r .. "f", ":VBox<CR>", { desc = "box" })
|
|
|
|
-- local Hydra = require("hydra")
|
|
--
|
|
-- Hydra({
|
|
-- name = "Draw Diagram",
|
|
-- hint = venn_hint,
|
|
-- config = {
|
|
-- color = "pink",
|
|
-- invoke_on_body = true,
|
|
-- hint = {
|
|
-- border = "single",
|
|
-- },
|
|
-- on_enter = function()
|
|
-- vim.o.virtualedit = "all"
|
|
-- end,
|
|
-- },
|
|
-- mode = "n",
|
|
-- desc = "[V]enn mode",
|
|
-- body = "<leader>V",
|
|
-- heads = {
|
|
-- { "H", "<C-v>h:VBox<CR>" },
|
|
-- { "J", "<C-v>j:VBox<CR>" },
|
|
-- { "K", "<C-v>k:VBox<CR>" },
|
|
-- { "L", "<C-v>l:VBox<CR>" },
|
|
-- { "f", ":VBox<CR>", { mode = "v" } },
|
|
-- { "<Esc>", nil, { exit = true } },
|
|
-- },
|
|
-- })
|
|
end
|
|
|
|
-- function M.init()
|
|
-- require("which-key").register({
|
|
-- ["<leader>V"] = { name = "[V]enn mode" },
|
|
-- })
|
|
-- end
|
|
|
|
return {}
|