local Terminal = require('toggleterm.terminal').Terminal function _G.set_terminal_keymaps() local opts = {buffer = 0} -- vim.keymap.set('t', '', [[]], opts) -- vim.keymap.set('t', 'jk', [[]], opts) vim.keymap.set('t', 'h', [[wincmd h]], opts) vim.keymap.set('t', 'j', [[wincmd j]], opts) vim.keymap.set('t', 'k', [[wincmd k]], opts) vim.keymap.set('t', 'l', [[wincmd l]], opts) vim.keymap.set('t', 'w', [[]], opts) end -- if you only want these mappings for toggle term use term://*toggleterm#* instead vim.cmd('autocmd! TermOpen term://* lua set_terminal_keymaps()') local shell = Terminal:new({ dir = vim.fn.expand('%p'), direction = "float", hidden = true, }) function _shell_toggle() shell:toggle() end vim.api.nvim_set_keymap("n", "", "lua _shell_toggle()", {noremap = true, silent = true})