feat(nvim): reorganize and modernize Neovim configuration
- Remove deprecated config files: git-ref.lua, git-signs.lua, diffview-config.lua, lsp-lines-config.lua, neotree-config.lua, fidget-spinner.lua, silicon-config.lua, telescope-config.lua, llm.lua - Add new configuration files: diagnostics-config.lua, git-config.lua, llm-config.lua, snacks-config.lua - Update existing config files: base.lua, dap-config.lua, init.lua, lsp-config.lua, lualine-config.lua, noice-config.lua, octo-config.lua, toggleterm-config.lua, which-key-config.lua - Update nvim and opencode module configurations
This commit is contained in:
67
modules/home/programs/terminal/nvim/config/lua/llm-config.lua
Executable file
67
modules/home/programs/terminal/nvim/config/lua/llm-config.lua
Executable file
@@ -0,0 +1,67 @@
|
||||
local llm_endpoint = "https://llm-api.va.reichard.io"
|
||||
-- local llm_assistant_model = "gpt-oss-20b-thinking"
|
||||
-- local llm_infill_model = "qwen2.5-coder-3b-instruct"
|
||||
|
||||
-- Available models: qwen3-30b-2507-instruct, qwen2.5-coder-3b-instruct
|
||||
local llm_assistant_model = "qwen3-30b-2507-instruct"
|
||||
local llm_infill_model = llm_assistant_model
|
||||
|
||||
-- Default Llama - Toggle Llama & Copilot
|
||||
-- vim.g.copilot_filetypes = { ["*"] = false }
|
||||
local current_mode = "copilot"
|
||||
local function toggle_llm_fim_provider()
|
||||
if current_mode == "llama" then
|
||||
vim.g.copilot_filetypes = { ["*"] = true }
|
||||
vim.cmd("Copilot enable")
|
||||
vim.cmd("LlamaDisable")
|
||||
current_mode = "copilot"
|
||||
vim.notify("Copilot FIM enabled", vim.log.levels.INFO)
|
||||
else
|
||||
vim.g.copilot_filetypes = { ["*"] = true }
|
||||
vim.cmd("Copilot disable")
|
||||
vim.cmd("LlamaEnable")
|
||||
current_mode = "llama"
|
||||
vim.notify("Llama FIM enabled", vim.log.levels.INFO)
|
||||
end
|
||||
end
|
||||
|
||||
-- OpenCode Configuration
|
||||
vim.g.opencode_opts = {
|
||||
provider = {
|
||||
enabled = "snacks",
|
||||
snacks = {
|
||||
win = {
|
||||
-- position = "float",
|
||||
enter = true,
|
||||
width = 0.5,
|
||||
-- height = 0.75,
|
||||
},
|
||||
start_insert = true,
|
||||
auto_insert = true,
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
-- Copilot Configuration
|
||||
vim.g.copilot_no_tab_map = true
|
||||
|
||||
-- LLama LLM FIM
|
||||
vim.g.llama_config = {
|
||||
endpoint = llm_endpoint .. "/infill",
|
||||
model = llm_infill_model,
|
||||
n_predict = 2048,
|
||||
ring_n_chunks = 32,
|
||||
enable_at_startup = false,
|
||||
}
|
||||
|
||||
-- Create KeyMaps
|
||||
vim.keymap.set("n", "<leader>af", toggle_llm_fim_provider, { desc = "Toggle FIM (Llama / Copilot)" })
|
||||
vim.keymap.set({ "n", "x" }, "<leader>ai", function() require("opencode").ask("@this: ", { submit = true }) end,
|
||||
{ desc = "Ask OpenCode" })
|
||||
vim.keymap.set({ "n", "x" }, "<leader>aa", function() require("opencode").select() end,
|
||||
{ desc = "Execute OpenCode Action" })
|
||||
vim.keymap.set({ "n", "t" }, "<leader>at", function() require("opencode").toggle() end, { desc = "Toggle OpenCode" })
|
||||
vim.keymap.set('i', '<C-J>', 'copilot#Accept("\\<CR>")', {
|
||||
expr = true,
|
||||
replace_keycodes = false
|
||||
})
|
||||
Reference in New Issue
Block a user