local user_config = require('cosmic.core.user') local map = require('cosmic.utils').set_keymap local create_buf_map = require('cosmic.utils').create_buf_map return { 'akinsho/toggleterm.nvim', config = function() require('toggleterm').setup({ direction = 'float', float_opts = { border = user_config.border, }, highlights = { FloatBorder = { link = 'FloatBorder', }, }, }) local Terminal = require('toggleterm.terminal').Terminal local function new_terminal() local terminal = Terminal:new() terminal:toggle() end map('n', 'kn', new_terminal, { desc = 'New terminal' }) map('n', 'k', ':ToggleTerm', { desc = 'Toggle Terminal' }) map('t', 'k', [[]] .. ':ToggleTerm', { desc = 'Toggle Terminal' }) map('n', 'kk', ':TermSelect', { desc = 'Choose open terminal' }) map('t', 'kk', [[]] .. ':TermSelect', { desc = 'Choose open terminal' }) map('t', '', [[]], { desc = 'Visual mode' }) map('t', 'kn', new_terminal, { desc = 'New terminal' }) map('n', 'kr', ':ToggleTermSetName', { desc = 'Rename terminal' }) -- @TODO: close all end, lazy = false, }