From 6c7c5464ca0327a9acd022c9c02cec8bae64a073 Mon Sep 17 00:00:00 2001 From: yetone Date: Fri, 7 Mar 2025 11:53:09 +0800 Subject: [PATCH] feat: cwd ad project root (#1517) --- lua/avante/config.lua | 1 + lua/avante/utils/root.lua | 5 +++++ 2 files changed, 6 insertions(+) diff --git a/lua/avante/config.lua b/lua/avante/config.lua index 0e6014f..25093b8 100644 --- a/lua/avante/config.lua +++ b/lua/avante/config.lua @@ -319,6 +319,7 @@ M._defaults = { minimize_diff = true, enable_token_counting = true, enable_cursor_planning_mode = false, + use_cwd_as_project_root = false, }, history = { max_tokens = 4096, diff --git a/lua/avante/utils/root.lua b/lua/avante/utils/root.lua index 7e69111..5f62f46 100644 --- a/lua/avante/utils/root.lua +++ b/lua/avante/utils/root.lua @@ -1,5 +1,6 @@ -- COPIED and MODIFIED from https://github.com/LazyVim/LazyVim/blob/main/lua/lazyvim/util/root.lua local Utils = require("avante.utils") +local Config = require("avante.config") ---@class avante.utils.root ---@overload fun(): string @@ -112,6 +113,10 @@ M.cache = {} ---@param opts? {normalize?:boolean, buf?:number} ---@return string function M.get(opts) + if Config.behaviour.use_cwd_as_project_root then + local cwd = vim.uv.cwd() + if cwd and cwd ~= "" then return cwd end + end opts = opts or {} local buf = opts.buf or vim.api.nvim_get_current_buf() local ret = M.cache[buf]