Bringing repo up to date
This commit is contained in:
@@ -4,7 +4,7 @@
|
|||||||
"suggest.floatEnable": true,
|
"suggest.floatEnable": true,
|
||||||
"suggest.detailField": "preview",
|
"suggest.detailField": "preview",
|
||||||
"suggest.maxPreviewWidth": 80,
|
"suggest.maxPreviewWidth": 80,
|
||||||
"signature.enable": true,
|
"signature.enable": false,
|
||||||
"signature.target": "float",
|
"signature.target": "float",
|
||||||
"extensions": [
|
"extensions": [
|
||||||
"coc-json",
|
"coc-json",
|
||||||
|
|||||||
149
init.lua
149
init.lua
@@ -13,36 +13,121 @@ require("coc") -- ./lua/coc.lua
|
|||||||
require("treesitter") -- ./lua/treesitter.lua
|
require("treesitter") -- ./lua/treesitter.lua
|
||||||
require("autocmds") -- ./lua/autocmds.lua
|
require("autocmds") -- ./lua/autocmds.lua
|
||||||
require("diagnostics") -- ./lua/diagnostics.lua
|
require("diagnostics") -- ./lua/diagnostics.lua
|
||||||
|
require("avante_settings") -- ./lua/avante_settings.lua
|
||||||
require('telescope_configuration') -- ./lua/telescope_configuration.lua
|
require('telescope_configuration') -- ./lua/telescope_configuration.lua
|
||||||
|
|
||||||
|
local function cyberdream()
|
||||||
|
require("cyberdream").setup({
|
||||||
|
-- Set light or dark variant
|
||||||
|
variant = "default", -- use "light" for the light variant. Also accepts "auto" to set dark or light colors based on the current value of `vim.o.background`
|
||||||
|
-- Enable transparent background
|
||||||
|
transparent = true,
|
||||||
|
-- Reduce the overall saturation of colours for a more muted look
|
||||||
|
saturation = 1, -- accepts a value between 0 and 1. 0 will be fully desaturated (greyscale) and 1 will be the full color (default)
|
||||||
|
-- Enable italics comments
|
||||||
|
italic_comments = true,
|
||||||
|
-- Replace all fillchars with ' ' for the ultimate clean look
|
||||||
|
hide_fillchars = false,
|
||||||
|
-- Apply a modern borderless look to pickers like Telescope, Snacks Picker & Fzf-Lua
|
||||||
|
borderless_pickers = true,
|
||||||
|
-- Set terminal colors used in `:terminal`
|
||||||
|
terminal_colors = true,
|
||||||
|
-- Improve start up time by caching highlights. Generate cache with :CyberdreamBuildCache and clear with :CyberdreamClearCache
|
||||||
|
cache = true,
|
||||||
|
-- Override highlight groups with your own colour values
|
||||||
|
-- highlights = {
|
||||||
|
-- -- Highlight groups to override, adding new groups is also possible
|
||||||
|
-- -- See `:h highlight-groups` for a list of highlight groups or run `:hi` to see all groups and their current values
|
||||||
|
-- -- Example:
|
||||||
|
-- Comment = { fg = "#696969", bg = "NONE", italic = true },
|
||||||
|
-- -- More examples can be found in `lua/cyberdream/extensions/*.lua`
|
||||||
|
-- },
|
||||||
|
-- Override a highlight group entirely using the built-in colour palette
|
||||||
|
-- overrides = function(colors) -- NOTE: This function nullifies the `highlights` option
|
||||||
|
-- -- Example:
|
||||||
|
-- return {
|
||||||
|
-- Comment = { fg = colors.green, bg = "NONE", italic = true },
|
||||||
|
-- ["@property"] = { fg = colors.magenta, bold = true },
|
||||||
|
-- }
|
||||||
|
-- end,
|
||||||
|
-- Override colors
|
||||||
|
-- colors = {
|
||||||
|
-- -- For a list of colors see `lua/cyberdream/colours.lua`
|
||||||
|
-- -- Override colors for both light and dark variants
|
||||||
|
-- bg = "#000000",
|
||||||
|
-- green = "#00ff00",
|
||||||
|
-- -- If you want to override colors for light or dark variants only, use the following format:
|
||||||
|
-- dark = {
|
||||||
|
-- magenta = "#ff00ff",
|
||||||
|
-- fg = "#eeeeee",
|
||||||
|
-- },
|
||||||
|
-- light = {
|
||||||
|
-- red = "#ff5c57",
|
||||||
|
-- cyan = "#5ef1ff",
|
||||||
|
-- },
|
||||||
|
-- },
|
||||||
|
-- Disable or enable colorscheme extensions
|
||||||
|
extensions = {
|
||||||
|
telescope = true,
|
||||||
|
notify = true,
|
||||||
|
mini = true,
|
||||||
|
treesitter = true,
|
||||||
|
whichkey = true,
|
||||||
|
treesittercontext = true,
|
||||||
|
markdown = true,
|
||||||
|
snacks = true,
|
||||||
|
trouble = true,
|
||||||
|
-- More extensions can be found in `lua/cyberdream/extensions/*.lua`
|
||||||
|
}
|
||||||
|
})
|
||||||
|
end
|
||||||
|
|
||||||
if host == "xps13" then
|
if host == "xps13" then
|
||||||
require('tokyonight').setup({
|
cyberdream()
|
||||||
style = "moon", -- "storm", "moon", "day", "night"
|
-- require('tokyonight').setup({
|
||||||
transparent = false, -- Enable transparent background
|
-- style = "moon", -- "storm", "moon", "day", "night"
|
||||||
terminal_colors = true, -- Enable terminal colors
|
-- transparent = false, -- Enable transparent background
|
||||||
styles = {
|
-- terminal_colors = true, -- Enable terminal colors
|
||||||
comments = { italic = true }, -- Italic comments
|
-- styles = {
|
||||||
keywords = { italic = true }, -- Italic keywords
|
-- comments = { italic = true }, -- Italic comments
|
||||||
functions = { bold = true }, -- Bold functions
|
-- keywords = { italic = true }, -- Italic keywords
|
||||||
variables = {}, -- No special style for variables
|
-- functions = { bold = true }, -- Bold functions
|
||||||
sidebars = "dark", -- Dark sidebars
|
-- variables = {}, -- No special style for variables
|
||||||
floats = "dark", -- Dark floating windows
|
-- sidebars = "dark", -- Dark sidebars
|
||||||
},
|
-- floats = "dark", -- Dark floating windows
|
||||||
})
|
-- },
|
||||||
|
-- })
|
||||||
|
-- })
|
||||||
|
elseif host == "Vector" then
|
||||||
|
cyberdream()
|
||||||
|
-- require('tokyonight').setup({
|
||||||
|
-- style = "storm", -- "storm", "moon", "day", "night"
|
||||||
|
-- transparent = false, -- Enable transparent background
|
||||||
|
-- terminal_colors = true, -- Enable terminal colors
|
||||||
|
-- styles = {
|
||||||
|
-- comments = { italic = true }, -- Italic comments
|
||||||
|
-- keywords = { italic = true }, -- Italic keywords
|
||||||
|
-- functions = { bold = true }, -- Bold functions
|
||||||
|
-- variables = {}, -- No special style for variables
|
||||||
|
-- sidebars = "dark", -- Dark sidebars
|
||||||
|
-- floats = "dark", -- Dark floating windows
|
||||||
|
-- },
|
||||||
|
-- })
|
||||||
elseif host == "Titan" then
|
elseif host == "Titan" then
|
||||||
require('tokyonight').setup({
|
cyberdream()
|
||||||
style = "storm", -- "storm", "moon", "day", "night"
|
-- require('tokyonight').setup({
|
||||||
transparent = false, -- Enable transparent background
|
-- style = "storm", -- "storm", "moon", "day", "night"
|
||||||
terminal_colors = true, -- Enable terminal colors
|
-- transparent = false, -- Enable transparent background
|
||||||
styles = {
|
-- terminal_colors = true, -- Enable terminal colors
|
||||||
comments = { italic = true }, -- Italic comments
|
-- styles = {
|
||||||
keywords = { italic = true }, -- Italic keywords
|
-- comments = { italic = true }, -- Italic comments
|
||||||
functions = { bold = true }, -- Bold functions
|
-- keywords = { italic = true }, -- Italic keywords
|
||||||
variables = {}, -- No special style for variables
|
-- functions = { bold = true }, -- Bold functions
|
||||||
sidebars = "dark", -- Dark sidebars
|
-- variables = {}, -- No special style for variables
|
||||||
floats = "dark", -- Dark floating windows
|
-- sidebars = "dark", -- Dark sidebars
|
||||||
},
|
-- floats = "dark", -- Dark floating windows
|
||||||
})
|
-- },
|
||||||
|
-- })
|
||||||
end
|
end
|
||||||
|
|
||||||
local function is_linux_console()
|
local function is_linux_console()
|
||||||
@@ -55,10 +140,11 @@ local function want_truecolor()
|
|||||||
or ((vim.env.COLORTERM or ""):lower():find("truecolor") ~= nil)
|
or ((vim.env.COLORTERM or ""):lower():find("truecolor") ~= nil)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
local function set_colorscheme()
|
local function set_colorscheme()
|
||||||
if want_truecolor() then
|
if want_truecolor() then
|
||||||
vim.o.termguicolors = true
|
vim.o.termguicolors = true
|
||||||
if not pcall(vim.cmd.colorscheme, "tokyonight") then
|
if not pcall(vim.cmd.colorscheme, "cyberdream") then
|
||||||
pcall(vim.cmd.colorscheme, "habamax")
|
pcall(vim.cmd.colorscheme, "habamax")
|
||||||
end
|
end
|
||||||
else
|
else
|
||||||
@@ -92,7 +178,12 @@ vim.api.nvim_create_autocmd("VimEnter", {
|
|||||||
lualine_a = { "mode" },
|
lualine_a = { "mode" },
|
||||||
lualine_b = { "branch" },
|
lualine_b = { "branch" },
|
||||||
lualine_c = { { "filename", file_status = true, path = 1 } },
|
lualine_c = { { "filename", file_status = true, path = 1 } },
|
||||||
lualine_x = { "encoding", "fileformat", "filetype" },
|
lualine_x = {
|
||||||
|
"encoding", "fileformat", "filetype",
|
||||||
|
require("noice").api.statusline.mode.get,
|
||||||
|
cond = require("noice").api.statusline.mode.has,
|
||||||
|
color = { fg = "#ff9e64" },
|
||||||
|
},
|
||||||
lualine_y = { "progress" },
|
lualine_y = { "progress" },
|
||||||
lualine_z = { "location" },
|
lualine_z = { "location" },
|
||||||
},
|
},
|
||||||
@@ -100,7 +191,7 @@ vim.api.nvim_create_autocmd("VimEnter", {
|
|||||||
else
|
else
|
||||||
lualine.setup({
|
lualine.setup({
|
||||||
options = {
|
options = {
|
||||||
theme = "tokyonight",
|
theme = "auto",
|
||||||
icons_enabled = true,
|
icons_enabled = true,
|
||||||
globalstatus = true,
|
globalstatus = true,
|
||||||
},
|
},
|
||||||
|
|||||||
69
lua/avante_settings.lua
Normal file
69
lua/avante_settings.lua
Normal file
@@ -0,0 +1,69 @@
|
|||||||
|
require('avante').setup({
|
||||||
|
instructions_file = "avante.md",
|
||||||
|
provider = "ollama",
|
||||||
|
providers = {
|
||||||
|
ollama = {
|
||||||
|
endpoint = "http://localhost:11434",
|
||||||
|
model = "codellama:latest",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
behavior = {
|
||||||
|
auto_focus_sidebar = true,
|
||||||
|
auto_suggestions = true, -- Experimental.
|
||||||
|
jump_result_buffer_on_finish = false,
|
||||||
|
},
|
||||||
|
windows = {
|
||||||
|
position = "right",
|
||||||
|
fillchars = "eob: ",
|
||||||
|
wrap = true,
|
||||||
|
width = 30,
|
||||||
|
height = 30,
|
||||||
|
sidebar_header = {
|
||||||
|
enabled = true,
|
||||||
|
align = "center",
|
||||||
|
rounded = true,
|
||||||
|
},
|
||||||
|
spinner = {
|
||||||
|
editing = {
|
||||||
|
"⡀",
|
||||||
|
"⠄",
|
||||||
|
"⠂",
|
||||||
|
"⠁",
|
||||||
|
"⠈",
|
||||||
|
"⠐",
|
||||||
|
"⠠",
|
||||||
|
"⢀",
|
||||||
|
"⣀",
|
||||||
|
"⢄",
|
||||||
|
"⢂",
|
||||||
|
"⢁",
|
||||||
|
"⢈",
|
||||||
|
"⢐",
|
||||||
|
"⢠",
|
||||||
|
"⣠",
|
||||||
|
"⢤",
|
||||||
|
"⢢",
|
||||||
|
"⢡",
|
||||||
|
"⢨",
|
||||||
|
"⢰",
|
||||||
|
"⣰",
|
||||||
|
"⢴",
|
||||||
|
"⢲",
|
||||||
|
"⢱",
|
||||||
|
"⢸",
|
||||||
|
"⣸",
|
||||||
|
"⢼",
|
||||||
|
"⢺",
|
||||||
|
"⢹",
|
||||||
|
"⣹",
|
||||||
|
"⢽",
|
||||||
|
"⢻",
|
||||||
|
"⣻",
|
||||||
|
"⢿",
|
||||||
|
"⣿",
|
||||||
|
},
|
||||||
|
generating = { "·", "✢", "✳", "∗", "✻", "✽" },
|
||||||
|
thinking = { "🤯", "🙄" },
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
@@ -15,8 +15,21 @@ cmp.setup({
|
|||||||
return vim_item
|
return vim_item
|
||||||
end,
|
end,
|
||||||
},
|
},
|
||||||
|
-- completion = {
|
||||||
|
-- completeopt = 'menu,menuone,noinsert',
|
||||||
|
-- },
|
||||||
|
completion = {
|
||||||
|
completeopt = 'menu,menuone,noinsert',
|
||||||
|
},
|
||||||
|
performance = {
|
||||||
|
max_view_entries = 10,
|
||||||
|
},
|
||||||
window = {
|
window = {
|
||||||
completion = cmp.config.window.bordered(),
|
completion = cmp.config.window.bordered({
|
||||||
|
-- winhighlight = "Normal:Pmenu,FloatBorder:Pmenu,Search:None",
|
||||||
|
col_offset = -3,
|
||||||
|
side_padding = 0,
|
||||||
|
}),
|
||||||
documentation = cmp.config.window.bordered(),
|
documentation = cmp.config.window.bordered(),
|
||||||
},
|
},
|
||||||
mapping = cmp.mapping.preset.insert({
|
mapping = cmp.mapping.preset.insert({
|
||||||
@@ -88,50 +101,51 @@ cmp.setup.cmdline(":", {
|
|||||||
}),
|
}),
|
||||||
})
|
})
|
||||||
|
|
||||||
local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
-- LSP server configurations moved to lsp.lua to avoid duplicates
|
||||||
require("lspconfig").clangd.setup({
|
-- local capabilities = require("cmp_nvim_lsp").default_capabilities()
|
||||||
capabilities = capabilities,
|
-- require("lspconfig").clangd.setup({
|
||||||
})
|
-- capabilities = capabilities,
|
||||||
require("lspconfig").taplo.setup({
|
-- })
|
||||||
capabilities = capabilities,
|
-- require("lspconfig").taplo.setup({
|
||||||
})
|
-- capabilities = capabilities,
|
||||||
require("lspconfig").marksman.setup({
|
-- })
|
||||||
capabilities = capabilities,
|
-- require("lspconfig").marksman.setup({
|
||||||
})
|
-- capabilities = capabilities,
|
||||||
require("lspconfig").lua_ls.setup({
|
-- })
|
||||||
capabilities = capabilities,
|
-- require("lspconfig").lua_ls.setup({
|
||||||
})
|
-- capabilities = capabilities,
|
||||||
require("lspconfig").rust_analyzer.setup({
|
-- })
|
||||||
capabilities = capabilities,
|
-- require("lspconfig").rust_analyzer.setup({
|
||||||
})
|
-- capabilities = capabilities,
|
||||||
require("lspconfig").zls.setup({
|
-- })
|
||||||
capabilities = capabilities,
|
-- require("lspconfig").zls.setup({
|
||||||
})
|
-- capabilities = capabilities,
|
||||||
require("lspconfig").gopls.setup({
|
-- })
|
||||||
capabilities = capabilities,
|
-- require("lspconfig").gopls.setup({
|
||||||
settings = {
|
-- capabilities = capabilities,
|
||||||
gopls = {
|
-- settings = {
|
||||||
analyses = {
|
-- gopls = {
|
||||||
unusedparams = true,
|
-- analyses = {
|
||||||
unusedwrite = true,
|
-- unusedparams = true,
|
||||||
shadow = true,
|
-- unusedwrite = true,
|
||||||
},
|
-- shadow = true,
|
||||||
staticcheck = true,
|
-- },
|
||||||
usePlaceholders = true,
|
-- staticcheck = true,
|
||||||
hints = {
|
-- usePlaceholders = true,
|
||||||
assignVariableTypes = true,
|
-- hints = {
|
||||||
compositeLiteralFields = true,
|
-- assignVariableTypes = true,
|
||||||
compositeLiteralTypes = true,
|
-- compositeLiteralFields = true,
|
||||||
functionTypeParameters = true,
|
-- compositeLiteralTypes = true,
|
||||||
parameterNames = true,
|
-- functionTypeParameters = true,
|
||||||
rangeVariableTypes = true,
|
-- parameterNames = true,
|
||||||
},
|
-- rangeVariableTypes = true,
|
||||||
},
|
-- },
|
||||||
},
|
-- },
|
||||||
})
|
-- },
|
||||||
require("lspconfig").pyright.setup({
|
-- })
|
||||||
capabilities = capabilities,
|
-- require("lspconfig").pyright.setup({
|
||||||
})
|
-- capabilities = capabilities,
|
||||||
require("lspconfig").nim_langserver.setup({
|
-- })
|
||||||
capabilities = capabilities,
|
-- require("lspconfig").nim_langserver.setup({
|
||||||
})
|
-- capabilities = capabilities,
|
||||||
|
-- })
|
||||||
|
|||||||
@@ -12,8 +12,8 @@ end, { noremap = true })
|
|||||||
|
|
||||||
-- Leader Maps
|
-- Leader Maps
|
||||||
vim.keymap.set("n", "<leader>f", "", { desc = "Files"})
|
vim.keymap.set("n", "<leader>f", "", { desc = "Files"})
|
||||||
vim.keymap.set("n", "<leader>ff", ":FzfLua files<CR>", { desc = "File Finder"})
|
-- vim.keymap.set("n", "<leader>ff", ":FzfLua files<CR>", { desc = "File Finder"})
|
||||||
-- vim.keymap.set("n", "<leader>fe", ":Pick files<CR>", { desc = "File Picker"})
|
vim.keymap.set("n", "<leader>ff", ":Pick files<CR>", { desc = "File Picker"})
|
||||||
vim.keymap.set("n", "<leader>ft", t3_toggle_netrw, { desc = "File Tree"})
|
vim.keymap.set("n", "<leader>ft", t3_toggle_netrw, { desc = "File Tree"})
|
||||||
|
|
||||||
vim.keymap.set("n", "<leader>b", "", { desc = "Buffers"})
|
vim.keymap.set("n", "<leader>b", "", { desc = "Buffers"})
|
||||||
@@ -88,6 +88,7 @@ vim.keymap.set("n", "<M-x>_", ":resize -5<CR>", { desc = "Decrease Window Height
|
|||||||
|
|
||||||
|
|
||||||
-- CTRL X Maps
|
-- CTRL X Maps
|
||||||
|
vim.keymap.set("n", "<C-x>", "", { desc = "Ctrl-X"})
|
||||||
vim.keymap.set("n", "<C-x><C-b>", ":Pick buffers<CR>", { desc = "Buffer Picker"})
|
vim.keymap.set("n", "<C-x><C-b>", ":Pick buffers<CR>", { desc = "Buffer Picker"})
|
||||||
vim.keymap.set("n", "<C-x><C-f>", ":Pick files<CR>", { desc = "File Picker"})
|
vim.keymap.set("n", "<C-x><C-f>", ":Pick files<CR>", { desc = "File Picker"})
|
||||||
vim.keymap.set("n", "<C-x><C-h>", ":Pick help<CR>", { desc = "Help Picker"})
|
vim.keymap.set("n", "<C-x><C-h>", ":Pick help<CR>", { desc = "Help Picker"})
|
||||||
@@ -100,6 +101,12 @@ vim.keymap.set("n", "<C-x><C-n>v", "<cmd>TWView<cr>", { desc = "View Tasks", nor
|
|||||||
vim.keymap.set("n", "<C-x><C-n>u", "<cmd>TWUpdateCurrent<cr>", { desc="Update Tasks", noremap = true, silent = true })
|
vim.keymap.set("n", "<C-x><C-n>u", "<cmd>TWUpdateCurrent<cr>", { desc="Update Tasks", noremap = true, silent = true })
|
||||||
vim.keymap.set("n", "<C-x><C-n>s", "<cmd>TWSyncTasks<cr>", { desc = "Sync Tasks", noremap = true, silent = true })
|
vim.keymap.set("n", "<C-x><C-n>s", "<cmd>TWSyncTasks<cr>", { desc = "Sync Tasks", noremap = true, silent = true })
|
||||||
vim.keymap.set("n", "<C-x><C-n><c-space>", "<cmd>TWToggle<cr>", { desc = "Toggle Taskwarrior", silent = true })
|
vim.keymap.set("n", "<C-x><C-n><c-space>", "<cmd>TWToggle<cr>", { desc = "Toggle Taskwarrior", silent = true })
|
||||||
|
vim.keymap.set("n", "<C-x><C-d>", "", { desc = "Devdocs"})
|
||||||
|
vim.keymap.set("n", "<C-x><C-d>i", ":DevdocsInstall ", { desc = "Install Docset"})
|
||||||
|
vim.keymap.set("n", "<C-x><C-d>o", ":DevdocsOpen ", { desc = "Open Docs In Window"})
|
||||||
|
vim.keymap.set("n", "<C-x><C-d>f", ":DevdocsOpenFloat ", { desc = "Open Docs In Float"})
|
||||||
|
vim.keymap.set("n", "<C-x><C-d>t", "<cmd>DevdocsToggle<cr>", { desc = "Toggle Float"})
|
||||||
|
|
||||||
|
|
||||||
-- FN Keys --
|
-- FN Keys --
|
||||||
vim.keymap.set("n", "<F1>", ":nohlsearch<CR>", { desc = "Clear Search Highlight"})
|
vim.keymap.set("n", "<F1>", ":nohlsearch<CR>", { desc = "Clear Search Highlight"})
|
||||||
@@ -110,17 +117,17 @@ vim.keymap.set("n", "<f9>", ":Telescope live_grep<cr>", { desc = "live grep"})
|
|||||||
vim.keymap.set("n", "<F11>", ":setlocal spell! spelllang=en_us<CR>", { desc = "Toggle Spell Check"})
|
vim.keymap.set("n", "<F11>", ":setlocal spell! spelllang=en_us<CR>", { desc = "Toggle Spell Check"})
|
||||||
vim.keymap.set("n", "<F12>", ":setlocal wrap!<CR>", { desc = "Toggle Line Wrap"})
|
vim.keymap.set("n", "<F12>", ":setlocal wrap!<CR>", { desc = "Toggle Line Wrap"})
|
||||||
|
|
||||||
vim.keymap.set( "n", "<leader>a", "", {desc = "AI/Claude Code" })
|
-- vim.keymap.set( "n", "<leader>a", "", {desc = "AI/Claude Code" })
|
||||||
vim.keymap.set( "n", "<leader>ac", "<cmd>ClaudeCode<cr>", {desc = "Toggle Claude" })
|
-- vim.keymap.set( "n", "<leader>ac", "<cmd>ClaudeCode<cr>", {desc = "Toggle Claude" })
|
||||||
vim.keymap.set( "n", "<leader>af", "<cmd>ClaudeCodeFocus<cr>", {desc = "Focus Claude" })
|
-- vim.keymap.set( "n", "<leader>af", "<cmd>ClaudeCodeFocus<cr>", {desc = "Focus Claude" })
|
||||||
vim.keymap.set( "n", "<leader>ar", "<cmd>ClaudeCode --resume<cr>", {desc = "Resume Claude" })
|
-- vim.keymap.set( "n", "<leader>ar", "<cmd>ClaudeCode --resume<cr>", {desc = "Resume Claude" })
|
||||||
vim.keymap.set( "n", "<leader>aC", "<cmd>ClaudeCode --continue<cr>", {desc = "Continue Claude" })
|
-- vim.keymap.set( "n", "<leader>aC", "<cmd>ClaudeCode --continue<cr>", {desc = "Continue Claude" })
|
||||||
vim.keymap.set( "n", "<leader>am", "<cmd>ClaudeCodeSelectModel<cr>", {desc = "Select Claude model" })
|
-- vim.keymap.set( "n", "<leader>am", "<cmd>ClaudeCodeSelectModel<cr>", {desc = "Select Claude model" })
|
||||||
vim.keymap.set( "n", "<leader>ab", "<cmd>ClaudeCodeAdd %<cr>", {desc = "Add current buffer" })
|
-- vim.keymap.set( "n", "<leader>ab", "<cmd>ClaudeCodeAdd %<cr>", {desc = "Add current buffer" })
|
||||||
vim.keymap.set( "v", "<leader>as", "<cmd>ClaudeCodeSend<cr>", {desc = "Send to Claude" })
|
-- vim.keymap.set( "v", "<leader>as", "<cmd>ClaudeCodeSend<cr>", {desc = "Send to Claude" })
|
||||||
-- vim.keymap.set( "n", "<leader>as", "<cmd>ClaudeCodeTreeAdd<cr>", {desc = "Add file", ft = { "NvimTree", "neo-tree", "oil", "minifiles" }})
|
-- vim.keymap.set( "n", "<leader>as", "<cmd>ClaudeCodeTreeAdd<cr>", {desc = "Add file", ft = { "NvimTree", "neo-tree", "oil", "minifiles" }})
|
||||||
vim.keymap.set( "n", "<leader>aa", "<cmd>ClaudeCodeDiffAccept<cr>", {desc = "Accept diff" })
|
-- vim.keymap.set( "n", "<leader>aa", "<cmd>ClaudeCodeDiffAccept<cr>", {desc = "Accept diff" })
|
||||||
vim.keymap.set( "n", "<leader>ad", "<cmd>ClaudeCodeDiffDeny<cr>", {desc = "Deny diff" })
|
-- vim.keymap.set( "n", "<leader>ad", "<cmd>ClaudeCodeDiffDeny<cr>", {desc = "Deny diff" })
|
||||||
vim.api.nvim_create_autocmd("FileType", {
|
vim.api.nvim_create_autocmd("FileType", {
|
||||||
pattern = { "NvimTree", "neo-tree", "oil", "minifiles" },
|
pattern = { "NvimTree", "neo-tree", "oil", "minifiles" },
|
||||||
callback = function()
|
callback = function()
|
||||||
@@ -139,6 +146,9 @@ vim.keymap.set( "n", "<leader>lc", "", {desc = "Completions" })
|
|||||||
vim.keymap.set( "n", "<leader>lch", "<cmd>CocCommand document.toggleInlayHint<cr>", {desc = "Toggle Inline Hints" })
|
vim.keymap.set( "n", "<leader>lch", "<cmd>CocCommand document.toggleInlayHint<cr>", {desc = "Toggle Inline Hints" })
|
||||||
vim.keymap.set( "n", "<leader>lcs", "<cmd>CocOutline<cr>", {desc = "Show Symbol Outline" })
|
vim.keymap.set( "n", "<leader>lcs", "<cmd>CocOutline<cr>", {desc = "Show Symbol Outline" })
|
||||||
vim.keymap.set( "n", "<leader>lcl", "<cmd>CocCommand document.toggleCodeLens<cr>", {desc = "Show Code Lens" })
|
vim.keymap.set( "n", "<leader>lcl", "<cmd>CocCommand document.toggleCodeLens<cr>", {desc = "Show Code Lens" })
|
||||||
|
vim.keymap.set( "n", "<leader>lo", "", {desc = "Overlays" })
|
||||||
|
vim.keymap.set( "n", "<leader>lod", "<cmd>Trouble dignostics<cr>", {desc = "Diagnostics" })
|
||||||
|
vim.keymap.set( "n", "<leader>los", "<cmd>Trouble symbols<cr>", {desc = "Symbols" })
|
||||||
|
|
||||||
-- Tag-like functionality using LSP
|
-- Tag-like functionality using LSP
|
||||||
vim.keymap.set( "n", "<leader>lt", "", {desc = "Tags" })
|
vim.keymap.set( "n", "<leader>lt", "", {desc = "Tags" })
|
||||||
@@ -148,3 +158,37 @@ vim.keymap.set( "n", "<leader>ltd", ":Telescope lsp_dynamic_workspace_symbols<CR
|
|||||||
vim.keymap.set( "n", "<C-]>", "<cmd>lua vim.lsp.buf.definition()<cr>", {desc = "Go to Definition" })
|
vim.keymap.set( "n", "<C-]>", "<cmd>lua vim.lsp.buf.definition()<cr>", {desc = "Go to Definition" })
|
||||||
vim.keymap.set( "n", "<C-t>", "<C-o>", {desc = "Jump Back" })
|
vim.keymap.set( "n", "<C-t>", "<C-o>", {desc = "Jump Back" })
|
||||||
vim.keymap.set( "n", "g]", "<cmd>lua vim.lsp.buf.references()<cr>", {desc = "Find References" })
|
vim.keymap.set( "n", "g]", "<cmd>lua vim.lsp.buf.references()<cr>", {desc = "Find References" })
|
||||||
|
|
||||||
|
-- Top Pickers & Explorer
|
||||||
|
vim.keymap.set("n", "<leader><space>", ":lua Snacks.picker.smart()<cr>", { desc = "Smart Find Files" })
|
||||||
|
vim.keymap.set("n", "<leader>/", ":lua Snacks.picker.grep()<cr>", { desc = "Grep" })
|
||||||
|
vim.keymap.set("n", "<leader>:", ":lua Snacks.picker.command_history()<cr>", { desc = "Command History" })
|
||||||
|
vim.keymap.set("n", "<leader>n", ":lua Snacks.picker.notifications()<cr>", { desc = "Notification History" })
|
||||||
|
vim.keymap.set("n", "<leader>e", ":lua Snacks.explorer()<cr>", { desc = "File Explorer" })
|
||||||
|
vim.keymap.set("n", "<leader>fb", ":lua Snacks.picker.buffers()<cr>", { desc = "Buffers" })
|
||||||
|
vim.keymap.set("n", "<leader>ff", ":lua Snacks.picker.files()<cr>", { desc = "Find Files" })
|
||||||
|
vim.keymap.set("n", "<leader>fg", ":lua Snacks.picker.git_files()<cr>", { desc = "Find Git Files" })
|
||||||
|
vim.keymap.set("n", "<leader>fp", ":lua Snacks.picker.projects()<cr>", { desc = "Projects" })
|
||||||
|
vim.keymap.set("n", "<leader>fr", ":lua Snacks.picker.recent()<cr>", { desc = "Recent" })
|
||||||
|
vim.keymap.set("n", "<leader>Gb", ":lua Snacks.picker.git_branches()<cr>", { desc = "Git Branches" })
|
||||||
|
vim.keymap.set("n", "<leader>Gl", ":lua Snacks.picker.git_log()<cr>", { desc = "Git Log" })
|
||||||
|
vim.keymap.set("n", "<leader>GL", ":lua Snacks.picker.git_log_line()<cr>", { desc = "Git Log Line" })
|
||||||
|
vim.keymap.set("n", "<leader>Gs", ":lua Snacks.picker.git_status()<cr>", { desc = "Git Status" })
|
||||||
|
vim.keymap.set("n", "<leader>GS", ":lua Snacks.picker.git_stash()<cr>", { desc = "Git Stash" })
|
||||||
|
vim.keymap.set("n", "<leader>Gd", ":lua Snacks.picker.git_diff()<cr>", { desc = "Git Diff (Hunks)" })
|
||||||
|
vim.keymap.set("n", "<leader>Gf", ":lua Snacks.picker.git_log_file()<cr>", { desc = "Git Log File" })
|
||||||
|
vim.keymap.set("n", "<leader>sb", ":lua Snacks.picker.buffers()<cr>", { desc = "Buffers" })
|
||||||
|
vim.keymap.set("n", "<leader>ss", ":lua Snacks.picker.smart()<cr>", { desc = "Smart Find Files" })
|
||||||
|
vim.keymap.set("n", "<leader>sp", ":lua Snacks.picker.projects()<cr>", { desc = "Projects" })
|
||||||
|
vim.keymap.set("n", "<leader>sr", ":lua Snacks.picker.recent()<cr>", { desc = "Recent" })
|
||||||
|
vim.keymap.set("n", "<leader>sw", ":lua Snacks.picker.words()<cr>", { desc = "Next Reference" })
|
||||||
|
vim.keymap.set("n", "<leader>sw", ":lua Snacks.words.jump(vim.v.count1)<cr>", { desc = "Next Reference" })
|
||||||
|
vim.keymap.set("n", "<leader>sw", ":lua Snacks.words.jump(-vim.v.count1)<cr>", { desc = "Prev Reference" })
|
||||||
|
|
||||||
|
-- Terminal
|
||||||
|
-- vim.keymap.set("n", "<c-/>", ":lua Snacks.terminal()<cr>", { desc = "Toggle Terminal" })
|
||||||
|
-- vim.keymap.set("n", "<c-_>", ":lua Snacks.terminal()<cr>", { desc = "which_key_ignore" })
|
||||||
|
|
||||||
|
-- Words Jump
|
||||||
|
vim.keymap.set("n", "]]", ":lua Snacks.words.jump(vim.v.count1)<cr>", { desc = "Next Reference", })
|
||||||
|
vim.keymap.set("n", "[[", ":lua Snacks.words.jump(-vim.v.count1)<cr>", { desc = "Prev Reference", })
|
||||||
|
|||||||
57
lua/lsp.lua
57
lua/lsp.lua
@@ -1,11 +1,6 @@
|
|||||||
local vim = vim
|
local vim = vim
|
||||||
-- vim.cmd [[
|
|
||||||
-- augroup LspCompletion
|
-- Enable LSP servers with proper configuration
|
||||||
-- autocmd!
|
|
||||||
-- autocmd InsertEnter * setlocal omnifunc=v:lua.vim.lsp.omnifunc
|
|
||||||
-- autocmd TextChangedI * if pumvisible() == 0 | silent! lua vim.fn.complete(vim.fn.col('.'), vim.fn["vim.lsp.omnifunc"]()) | endif
|
|
||||||
-- augroup END
|
|
||||||
-- ]]
|
|
||||||
vim.lsp.enable('lua_ls')
|
vim.lsp.enable('lua_ls')
|
||||||
vim.lsp.enable('gopls', {
|
vim.lsp.enable('gopls', {
|
||||||
settings = {
|
settings = {
|
||||||
@@ -29,30 +24,48 @@ vim.lsp.enable('gopls', {
|
|||||||
},
|
},
|
||||||
})
|
})
|
||||||
vim.lsp.enable('nim_langserver')
|
vim.lsp.enable('nim_langserver')
|
||||||
|
|
||||||
|
-- Fix: Add proper configuration for pyright/basedpyright
|
||||||
|
-- For NixOS with basedpyright:
|
||||||
|
vim.lsp.enable('basedpyright', {
|
||||||
|
settings = {
|
||||||
|
basedpyright = {
|
||||||
|
analysis = {
|
||||||
|
typeCheckingMode = "basic",
|
||||||
|
autoSearchPaths = true,
|
||||||
|
useLibraryCodeForTypes = true,
|
||||||
|
diagnosticMode = "workspace",
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
require("lsp_signature").setup({
|
require("lsp_signature").setup({
|
||||||
debug = false,
|
debug = false,
|
||||||
bind = true, -- registers signature handler
|
bind = true,
|
||||||
doc_lines = 10,
|
doc_lines = 5,
|
||||||
max_height = 12,
|
max_height = 8,
|
||||||
max_width = function() return math.floor(vim.api.nvim_win_get_width(0) * 0.8) end,
|
max_width = function() return math.floor(vim.api.nvim_win_get_width(0) * 0.7) end,
|
||||||
wrap = true,
|
wrap = true,
|
||||||
floating_window = true, -- show the popup
|
floating_window = true,
|
||||||
floating_window_above_cur_line = true,
|
floating_window_above_cur_line = false,
|
||||||
floating_window_off_x = 1,
|
floating_window_off_x = 1,
|
||||||
floating_window_off_y = 0,
|
floating_window_off_y = 2,
|
||||||
|
-- hint_enable = true,
|
||||||
-- IMPORTANT: don’t inline (you can change later if you want)
|
hint_enable = false,
|
||||||
hint_enable = true,
|
|
||||||
hint_inline = function() return false end,
|
hint_inline = function() return false end,
|
||||||
|
-- hint_prefix = "🐼 ",
|
||||||
hint_prefix = "🐼 ",
|
hint_prefix = "",
|
||||||
hint_scheme = "String",
|
hint_scheme = "String",
|
||||||
hi_parameter = "LspSignatureActiveParameter",
|
hi_parameter = "LspSignatureActiveParameter",
|
||||||
handler_opts = { border = "rounded" },
|
handler_opts = { border = "rounded" },
|
||||||
|
|
||||||
always_trigger = false,
|
always_trigger = false,
|
||||||
extra_trigger_chars = { "(", "," }, -- good default
|
auto_close_after = 5,
|
||||||
zindex = 200,
|
extra_trigger_chars = { "(", "," },
|
||||||
|
-- zindex = 200,
|
||||||
|
zindex = 50,
|
||||||
padding = "",
|
padding = "",
|
||||||
timer_interval = 200,
|
timer_interval = 200,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
|||||||
@@ -15,6 +15,8 @@ vim.o.termguicolors = true
|
|||||||
vim.o.winborder = "rounded"
|
vim.o.winborder = "rounded"
|
||||||
vim.o.clipboard = "unnamedplus"
|
vim.o.clipboard = "unnamedplus"
|
||||||
vim.o.completeopt = "menuone"
|
vim.o.completeopt = "menuone"
|
||||||
|
vim.o.shell = "/usr/bin/env fish"
|
||||||
|
-- vim.o.shell = "/usr/bin/env zsh"
|
||||||
-- vim.o.completeopt = "menuone,noinsert,noselect"
|
-- vim.o.completeopt = "menuone,noinsert,noselect"
|
||||||
|
|
||||||
vim.o.cursorline = true
|
vim.o.cursorline = true
|
||||||
|
|||||||
353
lua/plugins.lua
353
lua/plugins.lua
@@ -2,7 +2,8 @@ local vim = vim
|
|||||||
local host = vim.loop.os_gethostname()
|
local host = vim.loop.os_gethostname()
|
||||||
|
|
||||||
vim.pack.add({
|
vim.pack.add({
|
||||||
{ src = "https://github.com/folke/tokyonight.nvim" },
|
-- { src = "https://github.com/folke/tokyonight.nvim" },
|
||||||
|
{ src = "https://github.com/scottmckendry/cyberdream.nvim" },
|
||||||
{ src = "https://github.com/nvim-tree/nvim-web-devicons" },
|
{ src = "https://github.com/nvim-tree/nvim-web-devicons" },
|
||||||
{ src = "https://github.com/ibhagwan/fzf-lua" },
|
{ src = "https://github.com/ibhagwan/fzf-lua" },
|
||||||
{ src = "https://github.com/echasnovski/mini.pick" },
|
{ src = "https://github.com/echasnovski/mini.pick" },
|
||||||
@@ -27,7 +28,8 @@ vim.pack.add({
|
|||||||
-- { src = "https://github.com/hrsh7th/cmp-cmdline" },
|
-- { src = "https://github.com/hrsh7th/cmp-cmdline" },
|
||||||
-- { src = "https://github.com/hrsh7th/cmp-nvim-lua" },
|
-- { src = "https://github.com/hrsh7th/cmp-nvim-lua" },
|
||||||
-- { src = "https://github.com/saadparwaiz1/cmp_luasnip" },
|
-- { src = "https://github.com/saadparwaiz1/cmp_luasnip" },
|
||||||
{ src = "https://github.com/github/copilot.vim" },
|
-- { src = "https://github.com/github/copilot.vim" },
|
||||||
|
-- { src = "https://github.com/jacob411/Ollama-Copilot" },
|
||||||
{ src = "https://github.com/pysan3/pathlib.nvim" },
|
{ src = "https://github.com/pysan3/pathlib.nvim" },
|
||||||
{ src = "https://github.com/nvim-orgmode/org-bullets.nvim" },
|
{ src = "https://github.com/nvim-orgmode/org-bullets.nvim" },
|
||||||
{ src = "https://github.com/lukas-reineke/headlines.nvim" },
|
{ src = "https://github.com/lukas-reineke/headlines.nvim" },
|
||||||
@@ -58,14 +60,17 @@ vim.pack.add({
|
|||||||
{ src = "https://github.com/mbbill/undotree.git" },
|
{ src = "https://github.com/mbbill/undotree.git" },
|
||||||
{ src = "https://github.com/francoiscabrol/ranger.vim" },
|
{ src = "https://github.com/francoiscabrol/ranger.vim" },
|
||||||
{ src = "https://github.com/folke/snacks.nvim" },
|
{ src = "https://github.com/folke/snacks.nvim" },
|
||||||
{ src = "https://github.com/coder/claudecode.nvim" },
|
-- { src = "https://github.com/coder/claudecode.nvim" },
|
||||||
{ src = "https://github.com/yetone/avante.nvim" },
|
{ src = "https://github.com/yetone/avante.nvim" },
|
||||||
{ src = "https://github.com/alaviss/nim.nvim" },
|
{ src = "https://github.com/alaviss/nim.nvim" },
|
||||||
|
{ src = "https://github.com/glebzlat/arduino-nvim" },
|
||||||
|
{ src = "https://github.com/norcalli/nvim-colorizer.lua" },
|
||||||
|
{ src = "https://github.com/HiPhish/rainbow-delimiters.nvim" },
|
||||||
|
{ src = "https://github.com/lewis6991/gitsigns.nvim" },
|
||||||
|
{ src = "https://github.com/amitds1997/remote-nvim.nvim" },
|
||||||
|
|
||||||
})
|
})
|
||||||
|
|
||||||
if host == "xps13" then
|
|
||||||
end
|
|
||||||
|
|
||||||
require('mini.icons').setup({})
|
require('mini.icons').setup({})
|
||||||
require('mini.pick').setup({})
|
require('mini.pick').setup({})
|
||||||
require('mini.pairs').setup({})
|
require('mini.pairs').setup({})
|
||||||
@@ -74,9 +79,74 @@ require('mini.surround').setup({})
|
|||||||
require('mini.indentscope').setup({})
|
require('mini.indentscope').setup({})
|
||||||
require('mini.tabline').setup({})
|
require('mini.tabline').setup({})
|
||||||
require('mini.fuzzy').setup({})
|
require('mini.fuzzy').setup({})
|
||||||
require('lualine').setup({ options = { theme = 'tokyonight' } })
|
-- require('lualine').setup({ options = { theme = 'tokyonight' } })
|
||||||
require('which-key').setup({})
|
require('which-key').setup({})
|
||||||
require('fzf-lua').setup({})
|
require("snacks").setup({
|
||||||
|
explorer = { enabled = true },
|
||||||
|
image = { enabled = true },
|
||||||
|
input = { enabled = true },
|
||||||
|
picker = { enabled = true },
|
||||||
|
scope = { enabled = true },
|
||||||
|
notifier = { enabled = true },
|
||||||
|
quickfile = { enabled = true },
|
||||||
|
scroll = { enabled = true },
|
||||||
|
statuscolumn = { enabled = true },
|
||||||
|
})
|
||||||
|
require('fzf-lua').setup({
|
||||||
|
winopts = {
|
||||||
|
height = 0.85,
|
||||||
|
width = 0.80,
|
||||||
|
row = 0.35,
|
||||||
|
col = 0.50,
|
||||||
|
border = 'rounded',
|
||||||
|
preview = {
|
||||||
|
border = 'border',
|
||||||
|
wrap = 'nowrap',
|
||||||
|
hidden = 'nohidden',
|
||||||
|
vertical = 'down:45%',
|
||||||
|
horizontal = 'right:60%',
|
||||||
|
layout = 'flex',
|
||||||
|
flip_columns = 120,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
keymap = {
|
||||||
|
builtin = {
|
||||||
|
["<F1>"] = "toggle-help",
|
||||||
|
["<F2>"] = "toggle-fullscreen",
|
||||||
|
["<F3>"] = "toggle-preview-wrap",
|
||||||
|
["<F4>"] = "toggle-preview",
|
||||||
|
["<F5>"] = "toggle-preview-ccw",
|
||||||
|
["<F6>"] = "toggle-preview-cw",
|
||||||
|
["<S-down>"] = "preview-page-down",
|
||||||
|
["<S-up>"] = "preview-page-up",
|
||||||
|
["<S-left>"] = "preview-page-reset",
|
||||||
|
},
|
||||||
|
fzf = {
|
||||||
|
["ctrl-z"] = "abort",
|
||||||
|
["ctrl-u"] = "unix-line-discard",
|
||||||
|
["ctrl-f"] = "half-page-down",
|
||||||
|
["ctrl-b"] = "half-page-up",
|
||||||
|
["ctrl-a"] = "beginning-of-line",
|
||||||
|
["ctrl-e"] = "end-of-line",
|
||||||
|
["alt-a"] = "toggle-all",
|
||||||
|
["f3"] = "toggle-preview-wrap",
|
||||||
|
["f4"] = "toggle-preview",
|
||||||
|
["shift-down"] = "preview-page-down",
|
||||||
|
["shift-up"] = "preview-page-up",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
previewers = {
|
||||||
|
head = {
|
||||||
|
cmd = "head",
|
||||||
|
args = nil,
|
||||||
|
},
|
||||||
|
git_diff = {
|
||||||
|
cmd_deleted = "git show HEAD --",
|
||||||
|
cmd_modified = "git diff HEAD",
|
||||||
|
cmd_untracked = "git diff --no-index /dev/null",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
})
|
||||||
require('crates').setup({})
|
require('crates').setup({})
|
||||||
require('todo-comments').setup({
|
require('todo-comments').setup({
|
||||||
options = {
|
options = {
|
||||||
@@ -125,48 +195,229 @@ require('goto-preview').setup({ default_mappings = true })
|
|||||||
require('telescope').setup({})
|
require('telescope').setup({})
|
||||||
require('nvim-devdocs').setup({})
|
require('nvim-devdocs').setup({})
|
||||||
-- require('noice').setup({
|
-- require('noice').setup({
|
||||||
-- lsp = {
|
-- lsp = {
|
||||||
-- override = {
|
-- override = {
|
||||||
-- ["vim.lsp.util.convert_input_to_markdown_lines"] = true,
|
-- ["vim.lsp.util.convert_input_to_markdown_lines"] = true,
|
||||||
-- ["vim.lsp.util.stylize_markdown"] = true,
|
-- ["vim.lsp.util.stylize_markdown"] = true,
|
||||||
-- ["cmp.entry.get_documentation"] = true, -- requires hrsh7th/nvim-cmp
|
-- ["cmp.entry.get_documentation"] = true, -- requires hrsh7th/nvim-cmp
|
||||||
-- },
|
-- },
|
||||||
-- },
|
-- },
|
||||||
-- presets = {
|
-- presets = {
|
||||||
-- bottom_search = true, -- use a classic bottom cmdline for search
|
-- bottom_search = true, -- use a classic bottom cmdline for search
|
||||||
-- command_palette = true, -- position the cmdline and popupmenu together
|
-- command_palette = true, -- position the cmdline and popupmenu together
|
||||||
-- long_message_to_split = true, -- long messages will be sent to a split
|
-- long_message_to_split = true, -- long messages will be sent to a split
|
||||||
-- inc_rename = false, -- enables an input dialog for inc-rename.nvim
|
-- inc_rename = false, -- enables an input dialog for inc-rename.nvim
|
||||||
-- lsp_doc_border = false, -- add a border to hover docs and signature help
|
-- lsp_doc_border = false, -- add a border to hover docs and signature help
|
||||||
-- },
|
-- },
|
||||||
|
-- routes = {
|
||||||
|
-- view = "notify",
|
||||||
|
-- filter = { event = "msg_showmode" },
|
||||||
|
-- },
|
||||||
-- })
|
-- })
|
||||||
require("claudecode").setup({})
|
-- require("claudecode").setup({})
|
||||||
require('avante').setup({
|
|
||||||
opts = {
|
require('arduino-nvim').setup({
|
||||||
-- add any opts here
|
default_fqbn = "esp32:esp32:esp32",
|
||||||
-- this file can contain specific instructions for your project
|
filetypes = {"arduino"}
|
||||||
instructions_file = "avante.md",
|
})
|
||||||
-- for example
|
require('colorizer').setup({
|
||||||
provider = "copilot",
|
'*',
|
||||||
providers = {
|
}, {
|
||||||
-- claude = {
|
RGB = true,
|
||||||
-- endpoint = "https://api.anthropic.com",
|
RRGGBB = true,
|
||||||
-- model = "claude-sonnet-4-20250514",
|
names = true,
|
||||||
-- timeout = 30000, -- Timeout in milliseconds
|
RRGGBBAA = true,
|
||||||
-- extra_request_body = {
|
rgb_fn = true,
|
||||||
-- temperature = 0.75,
|
hsl_fn = true,
|
||||||
-- max_tokens = 20480,
|
css = true,
|
||||||
-- },
|
css_fn = true,
|
||||||
-- },
|
mode = 'background',
|
||||||
-- moonshot = {
|
})
|
||||||
-- endpoint = "https://api.moonshot.ai/v1",
|
require('gitsigns').setup({
|
||||||
-- model = "kimi-k2-0711-preview",
|
signs = {
|
||||||
-- timeout = 30000, -- Timeout in milliseconds
|
add = { text = '┃' },
|
||||||
-- extra_request_body = {
|
change = { text = '┃' },
|
||||||
-- temperature = 0.75,
|
delete = { text = '_' },
|
||||||
-- max_tokens = 32768,
|
topdelete = { text = '‾' },
|
||||||
-- },
|
changedelete = { text = '~' },
|
||||||
-- },
|
untracked = { text = '┆' },
|
||||||
}
|
},
|
||||||
}
|
signs_staged = {
|
||||||
|
add = { text = '┃' },
|
||||||
|
change = { text = '┃' },
|
||||||
|
delete = { text = '_' },
|
||||||
|
topdelete = { text = '‾' },
|
||||||
|
changedelete = { text = '~' },
|
||||||
|
untracked = { text = '┆' },
|
||||||
|
},
|
||||||
|
signs_staged_enable = true,
|
||||||
|
signcolumn = true, -- Toggle with `:Gitsigns toggle_signs`
|
||||||
|
numhl = false, -- Toggle with `:Gitsigns toggle_numhl`
|
||||||
|
linehl = false, -- Toggle with `:Gitsigns toggle_linehl`
|
||||||
|
word_diff = false, -- Toggle with `:Gitsigns toggle_word_diff`
|
||||||
|
watch_gitdir = {
|
||||||
|
follow_files = true
|
||||||
|
},
|
||||||
|
auto_attach = true,
|
||||||
|
attach_to_untracked = false,
|
||||||
|
current_line_blame = false, -- Toggle with `:Gitsigns toggle_current_line_blame`
|
||||||
|
current_line_blame_opts = {
|
||||||
|
virt_text = true,
|
||||||
|
virt_text_pos = 'eol', -- 'eol' | 'overlay' | 'right_align'
|
||||||
|
delay = 1000,
|
||||||
|
ignore_whitespace = false,
|
||||||
|
virt_text_priority = 100,
|
||||||
|
use_focus = true,
|
||||||
|
},
|
||||||
|
current_line_blame_formatter = '<author>, <author_time:%R> - <summary>',
|
||||||
|
sign_priority = 6,
|
||||||
|
update_debounce = 100,
|
||||||
|
status_formatter = nil, -- Use default
|
||||||
|
max_file_length = 40000, -- Disable if file is longer than this (in lines)
|
||||||
|
preview_config = {
|
||||||
|
-- Options passed to nvim_open_win
|
||||||
|
style = 'minimal',
|
||||||
|
relative = 'cursor',
|
||||||
|
row = 0,
|
||||||
|
col = 1
|
||||||
|
},
|
||||||
|
})
|
||||||
|
require("remote-nvim").setup({
|
||||||
|
-- Configuration for devpod connections
|
||||||
|
devpod = {
|
||||||
|
binary = "devpod", -- Binary to use for devpod
|
||||||
|
docker_binary = "docker", -- Binary to use for docker-related commands
|
||||||
|
---@diagnostic disable-next-line:param-type-mismatch
|
||||||
|
-- ssh_config_path = utils.path_join(utils.is_windows, vim.fn.stdpath("data"), constants.PLUGIN_NAME, "ssh_config"), -- Path where devpod SSH configurations should be stored
|
||||||
|
search_style = "current_dir_only", -- How should devcontainers be searched
|
||||||
|
-- For dotfiles, see https://devpod.sh/docs/developing-in-workspaces/dotfiles-in-a-workspace for more information
|
||||||
|
dotfiles = {
|
||||||
|
path = nil, -- Path to your dotfiles which should be copied into devcontainers
|
||||||
|
install_script = nil -- Install script that should be called to install your dotfiles
|
||||||
|
},
|
||||||
|
gpg_agent_forwarding = false, -- Should GPG agent be forwarded over the network
|
||||||
|
container_list = "running_only", -- How should docker list containers ("running_only" or "all")
|
||||||
|
},
|
||||||
|
-- Configuration for SSH connections
|
||||||
|
ssh_config = {
|
||||||
|
ssh_binary = "ssh", -- Binary to use for running SSH command
|
||||||
|
scp_binary = "scp", -- Binary to use for running SSH copy commands
|
||||||
|
ssh_config_file_paths = { "$HOME/.ssh/config" }, -- Which files should be considered to contain the ssh host configurations. NOTE: `Include` is respected in the provided files.
|
||||||
|
|
||||||
|
-- These are useful for password-based SSH authentication.
|
||||||
|
-- It provides parsing pattern for the plugin to detect that an input is requested.
|
||||||
|
-- Each element contains the following attributes:
|
||||||
|
-- match - The string to match (plain matching is done)
|
||||||
|
-- type - Supports two values "plain"|"secret". Secret means when you provide the value, it should not be stored in the completion history of Neovim.
|
||||||
|
-- value - Default value for the prompt
|
||||||
|
-- value_type - "static"|"dynamic". For things like password, it would be needed for each new connection that the plugin initiates which could be obtrusive.
|
||||||
|
-- So, we save the value (only for current session's interval) to ease the process. If set to "dynamic", we do not save the value even for the session. You have to provide a fresh value each time.
|
||||||
|
ssh_prompts = {
|
||||||
|
{
|
||||||
|
match = "password:",
|
||||||
|
type = "secret",
|
||||||
|
value_type = "static",
|
||||||
|
value = "",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
match = "continue connecting (yes/no/[fingerprint])?",
|
||||||
|
type = "plain",
|
||||||
|
value_type = "static",
|
||||||
|
value = "",
|
||||||
|
},
|
||||||
|
-- There are other values here which can be checked in lua/remote-nvim/init.lua
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Path to the script that would be copied to the remote and called to ensure that neovim gets installed.
|
||||||
|
-- Default path is to the plugin's own ./scripts/neovim_install.sh file.
|
||||||
|
-- neovim_install_script_path = utils.path_join(
|
||||||
|
-- utils.is_windows,
|
||||||
|
-- vim.fn.fnamemodify(debug.getinfo(1).source:sub(2), ":h:h:h"),
|
||||||
|
-- "scripts",
|
||||||
|
-- "neovim_install.sh"
|
||||||
|
-- ),
|
||||||
|
|
||||||
|
-- Modify the UI for the plugin's progress viewer.
|
||||||
|
-- type can be "split" or "popup". All options from https://github.com/MunifTanjim/nui.nvim/tree/main/lua/nui/popup and https://github.com/MunifTanjim/nui.nvim/tree/main/lua/nui/split are supported.
|
||||||
|
-- Note that some options like "border" are only available for "popup".
|
||||||
|
progress_view = {
|
||||||
|
type = "popup",
|
||||||
|
},
|
||||||
|
|
||||||
|
|
||||||
|
-- Offline mode configuration. For more details, see the "Offline mode" section below.
|
||||||
|
offline_mode = {
|
||||||
|
-- Should offline mode be enabled?
|
||||||
|
enabled = false,
|
||||||
|
-- Do not connect to GitHub at all. Not even to get release information.
|
||||||
|
no_github = false,
|
||||||
|
-- What path should be looked at to find locally available releases
|
||||||
|
-- cache_dir = utils.path_join(utils.is_windows, vim.fn.stdpath("cache"), constants.PLUGIN_NAME, "version_cache"),
|
||||||
|
},
|
||||||
|
|
||||||
|
-- Remote configuration
|
||||||
|
remote = {
|
||||||
|
app_name = "nvim", -- This directly maps to the value NVIM_APPNAME. If you use any other paths for configuration, also make sure to set this.
|
||||||
|
-- List of directories that should be copied over
|
||||||
|
copy_dirs = {
|
||||||
|
-- What to copy to remote's Neovim config directory
|
||||||
|
config = {
|
||||||
|
base = vim.fn.stdpath("config"), -- Path from where data has to be copied
|
||||||
|
dirs = "*", -- Directories that should be copied over. "*" means all directories. To specify a subset, use a list like {"lazy", "mason"} where "lazy", "mason" are subdirectories
|
||||||
|
-- under path specified in `base`.
|
||||||
|
compression = {
|
||||||
|
enabled = false, -- Should compression be enabled or not
|
||||||
|
additional_opts = {} -- Any additional options that should be used for compression. Any argument that is passed to `tar` (for compression) can be passed here as separate elements.
|
||||||
|
},
|
||||||
|
},
|
||||||
|
-- What to copy to remote's Neovim data directory
|
||||||
|
data = {
|
||||||
|
base = vim.fn.stdpath("data"),
|
||||||
|
dirs = {},
|
||||||
|
compression = {
|
||||||
|
enabled = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
-- What to copy to remote's Neovim cache directory
|
||||||
|
cache = {
|
||||||
|
base = vim.fn.stdpath("cache"),
|
||||||
|
dirs = {},
|
||||||
|
compression = {
|
||||||
|
enabled = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
-- What to copy to remote's Neovim state directory
|
||||||
|
state = {
|
||||||
|
base = vim.fn.stdpath("state"),
|
||||||
|
dirs = {},
|
||||||
|
compression = {
|
||||||
|
enabled = true,
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
-- You can supply your own callback that should be called to create the local client. This is the default implementation.
|
||||||
|
-- Two arguments are passed to the callback:
|
||||||
|
-- port: Local port at which the remote server is available
|
||||||
|
-- workspace_config: Workspace configuration for the host. For all the properties available, see https://github.com/amitds1997/remote-nvim.nvim/blob/main/lua/remote-nvim/providers/provider.lua#L4
|
||||||
|
-- A sample implementation using WezTerm tab is at: https://github.com/amitds1997/remote-nvim.nvim/wiki/Configuration-recipes
|
||||||
|
client_callback = function(port, _)
|
||||||
|
require("remote-nvim.ui").float_term(("nvim --server localhost:%s --remote-ui"):format(port), function(exit_code)
|
||||||
|
if exit_code ~= 0 then
|
||||||
|
vim.notify(("Local client failed with exit code %s"):format(exit_code), vim.log.levels.ERROR)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
end,
|
||||||
|
|
||||||
|
-- Plugin log related configuration [PREFER NOT TO CHANGE THIS]
|
||||||
|
log = {
|
||||||
|
-- Where is the log file
|
||||||
|
-- filepath = utils.path_join(utils.is_windows, vim.fn.stdpath("state"), ("%s.log"):format(constants.PLUGIN_NAME)),
|
||||||
|
-- Level of logging
|
||||||
|
level = "info",
|
||||||
|
-- At what size, should we truncate the logs
|
||||||
|
max_size = 1024 * 1024 * 2, -- 2MB
|
||||||
|
},
|
||||||
})
|
})
|
||||||
|
|||||||
Reference in New Issue
Block a user