From 1571c5cd9ca8da5c6bf86f3af9fa84792f401606 Mon Sep 17 00:00:00 2001 From: Thek4n Date: Fri, 24 Nov 2023 15:40:38 +0300 Subject: [PATCH] ref(nvim): toggleterm configs --- .../nvim/lua/base/plugins/toggleterm.lua | 32 ++++++++++++------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/home/user/.config/nvim/lua/base/plugins/toggleterm.lua b/home/user/.config/nvim/lua/base/plugins/toggleterm.lua index 7c765c9..0b2220c 100644 --- a/home/user/.config/nvim/lua/base/plugins/toggleterm.lua +++ b/home/user/.config/nvim/lua/base/plugins/toggleterm.lua @@ -1,21 +1,31 @@ -function SET_TERM_KEYMAP(bufnr, key, cmd) + +local function set_term_keymap(key, cmd) + local opts = { noremap = true, silent = true } local key_string = string.format([[%s]], key) local cmd_string = string.format([[%s]], cmd) - vim.api.nvim_buf_set_keymap(bufnr, 't', key_string, cmd_string, { noremap = true }) + vim.api.nvim_set_keymap('t', key_string, cmd_string, opts) end + +local function set_term_keymaps() + set_term_keymap('t', 'ToggleTerm') + set_term_keymap('qa', 'qa!') + set_term_keymap('qq', 'bd!') +end + + return { "akinsho/toggleterm.nvim", config = function() - local terminal_default = require('toggleterm.terminal').Terminal:new({ - direction = 'horizontal', - on_open = function(term) - SET_TERM_KEYMAP(term.bufnr, 't', 'close') - SET_TERM_KEYMAP(term.bufnr, 'qa', 'qa!') - SET_TERM_KEYMAP(term.bufnr, 'qq', 'bd!') - end + vim.api.nvim_create_autocmd('TermEnter', { + pattern = 'term://*toggleterm#*', + callback = set_term_keymaps }) - function _TERMINAL_DEFAULT_TOGGLE() + local terminal_default = require('toggleterm.terminal').Terminal:new({ + direction = 'horizontal', + }) + + function _TERMINAL_TOGGLE() terminal_default:toggle() end @@ -26,6 +36,6 @@ return { }) end, keys = { - {"t", "lua _TERMINAL_DEFAULT_TOGGLE()"}, + {"t", "lua _TERMINAL_TOGGLE()"}, } }