diff --git a/lua/keys.lua b/lua/keys.lua index 9052587..ba81c40 100644 --- a/lua/keys.lua +++ b/lua/keys.lua @@ -4,3 +4,24 @@ vim.api.nvim_set_keymap("n", "fb", "lua require('telescope.builtin' vim.api.nvim_set_keymap("n", "fh", "lua require('telescope.builtin').help_tags()", {silent = true}) vim.api.nvim_set_keymap("n", "t", "TodoTelescope", {silent = true}) vim.api.nvim_set_keymap("", "q:", "", {silent = true}) + +function _G.toggle_venn() + 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", "j:VBox", {noremap = true}) + vim.api.nvim_buf_set_keymap(0, "n", "K", "k:VBox", {noremap = true}) + vim.api.nvim_buf_set_keymap(0, "n", "L", "l:VBox", {noremap = true}) + vim.api.nvim_buf_set_keymap(0, "n", "H", "h:VBox", {noremap = true}) + -- draw a box by pressing "b" with visual selection + vim.api.nvim_buf_set_keymap(0, "v", "b", ":VBox", {noremap = true}) + else + vim.cmd [[setlocal ve=]] + vim.cmd [[mapclear ]] + vim.b.venn_enabled = nil + end +end +-- toggle keymappings for venn using v +vim.api.nvim_set_keymap("n", "v", ":lua toggle_venn()", {noremap = true}) diff --git a/lua/plugins.lua b/lua/plugins.lua index 18acd2c..5898dd8 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -177,7 +177,8 @@ return require("packer").startup( "vuki656/package-info.nvim", config = function() require("package-info").setup() - end + end, + requires = "MunifTanjim/nui.nvim" } use {"npxbr/glow.nvim", run = "GlowInstall"} use { @@ -196,5 +197,6 @@ return require("packer").startup( require("gitsigns").setup() end } + use "jbyuki/venn.nvim" end ) diff --git a/setup.sh b/setup.sh index cfda216..a46aab2 100755 --- a/setup.sh +++ b/setup.sh @@ -10,4 +10,5 @@ vscode-css-languageserver-bin \ vscode-html-languageserver-bin \ vscode-json-languageserver \ vscode-langservers-extracted \ -vscode-langservers-extracted +vscode-langservers-extracted \ +bash-language-server