From 42877bdebc5386df3764d28e165890bf0bf3d8c2 Mon Sep 17 00:00:00 2001 From: Noah Masur <7386960+nmasur@users.noreply.github.com> Date: Wed, 13 Jul 2022 12:53:51 +0000 Subject: [PATCH] add toggleterm plugin --- modules/editor/neovim/lua/keybinds.lua | 7 ++-- .../editor/neovim/lua/packer/toggleterm.lua | 37 +++++++++++++++++++ modules/editor/neovim/lua/packer_init.lua | 1 + 3 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 modules/editor/neovim/lua/packer/toggleterm.lua diff --git a/modules/editor/neovim/lua/keybinds.lua b/modules/editor/neovim/lua/keybinds.lua index bdfa235..6db516a 100644 --- a/modules/editor/neovim/lua/keybinds.lua +++ b/modules/editor/neovim/lua/keybinds.lua @@ -49,9 +49,9 @@ key("n", "wh", ":split") key("n", "wm", ":only") -- Vimrc editing -key("n", "rr", ":luafile $MYVIMRC") -key("n", "rp", ":luafile $MYVIMRC:PackerInstall:") -key("n", "rc", ":luafile $MYVIMRC:PackerCompile") +key("n", "rr", ":luafile $HOME/.config/nvim/init.lua") +key("n", "rp", ":luafile $HOME/.config/nvim/init.lua:PackerInstall:") +key("n", "rc", ":luafile $HOME/.config/nvim/init.lua:PackerCompile") -- Keep cursor in place key("n", "n", "nzz") @@ -71,7 +71,6 @@ key("n", "", ":vertical resize -2", { silent = true }) key("n", "", ":vertical resize +2", { silent = true }) -- Other -key("t", "", "") --- Exit terminal mode key("n", "", ":noh", { silent = true }) --- Clear search in VimWiki key("n", "Y", "y$") --- Copy to end of line key("v", "", "y:%s/+//gc") --- Substitute selected diff --git a/modules/editor/neovim/lua/packer/toggleterm.lua b/modules/editor/neovim/lua/packer/toggleterm.lua new file mode 100644 index 0000000..09bbb59 --- /dev/null +++ b/modules/editor/neovim/lua/packer/toggleterm.lua @@ -0,0 +1,37 @@ +local M = {} + +M.packer = function(use) + use({ + "akinsho/toggleterm.nvim", + tag = "v2.*", + config = function() + require("toggleterm").setup({ + open_mapping = [[]], + hide_numbers = true, + direction = "float", + }) + + vim.keymap.set("t", "", "") --- Exit terminal mode + + -- Only set these keymaps for toggleterm + vim.api.nvim_create_autocmd("TermOpen", { + pattern = "term://*toggleterm#*", + callback = function() + -- vim.keymap.set("t", "", "") --- Exit terminal mode + vim.keymap.set("t", "", "h") + vim.keymap.set("t", "", "j") + vim.keymap.set("t", "", "k") + vim.keymap.set("t", "", "l") + end, + }) + + local terminal = require("toggleterm.terminal").Terminal + local nixpkgs = terminal:new({ cmd = "nix repl ''" }) + function NIXPKGS_TOGGLE() + nixpkgs:toggle() + end + end, + }) +end + +return M diff --git a/modules/editor/neovim/lua/packer_init.lua b/modules/editor/neovim/lua/packer_init.lua index 9491a9a..519c893 100644 --- a/modules/editor/neovim/lua/packer_init.lua +++ b/modules/editor/neovim/lua/packer_init.lua @@ -25,6 +25,7 @@ require("packer").startup(function(use) require("packer.completion").packer(use) require("packer.syntax").packer(use) require("packer.telescope").packer(use) + require("packer.toggleterm").packer(use) -- Auto-install after bootstrapping if PACKER_BOOTSTRAP then