From 558a7bbd3881f2f7cfb4f873cac330e532197bcf Mon Sep 17 00:00:00 2001 From: yetone Date: Mon, 10 Mar 2025 15:54:01 +0800 Subject: [PATCH] fix: close_from_input keybinding types (#1546) --- lua/avante/config.lua | 2 ++ lua/avante/sidebar.lua | 11 +++++++---- 2 files changed, 9 insertions(+), 4 deletions(-) diff --git a/lua/avante/config.lua b/lua/avante/config.lua index 56867e0..9cb20a2 100644 --- a/lua/avante/config.lua +++ b/lua/avante/config.lua @@ -392,6 +392,8 @@ M._defaults = { remove_file = "d", add_file = "@", close = { "", "q" }, + ---@alias AvanteCloseFromInput { normal: string | nil, insert: string | nil } + ---@type AvanteCloseFromInput | nil close_from_input = nil, -- e.g., { normal = "", insert = "" } }, files = { diff --git a/lua/avante/sidebar.lua b/lua/avante/sidebar.lua index b1b72b3..fc5ffd2 100644 --- a/lua/avante/sidebar.lua +++ b/lua/avante/sidebar.lua @@ -2720,10 +2720,13 @@ function Sidebar:create_input_container(opts) self.input_container:map("n", Config.mappings.submit.normal, on_submit) self.input_container:map("i", Config.mappings.submit.insert, on_submit) - local close_from_input = Config.mappings.sidebar.close_from_input - if close_from_input ~= nil then - self.input_container:map("n", close_from_input.normal, function() self:shutdown() end) - self.input_container:map("i", close_from_input.insert, function() self:shutdown() end) + if Config.mappings.sidebar.close_from_input ~= nil then + if Config.mappings.sidebar.close_from_input.normal ~= nil then + self.input_container:map("n", Config.mappings.sidebar.close_from_input.normal, function() self:shutdown() end) + end + if Config.mappings.sidebar.close_from_input.insert ~= nil then + self.input_container:map("i", Config.mappings.sidebar.close_from_input.insert, function() self:shutdown() end) + end end api.nvim_set_option_value("filetype", "AvanteInput", { buf = self.input_container.bufnr })