From 3e4ce0d7db1a308a8e0d6051e8020211bd84ea94 Mon Sep 17 00:00:00 2001 From: Saumit Dinesan Date: Wed, 19 Jul 2023 02:17:18 +0530 Subject: nvim: Adding toggleterm plugin + whickey spacebinds w term,lazygit and packer --- .config/nvim/lua/justsaumit/plugins.lua | 3 +++ .config/nvim/lua/justsaumit/toggleterm-config.lua | 16 ++++++++++++++ .config/nvim/lua/justsaumit/which-key-config.lua | 27 ++++++++++++++++++++++- 3 files changed, 45 insertions(+), 1 deletion(-) create mode 100644 .config/nvim/lua/justsaumit/toggleterm-config.lua (limited to '.config/nvim/lua/justsaumit') diff --git a/.config/nvim/lua/justsaumit/plugins.lua b/.config/nvim/lua/justsaumit/plugins.lua index c14149b..63aa83a 100644 --- a/.config/nvim/lua/justsaumit/plugins.lua +++ b/.config/nvim/lua/justsaumit/plugins.lua @@ -86,6 +86,9 @@ return packer.startup(function(use) --Markdown + Zenmode --Telescope use {'nvim-telescope/telescope.nvim', tag = '0.1.2', requires = { {'nvim-lua/plenary.nvim'} }} +-- ToggleTerm + use ('akinsho/toggleterm.nvim') + -- use "rafamadriz/friendly-snippets" -- a bunch of snippets to use -- -- Comments - Toggle comments in Neovim diff --git a/.config/nvim/lua/justsaumit/toggleterm-config.lua b/.config/nvim/lua/justsaumit/toggleterm-config.lua new file mode 100644 index 0000000..b1579cd --- /dev/null +++ b/.config/nvim/lua/justsaumit/toggleterm-config.lua @@ -0,0 +1,16 @@ +require'toggleterm'.setup{ + size = 20, + open_mapping = [[]], + hide_numbers = true, -- hide the number column in toggleterm buffers + shade_filetypes = {}, + autochdir = false, + shade_terminals = true, + shading_factor = 1, + start_in_insert = true, + insert_mappings = true, -- whether or not the open mapping applies in insert mode + terminal_mappings = true, -- whether or not the open mapping applies in the opened terminals + persist_size = true, + direction = 'horizontal', + close_on_exit = true, + shell = '/usr/bin/zsh', +} diff --git a/.config/nvim/lua/justsaumit/which-key-config.lua b/.config/nvim/lua/justsaumit/which-key-config.lua index 25ec150..16ffedd 100644 --- a/.config/nvim/lua/justsaumit/which-key-config.lua +++ b/.config/nvim/lua/justsaumit/which-key-config.lua @@ -1,13 +1,38 @@ local wk = require("which-key") +local Terminal = require('toggleterm.terminal').Terminal +local toggle_float = function() + local float = Terminal:new({ direction = "float" }) + return float:toggle() +end +local toggle_lazygit = function() + local lazygit = Terminal:new({ cmd = "lazygit", direction = "float" }) + return lazygit:toggle() +end local mappings = { q = {":q", "Quit"}, Z = {":wq", "Save and Quit"}, w = {":w", "Save"}, x ={":bdelete", "Close"}, + E = { ":e ~/.config/nvim/init.lua", "Edit config" }, f = { ":Telescope find_files", "Telescope Find Files" }, h = { ":Telescope find_files hidden=true", "Telescope Find Files" }, g = { ":Telescope live_grep", "Telescope Live Grep" }, - r = { ":Telescope oldfiles", "Recent files" } + r = { ":Telescope oldfiles", "Recent files" }, + t = { + t = { ":ToggleTerm", "Split Below" }, + f = { toggle_float, "Floating Terminal" }, + l = { toggle_lazygit, "Lazygit" }, + }, + p = { + name = "Packer", + s = { ":PackerSync", "Sync Plugins" }, + r = { ":PackerClean", "Remove Unused Plugins" }, + c = { ":PackerCompile profile=true", "Recompile Plugins" }, + i = { ":PackerInstall", "Install Plugins" }, + p = { ":PackerProfile", "Packer Profile" }, + S = { ":PackerStatus", "Packer Status" }, + u = { ":PackerUpdate", "Update Plugins" } + }, } local opts = {prefix = ''} wk.register(mappings, opts) -- cgit v1.2.3