more things
This commit is contained in:
@@ -1 +0,0 @@
|
||||
require("avante").setup()
|
||||
27
modules/home/programs/terminal/nvim/config/lua/code-companion-config.lua
Executable file
27
modules/home/programs/terminal/nvim/config/lua/code-companion-config.lua
Executable file
@@ -0,0 +1,27 @@
|
||||
require("plugins.codecompanion.fidget-spinner"):init()
|
||||
require("codecompanion").setup({
|
||||
opts = { log_level = "DEBUG" },
|
||||
adapters = {
|
||||
http = {
|
||||
["llama-swap"] = function()
|
||||
return require("codecompanion.adapters").extend("openai_compatible", {
|
||||
name = "llama-swap",
|
||||
formatted_name = "LlamaSwap",
|
||||
schema = {
|
||||
model = {
|
||||
default = "qwen3-coder-30b-instruct",
|
||||
},
|
||||
},
|
||||
env = {
|
||||
url = "http://10.0.20.100:8080",
|
||||
api_key = "none",
|
||||
},
|
||||
})
|
||||
end,
|
||||
},
|
||||
},
|
||||
strategies = {
|
||||
chat = { adapter = "llama-swap" },
|
||||
inline = { adapter = "llama-swap" },
|
||||
},
|
||||
})
|
||||
@@ -1,8 +1,8 @@
|
||||
require("base")
|
||||
require("aerial-config")
|
||||
require("autopairs-config")
|
||||
require("avante-config")
|
||||
require("cmp-config")
|
||||
require("code-companion-config")
|
||||
require("comment-config")
|
||||
require("dap-config")
|
||||
require("diffview-config")
|
||||
|
||||
@@ -8,6 +8,11 @@ vim.api.nvim_create_autocmd("FileType", {
|
||||
end,
|
||||
})
|
||||
|
||||
require('render-markdown').setup({
|
||||
completions = { lsp = { enabled = true } },
|
||||
file_types = { 'markdown', 'codecompanion' },
|
||||
})
|
||||
|
||||
------------------------------------------------------
|
||||
-------------------- Built-in LSP --------------------
|
||||
------------------------------------------------------
|
||||
|
||||
@@ -32,7 +32,7 @@ execute_command()
|
||||
vim.fn.timer_start(300000, execute_command)
|
||||
|
||||
-- Return status from cache
|
||||
function pr_status()
|
||||
local function pr_status()
|
||||
--
|
||||
--
|
||||
--
|
||||
@@ -40,19 +40,15 @@ function pr_status()
|
||||
-- PASS COLOR - #3fb950
|
||||
-- FAIL COLOR - #f85149
|
||||
return cached_pr_status
|
||||
:gsub("\n", "")
|
||||
:gsub("fail", " ")
|
||||
:gsub("pass", " ")
|
||||
:gsub("pending", " ")
|
||||
:gsub("skipping", " ")
|
||||
:sub(1, -2)
|
||||
:gsub("\n", "")
|
||||
:gsub("fail", " ")
|
||||
:gsub("pass", " ")
|
||||
:gsub("pending", " ")
|
||||
:gsub("skipping", " ")
|
||||
:sub(1, -2)
|
||||
end
|
||||
|
||||
require("lualine").setup({
|
||||
options = {
|
||||
theme = "catppuccin",
|
||||
-- theme = "nord"
|
||||
-- theme = "OceanicNext",
|
||||
},
|
||||
options = { theme = "catppuccin" },
|
||||
sections = { lualine_c = { { pr_status } } },
|
||||
})
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
local progress = require("fidget.progress")
|
||||
|
||||
local M = {}
|
||||
|
||||
function M:init()
|
||||
local group = vim.api.nvim_create_augroup("CodeCompanionFidgetHooks", {})
|
||||
|
||||
vim.api.nvim_create_autocmd({ "User" }, {
|
||||
pattern = "CodeCompanionRequestStarted",
|
||||
group = group,
|
||||
callback = function(request)
|
||||
local handle = M:create_progress_handle(request)
|
||||
M:store_progress_handle(request.data.id, handle)
|
||||
end,
|
||||
})
|
||||
|
||||
vim.api.nvim_create_autocmd({ "User" }, {
|
||||
pattern = "CodeCompanionRequestFinished",
|
||||
group = group,
|
||||
callback = function(request)
|
||||
local handle = M:pop_progress_handle(request.data.id)
|
||||
if handle then
|
||||
M:report_exit_status(handle, request)
|
||||
handle:finish()
|
||||
end
|
||||
end,
|
||||
})
|
||||
end
|
||||
|
||||
M.handles = {}
|
||||
|
||||
function M:store_progress_handle(id, handle)
|
||||
M.handles[id] = handle
|
||||
end
|
||||
|
||||
function M:pop_progress_handle(id)
|
||||
local handle = M.handles[id]
|
||||
M.handles[id] = nil
|
||||
return handle
|
||||
end
|
||||
|
||||
function M:create_progress_handle(request)
|
||||
return progress.handle.create({
|
||||
title = " Requesting assistance (" .. request.data.strategy .. ")",
|
||||
message = "In progress...",
|
||||
lsp_client = {
|
||||
name = M:llm_role_title(request.data.adapter),
|
||||
},
|
||||
})
|
||||
end
|
||||
|
||||
function M:llm_role_title(adapter)
|
||||
local parts = {}
|
||||
table.insert(parts, adapter.formatted_name)
|
||||
if adapter.model and adapter.model ~= "" then
|
||||
table.insert(parts, "(" .. adapter.model .. ")")
|
||||
end
|
||||
return table.concat(parts, " ")
|
||||
end
|
||||
|
||||
function M:report_exit_status(handle, request)
|
||||
if request.data.status == "success" then
|
||||
handle.message = "Completed"
|
||||
elseif request.data.status == "error" then
|
||||
handle.message = " Error"
|
||||
else
|
||||
handle.message = " Cancelled"
|
||||
end
|
||||
end
|
||||
|
||||
return M
|
||||
@@ -3,46 +3,49 @@ local wk = require("which-key")
|
||||
wk.setup({})
|
||||
|
||||
wk.add({
|
||||
{ "<C-k>", desc = "Signature Help" },
|
||||
{ "<leader>a", desc = "Aerial" },
|
||||
{ "<leader>d", group = "Debug" },
|
||||
{ "<C-k>", desc = "Signature Help" },
|
||||
{ "K", desc = "Definition Hover" },
|
||||
{ "<leader>a", desc = "Aerial" },
|
||||
{ "<leader>c", desc = "CodeCompanion" },
|
||||
{ "<leader>cc", "<cmd>CodeCompanionChat Toggle<cr>", desc = "Toggle Chat" },
|
||||
{ "<leader>ci", "<cmd>CodeCompanion<cr>", desc = "Inline Prompt", mode = "v" },
|
||||
{ "<leader>db", desc = "Toggle Breakpoint" },
|
||||
{ "<leader>dc", desc = "Continue" },
|
||||
{ "<leader>d", group = "Debug" },
|
||||
{ "<leader>dt", desc = "Run Test" },
|
||||
{ "<leader>du", desc = "Toggle UI" },
|
||||
{ "<leader>f", group = "Find - Telescope" },
|
||||
{ "<leader>fb", "<cmd>Telescope buffers<cr>", desc = "Find Buffer" },
|
||||
{ "<leader>ff", "<cmd>Telescope find_files<cr>", desc = "Find File" },
|
||||
{ "<leader>fg", "<cmd>Telescope live_grep<cr>", desc = "Live Grep" },
|
||||
{ "<leader>fh", "<cmd>Telescope help_tags<cr>", desc = "Help Tags" },
|
||||
{ "<leader>fj", "<cmd>Telescope jumplist<cr>", desc = "Jump List" },
|
||||
{ "<leader>fp", "<cmd>Octo pr list<cr>", desc = "PR List" },
|
||||
{ "<leader>g", group = "DiffView" },
|
||||
{ "<leader>fb", "<cmd>Telescope buffers<cr>", desc = "Find Buffer" },
|
||||
{ "<leader>ff", "<cmd>Telescope find_files<cr>", desc = "Find File" },
|
||||
{ "<leader>fg", "<cmd>Telescope live_grep<cr>", desc = "Live Grep" },
|
||||
{ "<leader>f", group = "Find - Telescope" },
|
||||
{ "<leader>fh", "<cmd>Telescope help_tags<cr>", desc = "Help Tags" },
|
||||
{ "<leader>fj", "<cmd>Telescope jumplist<cr>", desc = "Jump List" },
|
||||
{ "<leader>fp", "<cmd>Octo pr list<cr>", desc = "PR List" },
|
||||
{ "<leader>gB", desc = "Git Blame Full" },
|
||||
{ "<leader>gH", "<cmd>DiffviewFileHistory --range=origin..HEAD<cr>", desc = "Diff History - Main" },
|
||||
{ "<leader>gO", "<cmd>DiffviewOpen origin/main...HEAD<cr>", desc = "Open Diff - Main" },
|
||||
{ "<leader>gb", desc = "Git Blame Line" },
|
||||
{ "<leader>gc", "<cmd>DiffviewClose<cr>", desc = "Close Diff" },
|
||||
{ "<leader>gh", "<cmd>DiffviewFileHistory<cr>", desc = "Diff History" },
|
||||
{ "<leader>go", "<cmd>DiffviewOpen<cr>", desc = "Open Diff - Current" },
|
||||
{ "<leader>l", group = "LSP" },
|
||||
{ "<leader>gc", "<cmd>DiffviewClose<cr>", desc = "Close Diff" },
|
||||
{ "<leader>g", group = "DiffView" },
|
||||
{ "<leader>gh", "<cmd>DiffviewFileHistory<cr>", desc = "Diff History" },
|
||||
{ "<leader>gH", "<cmd>DiffviewFileHistory --range=origin..HEAD<cr>", desc = "Diff History - Main" },
|
||||
{ "<leader>go", "<cmd>DiffviewOpen<cr>", desc = "Open Diff - Current" },
|
||||
{ "<leader>gO", "<cmd>DiffviewOpen origin/main...HEAD<cr>", desc = "Open Diff - Main" },
|
||||
{ "<leader>lD", desc = "Declaration" },
|
||||
{ "<leader>ld", desc = "Definition" },
|
||||
{ "<leader>lf", desc = "Format" },
|
||||
{ "<leader>l", group = "LSP" },
|
||||
{ "<leader>li", desc = "Implementation" },
|
||||
{ "<leader>ln", desc = "Rename" },
|
||||
{ "<leader>lr", desc = "References" },
|
||||
{ "<leader>lt", desc = "Type Definition" },
|
||||
{ "<leader>q", group = "Diagnostics" },
|
||||
{ "<leader>qN", desc = "Previous Diagnostic" },
|
||||
{ "<leader>qe", desc = "Open Diagnostic Float" },
|
||||
{ "<leader>q", group = "Diagnostics" },
|
||||
{ "<leader>qn", desc = "Next Diagnostic" },
|
||||
{ "<leader>qN", desc = "Previous Diagnostic" },
|
||||
{ "<leader>qq", desc = "Toggle Diagnostic List" },
|
||||
{ "<leader>qt", desc = "Toggle Inline Diagnostics" },
|
||||
{ "<leader>sb", desc = "Buffer Screenshot", mode = { "n", "v" } },
|
||||
{ "<leader>s", group = "Screenshot", mode = { "n", "v" } },
|
||||
{ "<leader>ss", desc = "Selected Screenshot", mode = "v" },
|
||||
{ "<leader>sv", desc = "Visual Screenshot" },
|
||||
{ "<leader>t", desc = "NeoTree" },
|
||||
{ "K", desc = "Definition Hover" },
|
||||
{ "<leader>ss", desc = "Selected Screenshot", mode = "v" },
|
||||
{ "<leader>s", group = "Screenshot", mode = { "n", "v" } },
|
||||
{ "<leader>sb", desc = "Buffer Screenshot", mode = { "n", "v" } },
|
||||
{ "<leader>t", desc = "NeoTree" },
|
||||
})
|
||||
|
||||
Reference in New Issue
Block a user