local M = { "akinsho/toggleterm.nvim", commit = "19aad0f41f47affbba1274f05e3c067e6d718e1e", event = "VeryLazy", } function M.config() local status_ok, toggleterm = pcall(require, "toggleterm") if not status_ok then return end toggleterm.setup { size = 20, open_mapping = [[]], hide_numbers = true, shade_terminals = true, shading_factor = 2, start_in_insert = true, insert_mappings = true, persist_size = true, direction = "float", close_on_exit = true, shell = vim.o.shell, float_opts = { border = "curved", }, } function _G.set_terminal_keymaps() local opts = { noremap = true } -- vim.api.nvim_buf_set_keymap(0, 't', '', [[]], opts) vim.api.nvim_buf_set_keymap(0, "t", "", [[h]], opts) vim.api.nvim_buf_set_keymap(0, "t", "", [[j]], opts) vim.api.nvim_buf_set_keymap(0, "t", "", [[k]], opts) vim.api.nvim_buf_set_keymap(0, "t", "", [[l]], opts) end vim.cmd "autocmd! TermOpen term://* lua set_terminal_keymaps()" local Terminal = require("toggleterm.terminal").Terminal local lazygit = Terminal:new { cmd = "lazygit", hidden = true } function _LAZYGIT_TOGGLE() lazygit:toggle() end end return M