18 Commits

Author SHA1 Message Date
9b300a2eeb Merge pull request 'Newest nvim updates' (#2) from fixthis into master
Reviewed-on: #2
2026-04-13 19:20:00 -04:00
Raelon
2d6840bbc6 Newest nvim updates 2026-04-13 19:15:07 -04:00
Raelon
3c392bc31d Newest Updates 2026-04-09 12:16:23 -04:00
Raelon Masters
e20b570823 New Nvim Fixes 2026-03-14 12:27:48 -04:00
2ef5662c33 Bringing repo up to date 2025-10-12 17:42:02 -04:00
1a9f6bc5bd Updated Tags keybinds 2025-09-12 13:13:23 -04:00
7f4bf08c64 Adjusting COC 2025-09-12 12:28:52 -04:00
09c8354089 Adjusting COC 2025-09-12 12:27:37 -04:00
8954b671f6 Adjusting COC 2025-09-12 12:22:00 -04:00
27d301895b Adjusting COC 2025-09-12 12:14:53 -04:00
a1e3a88169 Adjusting COC 2025-09-12 12:05:57 -04:00
ca31baa065 Adjusting COC 2025-09-12 12:00:57 -04:00
bc9cb89e8f Adjusting COC 2025-09-12 11:53:08 -04:00
bc458aec5a Adjusting COC 2025-09-12 11:46:14 -04:00
1e613cef53 Changing Completion Engines 2025-09-09 14:26:52 -04:00
709a1bdda6 Changing Completion Engines 2025-09-09 13:09:23 -04:00
c4322b2b5a Changing Completion Engines 2025-09-09 12:38:26 -04:00
5caec86949 Changing Completion Engines 2025-09-09 11:39:04 -04:00
16 changed files with 1085 additions and 295 deletions

View File

@@ -102,3 +102,4 @@ The configuration automatically detects TTY environments and disables icons/comp
- **Claude Code**: Primary AI assistant with keymaps under `<leader>a` for chat, diff management, and file operations
- **Avante**: Secondary AI integration (currently configured for Copilot provider)
- **GitHub Copilot**: Code completion integration via copilot.vim
- Were no longer using nvim_cmp having switched to coc

95
coc-settings.json Normal file
View File

@@ -0,0 +1,95 @@
{
"coc.preferences.timeout": 300,
"suggest.enablePreview": true,
"suggest.floatEnable": true,
"suggest.detailField": "preview",
"suggest.maxPreviewWidth": 80,
"signature.enable": false,
"signature.target": "float",
"extensions": [
"coc-json",
"coc-html",
"coc-css",
"coc-pyright",
"coc-clangd",
"coc-rust-analyzer",
"coc-yaml",
"coc-tsserver",
"coc-lua",
"coc-sh",
"coc-go",
"coc-prettier",
"coc-eslint",
"coc-markdownlint",
"coc-vimlsp"
],
"pyright.enable": true,
"pyright.organizeimports.provider": "pyright",
"python.analysis.autoImportCompletions": true,
"python.analysis.autoSearchPaths": true,
"python.analysis.diagnosticMode": "workspace",
"python.analysis.typeCheckingMode": "basic",
"rust-analyzer.enable": true,
"rust-analyzer.cargo.loadOutDirsFromCheck": true,
"rust-analyzer.procMacro.enable": true,
"clangd.enabled": true,
"clangd.fallbackFlags": ["-std=c++17"],
"html.enable": true,
"css.enable": true,
"typescript.enable": true,
"javascript.enable": true,
"eslint.enable": true,
"prettier.enable": true,
"languageserver": {
"zig": {
"command": "zls",
"filetypes": ["zig"],
"rootPatterns": ["build.zig", "build.zig.zon"],
"settings": {
"zls": {
"enable_snippets": true,
"enable_ast_check_diagnostics": true,
"enable_build_on_save": true,
"build_on_save_step": "check"
}
}
},
"nim": {
"command": "nimlangserver",
"filetypes": ["nim"],
"rootPatterns": ["*.nimble", "*.nim"],
"settings": {
"nim": {
"nimsuggestPath": "nimsuggest",
"timeout": 120000
}
}
},
"vlang": {
"command": "vls",
"filetypes": ["v"],
"rootPatterns": ["v.mod"]
},
"lua": {
"command": "lua-language-server",
"filetypes": ["lua"],
"rootPatterns": [".luarc.json", ".luacheckrc", ".stylua.toml", "stylua.toml", "selene.toml"],
"settings": {
"Lua": {
"runtime": {
"version": "LuaJIT"
},
"diagnostics": {
"globals": ["vim"]
},
"workspace": {
"library": {
"${3rd}/luv/library": true,
"${3rd}/busted/library": true
}
}
}
}
}
}
}

168
init.lua
View File

@@ -8,40 +8,142 @@ require("utils.reload") -- ./lua/utils/reload.lua
require("vimwiki") -- ./lua/vimwiki.lua
require("keymaps") -- ./lua/keymaps.lua
require("lsp") -- ./lua/lsp.lua
require("completion") -- ./lua/completion.lua
-- require("godot") -- ./lua/godot.lua
-- require("completion") -- ./lua/completion.lua
require("coc") -- ./lua/coc.lua
require("treesitter") -- ./lua/treesitter.lua
require("autocmds") -- ./lua/autocmds.lua
require("diagnostics") -- ./lua/diagnostics.lua
require("avante_settings") -- ./lua/avante_settings.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
require('tokyonight').setup({
style = "moon", -- "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
},
})
cyberdream()
-- require('tokyonight').setup({
-- style = "moon", -- "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 == "cachyos" 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 == "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
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
},
})
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
-- },
-- })
end
local function is_linux_console()
@@ -54,10 +156,11 @@ local function want_truecolor()
or ((vim.env.COLORTERM or ""):lower():find("truecolor") ~= nil)
end
local function set_colorscheme()
if want_truecolor() then
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")
end
else
@@ -91,7 +194,12 @@ vim.api.nvim_create_autocmd("VimEnter", {
lualine_a = { "mode" },
lualine_b = { "branch" },
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_z = { "location" },
},
@@ -99,7 +207,7 @@ vim.api.nvim_create_autocmd("VimEnter", {
else
lualine.setup({
options = {
theme = "tokyonight",
theme = "auto",
icons_enabled = true,
globalstatus = true,
},

9
lsp/gdscript.lua Normal file
View File

@@ -0,0 +1,9 @@
local vim = vim
local port = os.getenv 'GDScript_Port' or '6005'
local cmd = vim.lsp.rpc.connect('127.0.0.1', tonumber(port))
return {
cmd = cmd,
filetypes = { 'gd', 'gdscript', 'gdscript3' },
root_markers = { 'project.godot', '.git' }
}

69
lua/avante_settings.lua Normal file
View 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 = { "🤯", "🙄" },
},
},
})

46
lua/coc.lua Normal file
View File

@@ -0,0 +1,46 @@
-- CoC configuration
vim.g.coc_global_extensions = {
'coc-json',
'coc-html',
'coc-css',
'coc-pyright',
'coc-clangd',
'coc-rust-analyzer',
'coc-yaml',
'coc-tsserver',
'coc-lua',
'coc-sh',
'coc-go',
'coc-prettier',
'coc-eslint',
'coc-markdownlint',
'coc-vimlsp',
'coc-zig'
}
-- Use <Tab> and <S-Tab> to navigate completion list
vim.keymap.set('i', '<Tab>', function()
if vim.fn['coc#pum#visible']() == 1 then
return vim.fn['coc#pum#next'](1)
else
return '<Tab>'
end
end, { expr = true, silent = true })
vim.keymap.set('i', '<S-Tab>', function()
if vim.fn['coc#pum#visible']() == 1 then
return vim.fn['coc#pum#prev'](1)
else
return '<S-Tab>'
end
end, { expr = true, silent = true })
-- Use <CR> to confirm completion
vim.keymap.set('i', '<CR>', function()
if vim.fn['coc#pum#visible']() == 1 then
return vim.fn['coc#pum#confirm']()
else
return '<CR>'
end
end, { expr = true, silent = true })

View File

@@ -15,8 +15,21 @@ cmp.setup({
return vim_item
end,
},
-- completion = {
-- completeopt = 'menu,menuone,noinsert',
-- },
completion = {
completeopt = 'menu,menuone,noinsert',
},
performance = {
max_view_entries = 10,
},
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(),
},
mapping = cmp.mapping.preset.insert({
@@ -88,55 +101,51 @@ cmp.setup.cmdline(":", {
}),
})
-- Set up lspconfig.
-- require("cmp_nvim_lsp").default_capabilities()
local capabilities = require("cmp_nvim_lsp").default_capabilities()
require("lspconfig").clangd.setup({
capabilities = capabilities,
})
require("lspconfig").taplo.setup({
capabilities = capabilities,
})
require("lspconfig").marksman.setup({
capabilities = capabilities,
})
require("lspconfig").lua_ls.setup({
capabilities = capabilities,
})
require("lspconfig").rust_analyzer.setup({
capabilities = capabilities,
})
require("lspconfig").zls.setup({
capabilities = capabilities,
})
require("lspconfig").gopls.setup({
capabilities = capabilities,
settings = {
gopls = {
analyses = {
unusedparams = true,
unusedwrite = true,
shadow = true,
},
staticcheck = true,
usePlaceholders = true,
hints = {
assignVariableTypes = true,
compositeLiteralFields = true,
compositeLiteralTypes = true,
functionTypeParameters = true,
parameterNames = true,
rangeVariableTypes = true,
},
},
},
})
require("lspconfig").basedpyright.setup({
capabilities = capabilities,
})
require("lspconfig").nim_langserver.setup({
capabilities = capabilities,
})
-- require'lspconfig'.jedi_language_server.setup {
-- LSP server configurations moved to lsp.lua to avoid duplicates
-- local capabilities = require("cmp_nvim_lsp").default_capabilities()
-- require("lspconfig").clangd.setup({
-- capabilities = capabilities,
-- }
-- })
-- require("lspconfig").taplo.setup({
-- capabilities = capabilities,
-- })
-- require("lspconfig").marksman.setup({
-- capabilities = capabilities,
-- })
-- require("lspconfig").lua_ls.setup({
-- capabilities = capabilities,
-- })
-- require("lspconfig").rust_analyzer.setup({
-- capabilities = capabilities,
-- })
-- require("lspconfig").zls.setup({
-- capabilities = capabilities,
-- })
-- require("lspconfig").gopls.setup({
-- capabilities = capabilities,
-- settings = {
-- gopls = {
-- analyses = {
-- unusedparams = true,
-- unusedwrite = true,
-- shadow = true,
-- },
-- staticcheck = true,
-- usePlaceholders = true,
-- hints = {
-- assignVariableTypes = true,
-- compositeLiteralFields = true,
-- compositeLiteralTypes = true,
-- functionTypeParameters = true,
-- parameterNames = true,
-- rangeVariableTypes = true,
-- },
-- },
-- },
-- })
-- require("lspconfig").pyright.setup({
-- capabilities = capabilities,
-- })
-- require("lspconfig").nim_langserver.setup({
-- capabilities = capabilities,
-- })

View File

@@ -157,6 +157,7 @@ function t3_make_ctags()
})
end
vim.api.nvim_create_autocmd("FileType", {
pattern = { "markdown", "norg", "md", "wiki" }, -- Set for markdown file type
callback = function()

18
lua/godot.lua Normal file
View File

@@ -0,0 +1,18 @@
local vim = vim
local paths_to_check = {'/', '/../'}
local is_godot_project = false
local godot_project_path = ''
local cwd = vim.fn.getcwd()
for key, value in pairs(paths_to_check) do
if vim.uv.fs_stat(cwd .. value .. 'project.godot') then
is_godot_project = true
godot_project_path = cwd .. value
break
end
end
local is_server_running = vim.uv.fs_stat(godot_project_path .. '/server.pipe')
if is_godot_project and not is_server_running then
vim.fn.serverstart(godot_project_path .. '/server.pipe')
end

View File

@@ -12,8 +12,8 @@ end, { noremap = true })
-- Leader Maps
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>fe", ":Pick files<CR>", { desc = "File Picker"})
-- vim.keymap.set("n", "<leader>ff", ":FzfLua files<CR>", { desc = "File Finder"})
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>b", "", { desc = "Buffers"})
@@ -88,6 +88,7 @@ vim.keymap.set("n", "<M-x>_", ":resize -5<CR>", { desc = "Decrease Window Height
-- 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-f>", ":Pick files<CR>", { desc = "File Picker"})
vim.keymap.set("n", "<C-x><C-h>", ":Pick help<CR>", { desc = "Help Picker"})
@@ -100,33 +101,33 @@ 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>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-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 --
vim.keymap.set("n", "<F1>", ":nohlsearch<CR>", { desc = "Clear Search Highlight"})
vim.keymap.set("n", "<F2>", ":UndotreeToggle<CR>", { desc = "Undo Tree Toggle"})
vim.keymap.set("n", "<F3>", ":Ranger<CR>", { desc = "Ranger"})
vim.keymap.set("n", "<c-F3>", ":RangerNewTab<CR>", { desc = "Ranger New Tab"})
vim.keymap.set("n", "<F9>", ":Telescope live_grep<CR>", { desc = "Live Grep"})
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", "<F12>", ":setlocal wrap!<CR>", { desc = "Toggle Line Wrap"})
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>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>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>ab", "<cmd>ClaudeCodeAdd %<cr>", {desc = "Add current buffer" })
vim.keymap.set( "v", "<leader>as", "<cmd>ClaudeCodeSend<cr>", {desc = "Send to Claude" })
-- 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>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>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>ab", "<cmd>ClaudeCodeAdd %<cr>", {desc = "Add current buffer" })
-- 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>aa", "<cmd>ClaudeCodeDiffAccept<cr>", {desc = "Accept diff" })
vim.keymap.set( "n", "<leader>ad", "<cmd>ClaudeCodeDiffDeny<cr>", {desc = "Deny diff" })
-- LSP Related Keys --
vim.keymap.set( "n", "<leader>l", "", {desc = "LSP" })
vim.keymap.set( "n", "<leader>lo", "", {desc = "LSP Overlays" })
vim.keymap.set( "n", "<leader>los", "<cmd>Trouble symbols<cr>", {desc = "Symbols" })
vim.keymap.set( "n", "<leader>lod", "<cmd>Trouble diagnostics<cr>", {desc = "Diagnostics" })
-- 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.api.nvim_create_autocmd("FileType", {
pattern = { "NvimTree", "neo-tree", "oil", "minifiles" },
callback = function()
@@ -136,3 +137,59 @@ vim.api.nvim_create_autocmd("FileType", {
})
end,
})
-- COC Keybindings
vim.keymap.set( "n", "K", function() _G.ShowDocumentation() end, { noremap = true, silent = true, desc = "Show Documentation" })
vim.keymap.set( "n", "<leader>l", "", {desc = "LSP" })
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>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>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
vim.keymap.set( "n", "<leader>lt", "", {desc = "Tags" })
vim.keymap.set( "n", "<leader>lts", ":Telescope lsp_document_symbols<CR>", {desc = "Document Symbols" })
vim.keymap.set( "n", "<leader>ltw", ":Telescope lsp_workspace_symbols<CR>", {desc = "Workspace Symbols" })
vim.keymap.set( "n", "<leader>ltd", ":Telescope lsp_dynamic_workspace_symbols<CR>", {desc = "Dynamic Workspace Symbols" })
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", "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>e", ":Lexplore<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", })

View File

@@ -40,147 +40,35 @@ vim.lsp.enable('basedpyright', {
}
})
-- Alternative: If you have regular pyright installed
-- vim.lsp.enable('pyright', {
-- settings = {
-- python = {
-- analysis = {
-- typeCheckingMode = "basic",
-- autoSearchPaths = true,
-- useLibraryCodeForTypes = true,
-- diagnosticMode = "workspace",
-- }
-- }
-- }
-- })
-- vim.lsp.config('gdscript', {})
-- vim.lsp.enable('gdscript')
-- Alternative: Manual LSP start if vim.lsp.enable doesn't work
-- vim.api.nvim_create_autocmd('FileType', {
-- pattern = 'python',
-- callback = function()
-- -- Check if basedpyright is available first
-- if vim.fn.executable('basedpyright-langserver') == 1 then
-- vim.lsp.start({
-- name = 'basedpyright',
-- cmd = { 'basedpyright-langserver', '--stdio' },
-- root_dir = vim.fs.dirname(
-- vim.fs.find({ 'pyproject.toml', 'setup.py', '.git' }, { upward = true })[1]
-- ),
-- settings = {
-- basedpyright = {
-- analysis = {
-- typeCheckingMode = "basic",
-- autoSearchPaths = true,
-- useLibraryCodeForTypes = true,
-- }
-- }
-- }
-- })
-- elseif vim.fn.executable('pyright-langserver') == 1 then
-- vim.lsp.start({
-- name = 'pyright',
-- cmd = { 'pyright-langserver', '--stdio' },
-- root_dir = vim.fs.dirname(
-- vim.fs.find({ 'pyproject.toml', 'setup.py', '.git' }, { upward = true })[1]
-- ),
-- settings = {
-- python = {
-- analysis = {
-- typeCheckingMode = "basic",
-- autoSearchPaths = true,
-- useLibraryCodeForTypes = true,
-- }
-- }
-- }
-- })
-- else
-- print("Neither basedpyright-langserver nor pyright-langserver found")
-- end
-- end,
-- })
require("lsp_signature").setup({
debug = false,
bind = true,
doc_lines = 10,
max_height = 12,
max_width = function() return math.floor(vim.api.nvim_win_get_width(0) * 0.8) end,
doc_lines = 5,
max_height = 8,
max_width = function() return math.floor(vim.api.nvim_win_get_width(0) * 0.7) end,
wrap = true,
floating_window = true,
floating_window_above_cur_line = true,
floating_window_above_cur_line = false,
floating_window_off_x = 1,
floating_window_off_y = 0,
hint_enable = true,
floating_window_off_y = 2,
-- hint_enable = true,
hint_enable = false,
hint_inline = function() return false end,
hint_prefix = "🐼 ",
-- hint_prefix = "🐼 ",
hint_prefix = "",
hint_scheme = "String",
hi_parameter = "LspSignatureActiveParameter",
handler_opts = { border = "rounded" },
always_trigger = false,
auto_close_after = 5,
extra_trigger_chars = { "(", "," },
zindex = 200,
-- zindex = 200,
zindex = 50,
padding = "",
timer_interval = 200,
})
-- local vim = vim
-- -- vim.cmd [[
-- -- augroup LspCompletion
-- -- 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('gopls', {
-- settings = {
-- gopls = {
-- analyses = {
-- unusedparams = true,
-- unusedwrite = true,
-- shadow = true,
-- },
-- staticcheck = true,
-- usePlaceholders = true,
-- hints = {
-- assignVariableTypes = true,
-- compositeLiteralFields = true,
-- compositeLiteralTypes = true,
-- functionTypeParameters = true,
-- parameterNames = true,
-- rangeVariableTypes = true,
-- },
-- },
-- },
-- })
-- vim.lsp.enable('nim_langserver')
-- vim.lsp.enable('pyright')
-- require("lsp_signature").setup({
-- debug = false,
-- bind = true, -- registers signature handler
-- doc_lines = 10,
-- max_height = 12,
-- max_width = function() return math.floor(vim.api.nvim_win_get_width(0) * 0.8) end,
-- wrap = true,
-- floating_window = true, -- show the popup
-- floating_window_above_cur_line = true,
-- floating_window_off_x = 1,
-- floating_window_off_y = 0,
--
-- -- IMPORTANT: dont inline (you can change later if you want)
-- hint_enable = true,
-- hint_inline = function() return false end,
--
-- hint_prefix = "🐼 ",
-- hint_scheme = "String",
-- hi_parameter = "LspSignatureActiveParameter",
-- handler_opts = { border = "rounded" },
--
-- always_trigger = false,
-- extra_trigger_chars = { "(", "," }, -- good default
-- zindex = 200,
-- padding = "",
-- timer_interval = 200,
-- })

View File

@@ -12,14 +12,16 @@ vim.o.wildmode = "longest:full,full"
vim.o.wildoptions = "pum"
vim.g.mapleader = " "
vim.o.termguicolors = true
vim.o.winborder = "shadow"
vim.o.winborder = "rounded"
vim.o.clipboard = "unnamedplus"
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.cursorline = true
vim.o.sessionoptions="blank,buffers,curdir,folds,help,tabpages,winsize,winpos,terminal,localoptions"
vim.g.netrw_keepdir = 0
vim.g.netrw_keepdir = 1
vim.g.netrw_winsize = 20
vim.g.netrw_banner = 0
vim.g.netrw_localcopydircmd = 'cp -avr'

View File

@@ -2,7 +2,8 @@ local vim = vim
local host = vim.loop.os_gethostname()
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/ibhagwan/fzf-lua" },
{ src = "https://github.com/echasnovski/mini.pick" },
@@ -18,14 +19,17 @@ vim.pack.add({
{ src = "https://github.com/folke/which-key.nvim" },
{ src = "https://github.com/L3MON4D3/LuaSnip" },
{ src = "https://github.com/neovim/nvim-lspconfig" },
{ src = "https://github.com/hrsh7th/nvim-cmp" },
{ src = "https://github.com/hrsh7th/cmp-nvim-lsp" },
{ src = "https://github.com/hrsh7th/cmp-buffer" },
{ src = "https://github.com/hrsh7th/cmp-path" },
{ src = "https://github.com/hrsh7th/cmp-cmdline" },
{ src = "https://github.com/hrsh7th/cmp-nvim-lua" },
{ src = "https://github.com/saadparwaiz1/cmp_luasnip" },
{ src = "https://github.com/github/copilot.vim" },
{ src = "https://github.com/neoclide/coc.nvim" },
{ src = "https://github.com/fannheyward/coc-pyright" },
-- { src = "https://github.com/hrsh7th/nvim-cmp" },
-- { src = "https://github.com/hrsh7th/cmp-nvim-lsp" },
-- { src = "https://github.com/hrsh7th/cmp-buffer" },
-- { src = "https://github.com/hrsh7th/cmp-path" },
-- { src = "https://github.com/hrsh7th/cmp-cmdline" },
-- { src = "https://github.com/hrsh7th/cmp-nvim-lua" },
-- { src = "https://github.com/saadparwaiz1/cmp_luasnip" },
-- { 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/nvim-orgmode/org-bullets.nvim" },
{ src = "https://github.com/lukas-reineke/headlines.nvim" },
@@ -56,13 +60,16 @@ vim.pack.add({
{ src = "https://github.com/mbbill/undotree.git" },
{ src = "https://github.com/francoiscabrol/ranger.vim" },
{ 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/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.pick').setup({})
@@ -72,9 +79,74 @@ require('mini.surround').setup({})
require('mini.indentscope').setup({})
require('mini.tabline').setup({})
require('mini.fuzzy').setup({})
require('lualine').setup({ options = { theme = 'tokyonight' } })
-- require('lualine').setup({ options = { theme = 'tokyonight' } })
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('todo-comments').setup({
options = {
@@ -137,34 +209,215 @@ require('nvim-devdocs').setup({})
-- inc_rename = false, -- enables an input dialog for inc-rename.nvim
-- lsp_doc_border = false, -- add a border to hover docs and signature help
-- },
-- routes = {
-- view = "notify",
-- filter = { event = "msg_showmode" },
-- },
-- })
require("claudecode").setup({})
require('avante').setup({
opts = {
-- add any opts here
-- this file can contain specific instructions for your project
instructions_file = "avante.md",
-- for example
provider = "copilot",
providers = {
-- claude = {
-- endpoint = "https://api.anthropic.com",
-- model = "claude-sonnet-4-20250514",
-- timeout = 30000, -- Timeout in milliseconds
-- extra_request_body = {
-- temperature = 0.75,
-- max_tokens = 20480,
-- },
-- },
-- moonshot = {
-- endpoint = "https://api.moonshot.ai/v1",
-- model = "kimi-k2-0711-preview",
-- timeout = 30000, -- Timeout in milliseconds
-- extra_request_body = {
-- temperature = 0.75,
-- max_tokens = 32768,
-- },
-- },
}
}
-- require("claudecode").setup({})
require('arduino-nvim').setup({
default_fqbn = "esp32:esp32:esp32",
filetypes = {"arduino"}
})
require('colorizer').setup({
'*',
}, {
RGB = true,
RRGGBB = true,
names = true,
RRGGBBAA = true,
rgb_fn = true,
hsl_fn = true,
css = true,
css_fn = true,
mode = 'background',
})
require('gitsigns').setup({
signs = {
add = { text = '' },
change = { text = '' },
delete = { text = '_' },
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
},
})

View File

@@ -1,9 +1,9 @@
local configs = require('nvim-treesitter.configs')
configs.setup({
-- ensure_installed = {
-- "ini", "bash", "c", "lua", "vim", "vimdoc", "query", "python",
-- "rust", "zig", "typescript", "svelte", "css", "html", "nix"
-- },
-- local configs = require('nvim-treesitter.configs')
require'nvim-treesitter'.setup({
ensure_installed = {
"ini", "bash", "c", "lua", "vim", "vimdoc", "query", "python",
"rust", "zig", "typescript", "svelte", "css", "html", "nix"
},
sync_install = false,
highlight = { enable = true },
indent = { enable = true, disable = { "norg" }, },

View File

@@ -185,3 +185,13 @@ vim.api.nvim_create_user_command("Vsplit", function()
vim.cmd("vsplit")
vim.cmd("wincmd l")
end, {})
function _G.ShowDocumentation()
local filetype = vim.bo.filetype
if filetype == "vim" or filetype == "help" then
vim.cmd("h " .. vim.fn.expand("<cword>"))
else
vim.fn.CocActionAsync("doHover")
end
end

224
nvim-pack-lock.json Normal file
View File

@@ -0,0 +1,224 @@
{
"plugins": {
"LuaSnip": {
"rev": "dae4f5aaa3574bd0c2b9dd20fb9542a02c10471c",
"src": "https://github.com/L3MON4D3/LuaSnip"
},
"arduino-nvim": {
"rev": "086901d0b33a330c2f6e3fe2095ad8166c093e88",
"src": "https://github.com/glebzlat/arduino-nvim"
},
"auto-session": {
"rev": "62437532b38495551410b3f377bcf4aaac574ebe",
"src": "https://github.com/rmagatti/auto-session"
},
"avante.nvim": {
"rev": "98b7fc255aa28a352f97dd4c0c0ab2a13b0b0657",
"src": "https://github.com/yetone/avante.nvim"
},
"barbar.nvim": {
"rev": "539d73def39c9172b4d4d769f14090e08f37b29d",
"src": "https://github.com/romgrk/barbar.nvim"
},
"coc-pyright": {
"rev": "315bf413533e32cbeef488654360a0b8359b1044",
"src": "https://github.com/fannheyward/coc-pyright"
},
"coc.nvim": {
"rev": "ab9219aa43f0442131c4087e537e2760147e134e",
"src": "https://github.com/neoclide/coc.nvim"
},
"crates.nvim": {
"rev": "ac9fa498a9edb96dc3056724ff69d5f40b898453",
"src": "https://github.com/saecki/crates.nvim"
},
"cyberdream.nvim": {
"rev": "a68ffa6af98bf1fc88f33a071c51a188ec85c725",
"src": "https://github.com/scottmckendry/cyberdream.nvim"
},
"fzf-lua": {
"rev": "d9508cc1d05ffcdc91a32dfd38fc1013a56b20da",
"src": "https://github.com/ibhagwan/fzf-lua"
},
"garbage-day.nvim": {
"rev": "2fcc56556281de8ee871a5f3beb9db7ab747ef32",
"src": "https://github.com/zeioth/garbage-day.nvim"
},
"gitsigns.nvim": {
"rev": "7c4faa3540d0781a28588cafbd4dd187a28ac6e3",
"src": "https://github.com/lewis6991/gitsigns.nvim"
},
"glance.nvim": {
"rev": "bf86d8b79dce808e65fdb6e9269d0b4ed6d2eefc",
"src": "https://github.com/DNLHC/glance.nvim"
},
"goto-preview": {
"rev": "d2d6923c9b9e0e43f0b9b566f261a8b1ae016540",
"src": "https://github.com/rmagatti/goto-preview"
},
"headlines.nvim": {
"rev": "bf17c96a836ea27c0a7a2650ba385a7783ed322e",
"src": "https://github.com/lukas-reineke/headlines.nvim"
},
"lazygit.nvim": {
"rev": "a04ad0dbc725134edbee3a5eea29290976695357",
"src": "https://github.com/kdheepak/lazygit.nvim"
},
"logger.nvim": {
"rev": "63dd10c9b9a159fd6cfe08435d9606384ff103c5",
"src": "https://github.com/rmagatti/logger.nvim"
},
"lsp_signature.nvim": {
"rev": "af7e4074d85d785cf6614352ba9ad3b28a1f8a56",
"src": "https://github.com/ray-x/lsp_signature.nvim"
},
"lualine.nvim": {
"rev": "47f91c416daef12db467145e16bed5bbfe00add8",
"src": "https://github.com/nvim-lualine/lualine.nvim"
},
"m_taskwarrior_d.nvim": {
"rev": "e18ac5f3b73066113ebc153003c208d32ff752d3",
"src": "https://github.com/huantrinh1802/m_taskwarrior_d.nvim"
},
"mini.files": {
"rev": "57eb96a828f80efb8095a611e3aafcfa43548f8b",
"src": "https://github.com/echasnovski/mini.files"
},
"mini.fuzzy": {
"rev": "1d55e3d50a1074f0e644688f8c140cfe65f2b489",
"src": "https://github.com/echasnovski/mini.fuzzy"
},
"mini.icons": {
"rev": "5b9076dae1bfbe47ba4a14bc8b967cde0ab5d77e",
"src": "https://github.com/echasnovski/mini.icons"
},
"mini.indentscope": {
"rev": "065c7713fb4cd0124fe1462f15f27feeb8b04406",
"src": "https://github.com/echasnovski/mini.indentscope"
},
"mini.notify": {
"rev": "e506fb6da26c0a31ee6b1d2eb99626cb147f28ca",
"src": "https://github.com/echasnovski/mini.notify"
},
"mini.pairs": {
"rev": "b7fde3719340946feb75017ef9d75edebdeb0566",
"src": "https://github.com/echasnovski/mini.pairs"
},
"mini.pick": {
"rev": "8521fe21df86e08d9e4b3c3f3a7d50e47954e1af",
"src": "https://github.com/echasnovski/mini.pick"
},
"mini.surround": {
"rev": "d205d1741d1fcc1f3117b4e839bf00f74ad72fa2",
"src": "https://github.com/echasnovski/mini.surround"
},
"mini.tabline": {
"rev": "d03f10bf562cef57bd9f80f82c54269ff4816a15",
"src": "https://github.com/echasnovski/mini.tabline"
},
"nim.nvim": {
"rev": "9ee8fdc04ad3d7fcbd9679e0be3477543f17b9d9",
"src": "https://github.com/alaviss/nim.nvim"
},
"nui.nvim": {
"rev": "de740991c12411b663994b2860f1a4fd0937c130",
"src": "https://github.com/MunifTanjim/nui.nvim"
},
"nvim-colorizer.lua": {
"rev": "a065833f35a3a7cc3ef137ac88b5381da2ba302e",
"src": "https://github.com/norcalli/nvim-colorizer.lua"
},
"nvim-devdocs": {
"rev": "1ab982d3e069d191d9157b897c8b70cf48b7f77a",
"src": "https://github.com/luckasRanarison/nvim-devdocs"
},
"nvim-lspconfig": {
"rev": "2163c54bb6cfec53e3e555665ada945b8c8331b9",
"src": "https://github.com/neovim/nvim-lspconfig"
},
"nvim-treesitter": {
"rev": "5cb05e1b0fa3c469958a2b26f36b3fe930af221c",
"src": "https://github.com/nvim-treesitter/nvim-treesitter"
},
"nvim-web-devicons": {
"rev": "737cf6c657898d0c697311d79d361288a1343d50",
"src": "https://github.com/nvim-tree/nvim-web-devicons"
},
"org-bullets.nvim": {
"rev": "21437cfa99c70f2c18977bffd423f912a7b832ea",
"src": "https://github.com/nvim-orgmode/org-bullets.nvim"
},
"pathlib.nvim": {
"rev": "57e5598af6fe253761c1b48e0b59b7cd6699e2c1",
"src": "https://github.com/pysan3/pathlib.nvim"
},
"plenary.nvim": {
"rev": "b9fd5226c2f76c951fc8ed5923d85e4de065e509",
"src": "https://github.com/nvim-lua/plenary.nvim"
},
"rainbow-delimiters.nvim": {
"rev": "01993eb20c6cdc1d33e7e98252368840309f99b9",
"src": "https://github.com/HiPhish/rainbow-delimiters.nvim"
},
"ranger.vim": {
"rev": "91e82debdf566dfaf47df3aef0a5fd823cedf41c",
"src": "https://github.com/francoiscabrol/ranger.vim"
},
"remote-nvim.nvim": {
"rev": "9992c2fb8bf4f11aca2c8be8db286b506f92efcb",
"src": "https://github.com/amitds1997/remote-nvim.nvim"
},
"snacks.nvim": {
"rev": "9912042fc8bca2209105526ac7534e9a0c2071b2",
"src": "https://github.com/folke/snacks.nvim"
},
"sniprun": {
"rev": "973acfe83cff35d13b95369a5606c47565b824fb",
"src": "https://github.com/michaelb/sniprun"
},
"telescope-project.nvim": {
"rev": "8e11df94419e444601c09828dadf70890484e443",
"src": "https://github.com/nvim-telescope/telescope-project.nvim"
},
"telescope-ui-select.nvim": {
"rev": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2",
"src": "https://github.com/nvim-telescope/telescope-ui-select.nvim"
},
"telescope.nvim": {
"rev": "5255aa27c422de944791318024167ad5d40aad20",
"src": "https://github.com/nvim-telescope/telescope.nvim"
},
"tiny-inline-diagnostic.nvim": {
"rev": "ba133b3e932416e4b9507095731a6d7276878fe8",
"src": "https://github.com/rachartier/tiny-inline-diagnostic.nvim"
},
"todo-comments.nvim": {
"rev": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668",
"src": "https://github.com/folke/todo-comments.nvim"
},
"toggleterm.nvim": {
"rev": "9a88eae817ef395952e08650b3283726786fb5fb",
"src": "https://github.com/akinsho/toggleterm.nvim"
},
"trouble.nvim": {
"rev": "bd67efe408d4816e25e8491cc5ad4088e708a69a",
"src": "https://github.com/folke/trouble.nvim"
},
"undotree": {
"rev": "6fa6b57cda8459e1e4b2ca34df702f55242f4e4d",
"src": "https://github.com/mbbill/undotree.git"
},
"vim-tmux-navigator": {
"rev": "e41c431a0c7b7388ae7ba341f01a0d217eb3a432",
"src": "https://github.com/christoomey/vim-tmux-navigator"
},
"vimwiki": {
"rev": "72792615e739d0eb54a9c8f7e0a46a6e2407c9e8",
"src": "https://github.com/vimwiki/vimwiki"
},
"which-key.nvim": {
"rev": "3aab2147e74890957785941f0c1ad87d0a44c15a",
"src": "https://github.com/folke/which-key.nvim"
}
}
}