-- ============================================================ -- TOGGLETERM -- Floating terminal -- ============================================================ vim.pack.add { { src = 'https://github.com/akinsho/toggleterm.nvim', version = vim.version.range '*', }, } require('toggleterm').setup { size = 20, open_mapping = [[tt]], hide_numbers = true, shade_filetypes = {}, shade_terminals = true, start_in_insert = true, insert_mappings = true, terminal_mappings = true, persist_size = true, persist_mode = true, direction = 'float', close_on_exit = true, shell = vim.o.shell, float_opts = { border = 'rounded', winblend = 0, }, } -- ============================================================ -- TERMINAL KEYMAPS -- ============================================================ vim.api.nvim_create_autocmd('TermOpen', { pattern = 'term://*', callback = function() local opts = { buffer = 0 } -- ESC exits terminal insert mode vim.keymap.set('t', '', [[]], opts) -- Better window navigation 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, })