From 1634abb9cd29a3d8265fd440e14fe0f56d92d6a9 Mon Sep 17 00:00:00 2001 From: Hanchin Hsieh Date: Thu, 15 Aug 2024 13:41:54 +0800 Subject: [PATCH] fix: escape original_content (#5) --- lua/avante/init.lua | 1 + lua/avante/utils.lua | 4 ++++ 2 files changed, 5 insertions(+) diff --git a/lua/avante/init.lua b/lua/avante/init.lua index 8631983..b3a8b71 100644 --- a/lua/avante/init.lua +++ b/lua/avante/init.lua @@ -353,6 +353,7 @@ local function call_openai_api_stream(question, code_lang, code_content, on_chun end local function call_ai_api_stream(question, code_lang, code_content, on_chunk, on_complete) + code_content = utils.escape(code_content) if M.config.provider == "openai" or M.config.provider == "azure" then call_openai_api_stream(question, code_lang, code_content, on_chunk, on_complete) elseif M.config.provider == "claude" then diff --git a/lua/avante/utils.lua b/lua/avante/utils.lua index 6993623..4bc3b41 100644 --- a/lua/avante/utils.lua +++ b/lua/avante/utils.lua @@ -4,4 +4,8 @@ function M.trim_suffix(str, suffix) return string.gsub(str, suffix .. "$", "") end +function M.escape(str) + return string.gsub(str, "([%(%)%.%%%+%-%*%?%[%^%$%]])", "%%%1") +end + return M