require('toggleterm').setup{ open_mapping = [[\t]], size = 20, hide_numbers = true, -- hide the number column in toggleterm buffers persist_size = false, } function _G.set_terminal_keymaps() local opts = {buffer = 0} vim.keymap.set('t', '', [[wincmd h]], opts) vim.keymap.set('t', '', [[wincmd j]], opts) vim.keymap.set('t', '', [[wincmd k]], opts) vim.keymap.set('t', '', [[wincmd l]], opts) end vim.cmd('autocmd! TermOpen term://* lua set_terminal_keymaps()') local Terminal = require('toggleterm.terminal').Terminal local lazygit = Terminal:new({ cmd = "lazygit", count = 99, direction = 'float' }) local ranger = Terminal:new({ cmd = "ranger", count = 100, direction = 'float' }) function _lazygit_toggle() lazygit:toggle() end function _ranger_toggle() ranger:toggle() end vim.api.nvim_set_keymap("n", "g", "lua _lazygit_toggle()", {noremap = true, silent = true}) vim.api.nvim_set_keymap("n", "r", "lua _ranger_toggle()", {noremap = true, silent = true})