require('toggleterm').setup({}) local Terminal = require('toggleterm.terminal').Terminal 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', 'jk', [[]], 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.api.nvim_create_autocmd({ "TermOpen" }, { pattern = { 'term://*' }, callback = function() set_terminal_keymaps() end }) local lazygit = Terminal:new({ cmd = 'lazygit', -- dir = vim.fn.getcwd(), hidden = true, direction = 'float', on_open = function(term) vim.api.nvim_buf_set_keymap(term.bufnr, "n", "q", "close", {noremap = true, silent = true}) vim.api.nvim_buf_set_keymap(term.bufnr, 't', '', '', {noremap = true, silent = true}) end, }) function _lazygit_toggle() lazygit:toggle() end