Compare commits

...
19 Commits
Author SHA1 Message Date
thallada dbe6a13f68 bugfix: override bg colors in CodeDiff so dim-inactive works
Text had a visible black background in my colorscheme in certain
CodeDiff buffers like the explorer or git log when dim-inactive (the
window does not have current focus). This hack Claude came up with seems
to resolve that issue until it can be fixed upstream.
2026-08-12 01:05:11 +00:00
thallada 0c5d88c1f4 bugfix: disable snacks animations in CodeDiff tabs
Fixes gitter with scrolling and commands like `gg` and `G`. See: https://github.com/esmuellert/codediff.nvim/issues/519

This config disables the snacks animations on CodeDiff tabs while
keeping them active in other tabs.
2026-08-11 21:30:38 +00:00
thallada e48b74c644 Add cendre colorscheme 2026-08-11 21:16:35 +00:00
thallada ab86df7274 Swap DiffView with CodeDiff
CodeDiff is supposed to be the successor to DiffView. It also has file
watching built-in so I can drop the custom `directory-watcher.lua`.
2026-08-11 20:30:07 +00:00
thalladaandClaude Opus 5 995ecb11d3 Use the LazyVim oxc extra instead of hand-rolled oxlint config
The oxlint LSP now enables type-aware linting on its own when tsgolint is
present and .oxlintrc.json mentions typescript, and ships :LspOxlintFixAll --
which is what the oxlint_fix function reimplemented by shelling out to the CLI.
The extra also sets fixKind = "all" and prefers the top-level oxlint config in
monorepos. Fixes now apply as a workspace edit instead of writing to disk and
reloading.

oxfmt takes js/ts/json/vue over prettier; prettier keeps css/html/yaml/markdown.
Add oxlint to mason so it resolves outside projects with a local install.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 13:18:30 -04:00
thalladaandClaude Opus 5 76cdb9d1f6 Sync lazy-lock.json
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 bd3db43e3a Register wezterm-types with lazydev
The plugin was installed and eagerly loaded but never added to lazydev's
library, so it provided no completion for wezterm configs.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 fff32f07a6 Switch obsidian.nvim to the maintained fork
epwalsh/obsidian.nvim is unmaintained and was pinned to a July 2024 commit.
Use the community fork, drop the nvim-cmp dependency that LazyVim disables, and
point the picker at snacks instead of pulling in fzf-lua.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 cf36c2f164 Make java and neotest config portable
jdtls hardcoded /Library/Java/JavaVirtualMachines paths, which resolve to
nothing off macOS; discover JDKs across the macOS, Linux and sdkman roots
instead and only declare runtimes that exist. neotest-mocha passed `docker exec
-it`, which hangs without a TTY, and hardcoded the container name.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 d805ae3ee4 Stop double-rendering diagnostics on the current line
virtual_text and virtual_lines.current_line were both on, so the cursor line
showed each message inline and again below it.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 4d942a5368 Modernize deprecated Neovim APIs
vim.loop -> vim.uv and vim.highlight.range -> vim.hl.range. Also drop the
completeopt comment referring to nvim-cmp, which blink.cmp replaced.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 afd5c22140 Disable lazy.nvim luarocks integration
oxocarbon.nvim published a rockspec, which made lazy.nvim attempt a luarocks
install on every startup: it cloned hererocks, failed the build, raised "Too
many rounds of missing plugins", and cost ~2.2s per launch. Nothing here needs
luarocks.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 aa459c4f52 Lazy-load colorschemes and key-analyzer
defaults.lazy = false meant every colorscheme spec with opts ran setup() on each
launch; gruvbox, kanagawa, nightfox and moonbow all showed up in the startup
profile. lazy.nvim loads colorscheme plugins on demand via ColorSchemePre. Drop
monochrome (last commit 2021) and onedarker (2022), point install.colorscheme at
the theme actually in use, and gate key-analyzer behind its command.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 b25b5a128d Remove plugins superseded by LazyVim defaults
- mini.indentscope: snacks.indent has scope enabled by default, and the extra
  existed only to disable it in favour of an animation set to 1ms
- nvim-pqf: eagerly loaded and cosmetic; nvim-bqf covers quickfix on ft=qf
- dial.lua: the override replaced the extra's keys and opts, dropping visual
  mode, g<C-a>/g<C-x>, and the per-filetype augend groups

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 e52b0061ea Replace toggleterm with Snacks.terminal
Snacks.terminal has been driving the terminal keymaps since 6341c73. Carry
<C-\> and <F12> over so the muscle memory survives. The old <M-> binding was
never a valid keycode and could not have fired.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 58ebc9f9c2 Replace nvim-ufo with LazyVim's native LSP folding
LazyVim wires foldexpr to vim.lsp.foldexpr() when the server advertises
textDocument/foldingRange, falling back to vim.treesitter.foldexpr(). ufo's init
block fought that by setting foldcolumn/foldlevel/foldenable and remapping
zR/zM. The servers["*"] foldingRange capability is also redundant: Neovim
advertises it with lineFoldingOnly by default.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 06bcc382af Remove Avante leftovers from blink.cmp config
Avante was removed in c26b6c9 but blink-cmp-avante stayed as a dependency and
"avante" stayed first in sources.default, so the provider still loaded at
startup. Restore `keymap = { preset = "super-tab" }` now that LazyVim#6183 has
shipped; the workaround called require() during spec evaluation, which pulled
blink.cmp into startup.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 bc500da957 Remove packer-era and dead config files
.luarc.json referenced ~90 packer plugins under a /home/thallada path and a
linuxbrew nvim that no longer exists; lazydev.nvim covers this now. .stylua.toml
was shadowed by stylua.toml and its settings never applied. .gitignore only held
packer_compiled.lua, and disabled.lua returned an empty table.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
thalladaandClaude Opus 5 203aeadad8 Fix keymap and plugin spec bugs
- Move fugitive force-push from <leader>gf to <leader>gF; <leader>gf is
  LazyVim's read-only "Git Current File History"
- octo.nvim used `opt` instead of `opts`, so the PR comment mappings were
  silently dropped; also drop the spec duplicated by the util.octo extra
- oil's `-` keymap had `desc` nested in a third table, so lazy.nvim ignored it

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
2026-07-31 12:27:20 -04:00
31 changed files with 344 additions and 761 deletions
-1
View File
@@ -1 +0,0 @@
plugin/packer_compiled.lua
-198
View File
@@ -1,198 +0,0 @@
{
"workspace.library": [
"/home/thallada/.local/share/nvim/site/pack/packer/start/neodev.nvim/types/nightly",
"/home/linuxbrew/.linuxbrew/Cellar/neovim/HEAD-b2e8c0d/share/nvim/runtime/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/opt/copilot.lua/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/opt/crates.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/opt/nvim-code-action-menu/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/Comment.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/alpha-nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/auto-session/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/bufferline.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cellular-automaton.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-buffer/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-cmdline/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-git/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp-signature-help/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-path/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-vsnip/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/copilot-cmp/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/diffview.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/fidget.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/git-conflict.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/gitsigns.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/goto-preview/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/gruvbox.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/gui-font-resize.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/impatient.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/kanagawa.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/leap.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/lspkind.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/lualine.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/mason-lspconfig.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/mason.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/neoai.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/neodev.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/neotest/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/neotest-rust/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nui.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/null-ls.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/numb.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-autopairs/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-cmp/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap-ui/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap-virtual-text/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lastplace/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lightbulb/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lspconfig/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-pqf/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-surround/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-pairs/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-textobjects/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-ts-autotag/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-ts-context-commentstring/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-web-devicons/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/octo.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/oil.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/oxocarbon.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/packer.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/plenary.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/rest.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/rust-tools.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/session-lens/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-emoji.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-env.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-fzf-native.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-github.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-project.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-ui-select.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/toggleterm.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/tokyonight.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/treesj/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/trouble.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/true-zen.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/typescript.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-startuptime/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/which-key.nvim/lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/winshift.nvim/lua",
"/home/thallada/.config/nvim",
"/home/thallada/.local/share/nvim/site",
"/home/thallada/.local/share/nvim/site/pack/packer/start/Comment.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/FixCursorHold.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/alpha-nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/auto-session",
"/home/thallada/.local/share/nvim/site/pack/packer/start/bufferline.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cellular-automaton.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-buffer",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-cmdline",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-git",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp-signature-help",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-path",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-vsnip",
"/home/thallada/.local/share/nvim/site/pack/packer/start/copilot-cmp",
"/home/thallada/.local/share/nvim/site/pack/packer/start/diffview.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/fidget.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/friendly-snippets",
"/home/thallada/.local/share/nvim/site/pack/packer/start/git-conflict.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/gitsigns.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/goto-preview",
"/home/thallada/.local/share/nvim/site/pack/packer/start/gruvbox.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/gui-font-resize.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/impatient.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/indent-blankline.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/kanagawa.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/leap.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/lspkind.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/lualine.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/mason-lspconfig.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/mason.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/neoai.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/neodev.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/neotest",
"/home/thallada/.local/share/nvim/site/pack/packer/start/neotest-rust",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nui.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/null-ls.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/numb.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-autopairs",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-cmp",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-colorizer.lua",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap-ui",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-dap-virtual-text",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lastplace",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lightbulb",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-lspconfig",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-pqf",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-surround",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-context",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-pairs",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-refactor",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-treesitter-textobjects",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-ts-autotag",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-ts-context-commentstring",
"/home/thallada/.local/share/nvim/site/pack/packer/start/nvim-web-devicons",
"/home/thallada/.local/share/nvim/site/pack/packer/start/octo.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/oil.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/oxocarbon.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/packer.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/papercolor-theme",
"/home/thallada/.local/share/nvim/site/pack/packer/start/plenary.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/rest.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/rust-tools.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/session-lens",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-emoji.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-env.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-fzf-native.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-github.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-project.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-symbols.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope-ui-select.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/telescope.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/toggleterm.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/tokyonight.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/treesj",
"/home/thallada/.local/share/nvim/site/pack/packer/start/trouble.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/true-zen.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/typescript.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-eunuch",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-fugitive",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-just",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-mundo",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-repeat",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-rhubarb",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-sleuth",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-startuptime",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-unimpaired",
"/home/thallada/.local/share/nvim/site/pack/packer/start/vim-vsnip",
"/home/thallada/.local/share/nvim/site/pack/packer/start/which-key.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/winshift.nvim",
"/home/thallada/.local/share/nvim/site/pack/packer/start/zig.vim",
"/home/linuxbrew/.linuxbrew/Cellar/neovim/HEAD-b2e8c0d/share/nvim/runtime",
"/home/linuxbrew/.linuxbrew/Cellar/neovim/HEAD-b2e8c0d/share/nvim/runtime/pack/dist/opt/matchit",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-buffer/after",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-cmdline/after",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp/after",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-nvim-lsp-signature-help/after",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-path/after",
"/home/thallada/.local/share/nvim/site/pack/packer/start/cmp-vsnip/after",
"/home/thallada/.local/share/nvim/site/pack/packer/start/octo.nvim/after",
"/home/thallada/.local/share/nvim/site/pack/packer/start/rest.nvim/after",
"/home/thallada/.config/nvim/after",
"/home/thallada/.config/nvim/lua",
"${3rd}/luassert/library",
"${3rd}/luv/library"
],
"diagnostics.globals": [
"vim"
]
}
-6
View File
@@ -1,6 +0,0 @@
column_width = 160
line_endings = "Unix"
indent_type = "Spaces"
indent_width = 2
quote_style = "AutoPreferSingle"
no_call_parentheses = true
+65 -76
View File
@@ -1,134 +1,123 @@
{ {
"LazyVim": { "branch": "main", "commit": "83d90f339defdb109a6ede333865a66ffc7ef6aa" }, "LazyVim": { "branch": "main", "commit": "c10948c50b18fae7f256433afdef09e432410480" },
"SchemaStore.nvim": { "branch": "main", "commit": "7127911cc824a1d2f600492edd9667b476cf3eda" }, "SchemaStore.nvim": { "branch": "main", "commit": "c8170f9628265f5a01510182703bab9125ef15d8" },
"blink-cmp-avante": { "branch": "master", "commit": "4f494c6e124acbe31a8f5d58effa0c14aa38a6d5" },
"blink-copilot": { "branch": "main", "commit": "7ad8209b2f880a2840c94cdcd80ab4dc511d4f39" }, "blink-copilot": { "branch": "main", "commit": "7ad8209b2f880a2840c94cdcd80ab4dc511d4f39" },
"blink-emoji.nvim": { "branch": "master", "commit": "dff709139ad5389fb55ebab026e75278a12b325a" }, "blink-emoji.nvim": { "branch": "master", "commit": "dff709139ad5389fb55ebab026e75278a12b325a" },
"blink.cmp": { "branch": "main", "commit": "78336bc89ee5365633bcf754d93df01678b5c08f" }, "blink.cmp": { "branch": "main", "commit": "78336bc89ee5365633bcf754d93df01678b5c08f" },
"bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" }, "bufferline.nvim": { "branch": "main", "commit": "655133c3b4c3e5e05ec549b9f8cc2894ac6f51b3" },
"catppuccin": { "branch": "main", "commit": "426dbebe06b5c69fd846ceb17b42e12f890aedf1" }, "catppuccin": { "branch": "main", "commit": "edefef779ab08ce1a4a404713e3012b0d202bd35" },
"cendre": { "branch": "main", "commit": "61d2aa1ee0d2727f0df4163cf6e9e03513eb46b3" },
"clangd_extensions.nvim": { "branch": "main", "commit": "78c2ecd659d54972be17aa6ba2deac3c53223b80" }, "clangd_extensions.nvim": { "branch": "main", "commit": "78c2ecd659d54972be17aa6ba2deac3c53223b80" },
"cmake-tools.nvim": { "branch": "master", "commit": "f9a3eb2be0b8148df470244e5c25aede3a3a28a5" }, "cmake-tools.nvim": { "branch": "master", "commit": "22859d754b5de738cfe9945e0910729f63deefd0" },
"codesnap.nvim": { "branch": "main", "commit": "0a0941340376439a25d6cd8a4d1d2b372edbfdbd" }, "codediff.nvim": { "branch": "main", "commit": "e08a35a56a52c290398ebfaec33c34cfcf2d0f3c" },
"conform.nvim": { "branch": "master", "commit": "dca1a190aa85f9065979ef35802fb77131911106" }, "codesnap.nvim": { "branch": "main", "commit": "e916bdcb4112bda11028ed8ec2dbff730e4248a4" },
"copilot.lua": { "branch": "master", "commit": "b57ee71bc6671aae055ef1911b3f72771219bb2d" }, "conform.nvim": { "branch": "master", "commit": "016802de402556da54c36bd7359b441266b01cdd" },
"cord.nvim": { "branch": "master", "commit": "0be090969e978f7442870ef227e09eff7bf3480d" }, "copilot.lua": { "branch": "master", "commit": "7e6723aabea044519462958ffcea68d7985c5ed0" },
"cord.nvim": { "branch": "master", "commit": "012dcf6d0507e1525a682b46d6de2188fd68980c" },
"crates.nvim": { "branch": "main", "commit": "694357861ec9ebf12475ddcdd04ea45a0923c32d" }, "crates.nvim": { "branch": "main", "commit": "694357861ec9ebf12475ddcdd04ea45a0923c32d" },
"darkearth-nvim": { "branch": "main", "commit": "668968e81ce125544a3e25f21419c08bec9a3cc4" }, "darkearth-nvim": { "branch": "main", "commit": "d894924296162bfb50c6ab753c30c479c100f0e6" },
"dial.nvim": { "branch": "master", "commit": "f2634758455cfa52a8acea6f142dcd6271a1bf57" }, "dial.nvim": { "branch": "master", "commit": "f2634758455cfa52a8acea6f142dcd6271a1bf57" },
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
"dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" },
"eyeliner.nvim": { "branch": "main", "commit": "8f197eb30cecdf4c2cc9988a5eecc6bc34c0c7d6" }, "eyeliner.nvim": { "branch": "main", "commit": "8f197eb30cecdf4c2cc9988a5eecc6bc34c0c7d6" },
"farout.nvim": { "branch": "main", "commit": "ebfcb874c3ebdb86fff8f22de4ae0944c3fa2bbc" }, "farout.nvim": { "branch": "main", "commit": "ebfcb874c3ebdb86fff8f22de4ae0944c3fa2bbc" },
"flash.nvim": { "branch": "main", "commit": "fcea7ff883235d9024dc41e638f164a450c14ca2" }, "flash.nvim": { "branch": "main", "commit": "b6346946d10d07998efee029fb0f7a593806d0cd" },
"fold-preview.nvim": { "branch": "main", "commit": "b7920cb0aba2b48a6b679bff45f98c3ebc0f0b89" },
"friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" }, "friendly-snippets": { "branch": "main", "commit": "6cd7280adead7f586db6fccbd15d2cac7e2188b9" },
"fzf": { "branch": "master", "commit": "263eb4732fc6268f9fb35cffb634903ea8e2a26b" }, "fzf": { "branch": "master", "commit": "ca4c1b80e330522df9d768ed3139154721c6d14b" },
"fzf-lua": { "branch": "main", "commit": "44816af2465bb0a17ae0f1f2d8a4f9c3df524fcd" },
"gh.nvim": { "branch": "main", "commit": "6f367b2ab8f9d4a0a23df2b703a3f91137618387" }, "gh.nvim": { "branch": "main", "commit": "6f367b2ab8f9d4a0a23df2b703a3f91137618387" },
"gitsigns.nvim": { "branch": "main", "commit": "dd3f588bacbeb041be6facf1742e42097f62165d" }, "gitsigns.nvim": { "branch": "main", "commit": "5be654f2232c10ddcad19c1607a67b6b4b78fc29" },
"goto-preview": { "branch": "main", "commit": "d2d6923c9b9e0e43f0b9b566f261a8b1ae016540" }, "goto-preview": { "branch": "main", "commit": "d2d6923c9b9e0e43f0b9b566f261a8b1ae016540" },
"grug-far.nvim": { "branch": "main", "commit": "21790e59dd0109a92a70cb874dd002af186314f5" }, "grug-far.nvim": { "branch": "main", "commit": "6e05398cf6cad05b3fb46569db96b1ccfcbbd402" },
"gruvbox.nvim": { "branch": "main", "commit": "154eb5ff5b96d0641307113fa385eaf0d36d9796" }, "gruvbox.nvim": { "branch": "main", "commit": "154eb5ff5b96d0641307113fa385eaf0d36d9796" },
"gui-font-resize.nvim": { "branch": "main", "commit": "8b3c7d632c798a93fa7321162a3e018ecdd733a7" }, "gui-font-resize.nvim": { "branch": "main", "commit": "8b3c7d632c798a93fa7321162a3e018ecdd733a7" },
"hybrid.nvim": { "branch": "master", "commit": "0eafd5f0e1223073bdc7c02aedfd85bff029aa5c" }, "hybrid.nvim": { "branch": "master", "commit": "0eafd5f0e1223073bdc7c02aedfd85bff029aa5c" },
"inc-rename.nvim": { "branch": "main", "commit": "0074b551a17338ccdcd299bd86687cc651bcb33d" }, "inc-rename.nvim": { "branch": "main", "commit": "ddff8bd3eccedf043bd73f5bf89cf90d2d6d8105" },
"kanagawa.nvim": { "branch": "master", "commit": "8ad3b4cdcc804b332c32db8f9743667e1bb82b99" }, "kanagawa.nvim": { "branch": "master", "commit": "bb85e4bfc8d89b0e62c8fa53ccdd13d12e2f77b3" },
"key-analyzer.nvim": { "branch": "main", "commit": "4e4bef34498e821bcbd5203f44db8b67e4f10e04" }, "key-analyzer.nvim": { "branch": "main", "commit": "4e4bef34498e821bcbd5203f44db8b67e4f10e04" },
"keymap-amend.nvim": { "branch": "master", "commit": "b8bf9d820878d5497fdd11d6de55dea82872d98e" }, "kulala.nvim": { "branch": "main", "commit": "81cbb767749bfe23666e8ff099306044a2743012" },
"kulala.nvim": { "branch": "main", "commit": "6656c9d332735ca6a27725e0fb45a1715c4372d9" },
"lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" }, "lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
"lazydev.nvim": { "branch": "main", "commit": "ff2cbcba459b637ec3fd165a2be59b7bbaeedf0d" }, "lazydev.nvim": { "branch": "main", "commit": "ff2cbcba459b637ec3fd165a2be59b7bbaeedf0d" },
"linear-nvim": { "branch": "master", "commit": "3832e5146f52e7b2663fec312588dbf91edfcf8b" }, "linear-nvim": { "branch": "master", "commit": "3832e5146f52e7b2663fec312588dbf91edfcf8b" },
"litee.nvim": { "branch": "main", "commit": "4efaf373322d9e71eaff31164abb393417cc6f6a" }, "litee.nvim": { "branch": "main", "commit": "4efaf373322d9e71eaff31164abb393417cc6f6a" },
"lualine.nvim": { "branch": "master", "commit": "131a558e13f9f28b15cd235557150ccb23f89286" }, "lualine.nvim": { "branch": "master", "commit": "221ce6b2d999187044529f49da6554a92f740a96" },
"lush.nvim": { "branch": "main", "commit": "9c60ec2279d62487d942ce095e49006af28eed6e" }, "lush.nvim": { "branch": "main", "commit": "9c60ec2279d62487d942ce095e49006af28eed6e" },
"markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "51feb0ada33d18f3c5c71ffb46005dbf8b33bef4" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "67029ccdac1ef8941e13b826417bc0ffac24cc86" },
"mason-nvim-dap.nvim": { "branch": "main", "commit": "9a10e096703966335bd5c46c8c875d5b0690dade" }, "mason-nvim-dap.nvim": { "branch": "main", "commit": "9a10e096703966335bd5c46c8c875d5b0690dade" },
"mason.nvim": { "branch": "main", "commit": "e54f5bf5f12c560da31c17eee5b3e1bd369f3ff9" }, "mason.nvim": { "branch": "main", "commit": "2a6940af80375532e5e9e7c1f2fc6319a1b7a69d" },
"miasma.nvim": { "branch": "main", "commit": "627f2e1cac91de0d1d4dd7472b506a30f41b2b7d" }, "miasma.nvim": { "branch": "main", "commit": "627f2e1cac91de0d1d4dd7472b506a30f41b2b7d" },
"mini.ai": { "branch": "main", "commit": "7e10ce8468c0fce4f527ae2c0e5c484f7667f73d" }, "mini.ai": { "branch": "main", "commit": "25248c6aa002391936a6200f12d1466015987133" },
"mini.files": { "branch": "main", "commit": "3e247eb12ca8c05622ceb8745f9004f761b22ef8" }, "mini.files": { "branch": "main", "commit": "a249438d15fa6f64085ba83a9d1794d726aaf5ad" },
"mini.hipatterns": { "branch": "main", "commit": "9eff319bbe66adfaf781a0d0e174baa08ba94909" }, "mini.hipatterns": { "branch": "main", "commit": "7c840c71d6a91f53d734cab2b6fe2290d285ec3b" },
"mini.icons": { "branch": "main", "commit": "bac6317300e205335df425296570d84322730067" }, "mini.icons": { "branch": "main", "commit": "98faae31e9be1cc054ae63485e58ceb185efcad0" },
"mini.indentscope": { "branch": "main", "commit": "e0601f75aa5137a5a13bb92a988c9a300f5bd3de" }, "mini.pairs": { "branch": "main", "commit": "b1c5a726921b7a8c9321e9a7a208aa0571de5810" },
"mini.pairs": { "branch": "main", "commit": "42387c7fe68fc0b6e95eaf37f1bb76e7bffaa0d9" }, "mini.surround": { "branch": "main", "commit": "8d5d0c5aa92449368ac251e85451d79d8f69d296" },
"mini.surround": { "branch": "main", "commit": "2715e04bea3ec9244f15b421dc5b18c0fe326210" },
"monochrome.nvim": { "branch": "main", "commit": "2de78d9688ea4a177bcd9be554ab9192337d35ff" },
"moonbow.nvim": { "branch": "master", "commit": "baf62d035785910c5a368cbde5872190a56afb30" }, "moonbow.nvim": { "branch": "master", "commit": "baf62d035785910c5a368cbde5872190a56afb30" },
"neo-tree.nvim": { "branch": "main", "commit": "ff84e6e1608b24773f1b73cd4182e0bcf2b3d637" }, "neo-tree.nvim": { "branch": "main", "commit": "6679b9395526b52ddb2b137fcd5255dab71c5a58" },
"neoconf.nvim": { "branch": "main", "commit": "b55be3e04e288654edc8f9b400c494e4110f7dd3" }, "neoconf.nvim": { "branch": "main", "commit": "b75d3026a98b46d3de15fc137c502f4ef0c643a6" },
"neogen": { "branch": "main", "commit": "23e7e9f883d01289ebd90e98025acc860ea26366" }, "neogen": { "branch": "main", "commit": "23e7e9f883d01289ebd90e98025acc860ea26366" },
"neotest": { "branch": "master", "commit": "ad991822b7076b1d940b33a9d6d0d30416d5df81" }, "neotest": { "branch": "master", "commit": "1c529a1ef9c82e8131e872368415cecc2bb86ea2" },
"neotest-mocha": { "branch": "main", "commit": "e28317a93e48ed7901d8ddb1bd252b64220b2e2c" }, "neotest-mocha": { "branch": "main", "commit": "e28317a93e48ed7901d8ddb1bd252b64220b2e2c" },
"neotest-python": { "branch": "master", "commit": "e6df4f1892f6137f58135917db24d1655937d831" }, "neotest-python": { "branch": "master", "commit": "1b56ca4ba51c6014f986d6548ee629bdc95589d1" },
"neotest-rspec": { "branch": "main", "commit": "e7dc67c1167a9e593c804a6be6808ba9a5920d43" }, "neotest-rspec": { "branch": "main", "commit": "7629f8c2837becb72090fbafce58506bb56a00f0" },
"neotest-zig": { "branch": "main", "commit": "de63f3b9a182d374d2e71cf44385326682ec90e7" }, "neotest-zig": { "branch": "main", "commit": "de63f3b9a182d374d2e71cf44385326682ec90e7" },
"nightfox.nvim": { "branch": "main", "commit": "26b61b1f856ec37cae3cb64f5690adb955f246a1" }, "nightfox.nvim": { "branch": "main", "commit": "4dacd3f0185a2227bdf3b6c0975a8f0bf87cac9a" },
"noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" }, "noice.nvim": { "branch": "main", "commit": "7bfd942445fb63089b59f97ca487d605e715f155" },
"nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" }, "nui.nvim": { "branch": "main", "commit": "de740991c12411b663994b2860f1a4fd0937c130" },
"numb.nvim": { "branch": "master", "commit": "12ef3913dea8727d4632c6f2ed47957a993de627" }, "numb.nvim": { "branch": "master", "commit": "36260c446465b1303b0b1922c722904791bdb03f" },
"nvim-bqf": { "branch": "main", "commit": "c282a62bec6c0621a1ef5132aa3f4c9fc4dcc2c7" }, "nvim-bqf": { "branch": "main", "commit": "c282a62bec6c0621a1ef5132aa3f4c9fc4dcc2c7" },
"nvim-cmp": { "branch": "main", "commit": "85bbfad83f804f11688d1ab9486b459e699292d6" }, "nvim-dap": { "branch": "master", "commit": "9e848e09a697ee95302a3ef2dd43fd6eb709e570" },
"nvim-dap": { "branch": "master", "commit": "45a69eba683a2c448dd9ecfc4de89511f0646b5f" },
"nvim-dap-python": { "branch": "master", "commit": "1808458eba2b18f178f990e01376941a42c7f93b" }, "nvim-dap-python": { "branch": "master", "commit": "1808458eba2b18f178f990e01376941a42c7f93b" },
"nvim-dap-ruby": { "branch": "main", "commit": "ba36f9905ca9c6d89e5af5467a52fceeb2bbbf6d" }, "nvim-dap-ruby": { "branch": "main", "commit": "fa73da2f5124d10a4cd09ce589441b5901df706a" },
"nvim-dap-ui": { "branch": "master", "commit": "1a66cabaa4a4da0be107d5eda6d57242f0fe7e49" }, "nvim-dap-ui": { "branch": "master", "commit": "cc9dd33aade7f20bae414d0cba163bc60d4d4b43" },
"nvim-dap-virtual-text": { "branch": "master", "commit": "fbdb48c2ed45f4a8293d0d483f7730d24467ccb6" }, "nvim-dap-virtual-text": { "branch": "master", "commit": "fbdb48c2ed45f4a8293d0d483f7730d24467ccb6" },
"nvim-jdtls": { "branch": "master", "commit": "77ccaeb422f8c81b647605da5ddb4a7f725cda90" }, "nvim-jdtls": { "branch": "master", "commit": "6e9d953f0b82bccdb834cfde0e893f3119c22592" },
"nvim-lint": { "branch": "master", "commit": "eab58b48eb11d7745c11c505e0f3057165902461" }, "nvim-lint": { "branch": "master", "commit": "a219b2c9e5b4765e5c845aba119dad55806fcaf1" },
"nvim-lspconfig": { "branch": "master", "commit": "451d4ef9abd4f0f08e379ef0d55d1c391b6125a7" }, "nvim-lspconfig": { "branch": "master", "commit": "4267d26e60323a45e18f8e7a63a964cc8f53ca4e" },
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, "nvim-nio": { "branch": "master", "commit": "edcc181a875301dd21840189aa2f2f9ad69fc172" },
"nvim-pqf": { "branch": "main", "commit": "148ee2ca8b06d83fd9bf6f9b9497724ad39a07d6" }, "nvim-treesitter": { "branch": "main", "commit": "c9f9ed6c1892f629ea399f4ee7905f2686fa13f2" },
"nvim-treesitter": { "branch": "main", "commit": "7caec274fd19c12b55902a5b795100d21531391f" }, "nvim-treesitter-context": { "branch": "master", "commit": "f3061339b8eaf9fda873600bc425b8d2d8502533" },
"nvim-treesitter-context": { "branch": "master", "commit": "b311b30818951d01f7b4bf650521b868b3fece16" }, "nvim-treesitter-textobjects": { "branch": "main", "commit": "898ee307df58f854d11cd7edd06472574d48014e" },
"nvim-treesitter-textobjects": { "branch": "main", "commit": "851e865342e5a4cb1ae23d31caf6e991e1c99f1e" },
"nvim-ts-autotag": { "branch": "main", "commit": "88c1453db4ba7dd24131086fe51fdf74e587d275" }, "nvim-ts-autotag": { "branch": "main", "commit": "88c1453db4ba7dd24131086fe51fdf74e587d275" },
"nvim-ufo": { "branch": "main", "commit": "ab3eb124062422d276fae49e0dd63b3ad1062cfc" }, "nvim-web-devicons": { "branch": "master", "commit": "2ae6958df7ced50baac5035cec0c15799eedfbf7" },
"nvim-web-devicons": { "branch": "master", "commit": "2795c26c916bb3c57dde308b82be51971fa92747" }, "obsidian.nvim": { "branch": "main", "commit": "69fe7c6bf61a5222b5061a9a9dfc5023f2ec0fdc" },
"obsidian.nvim": { "branch": "main", "commit": "ae1f76a75c7ce36866e1d9342a8f6f5b9c2caf9b" }, "octo.nvim": { "branch": "master", "commit": "205f024d3ea4a3d81aac751b6bf8e2d01e0c204f" },
"octo.nvim": { "branch": "master", "commit": "bbd903ce905c301ac516d64c33b2511a05f6b59b" }, "oil.nvim": { "branch": "master", "commit": "b73018b75affd13fa38e2fc94ef753b465f770d7" },
"oil.nvim": { "branch": "master", "commit": "0fcc83805ad11cf714a949c98c605ed717e0b83e" }, "overseer.nvim": { "branch": "master", "commit": "a93d9f6d6defdac4bcd6d2c8ba988650e42e0a0e" },
"onedarker.nvim": { "branch": "master", "commit": "b4f92f073ed7cdf0358ad005cee0484411232b1b" }, "oxocarbon.nvim": { "branch": "main", "commit": "7cc379b96fcbb4e75c5152906e0fccf81ce46590" },
"overseer.nvim": { "branch": "master", "commit": "f818eefff81f4b12fb7cf236f1b6c16768a2fcbc" },
"oxocarbon.nvim": { "branch": "main", "commit": "a7ba74849a00546a311f8c146320b433900393e7" },
"persistence.nvim": { "branch": "main", "commit": "b20b2a7887bd39c1a356980b45e03250f3dce49c" }, "persistence.nvim": { "branch": "main", "commit": "b20b2a7887bd39c1a356980b45e03250f3dce49c" },
"plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" }, "plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" },
"project.nvim": { "branch": "main", "commit": "8c6bad7d22eef1b71144b401c9f74ed01526a4fb" }, "project.nvim": { "branch": "main", "commit": "8c6bad7d22eef1b71144b401c9f74ed01526a4fb" },
"promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" }, "render-markdown.nvim": { "branch": "main", "commit": "4663eb3ecd538bd5062628fb6d95bbe6bdca78f6" },
"render-markdown.nvim": { "branch": "main", "commit": "629eb9533ec989d9d5c6cab8f3ad5372422c24e0" },
"rustaceanvim": { "branch": "master", "commit": "f2f0c1231a5b019dbc1fd6dafac1751c878925a3" }, "rustaceanvim": { "branch": "master", "commit": "f2f0c1231a5b019dbc1fd6dafac1751c878925a3" },
"sidekick.nvim": { "branch": "main", "commit": "208e1c5b8170c01fd1d07df0139322a76479b235" }, "sidekick.nvim": { "branch": "main", "commit": "208e1c5b8170c01fd1d07df0139322a76479b235" },
"smart-splits.nvim": { "branch": "master", "commit": "80be31a3d2e37d32bd37794da72a4f69fce7a85f" }, "smart-splits.nvim": { "branch": "master", "commit": "0fe3bbd99d48458ad188c4c262c31049fa9b018c" },
"smartcolumn.nvim": { "branch": "main", "commit": "b9cdbdf42f7ac5a659204cd5926017c7ff724a19" }, "smartcolumn.nvim": { "branch": "main", "commit": "5351ae24e992a397d2abac48b7774dc8ef0acf40" },
"snacks.nvim": { "branch": "main", "commit": "ad9ede6a9cddf16cedbd31b8932d6dcdee9b716e" }, "snacks.nvim": { "branch": "main", "commit": "882c996cf28183f4d63640de0b4c02ec886d01f2" },
"ssr.nvim": { "branch": "main", "commit": "7839acf6f940dc1c9210823a7c8b378df122765b" }, "ssr.nvim": { "branch": "main", "commit": "7839acf6f940dc1c9210823a7c8b378df122765b" },
"telescope-terraform-doc.nvim": { "branch": "main", "commit": "66987fac94d12704fdfd90b857f4f648e31251c9" }, "telescope-terraform-doc.nvim": { "branch": "main", "commit": "66987fac94d12704fdfd90b857f4f648e31251c9" },
"telescope-terraform.nvim": { "branch": "main", "commit": "072c97023797ca1a874668aaa6ae0b74425335df" }, "telescope-terraform.nvim": { "branch": "main", "commit": "072c97023797ca1a874668aaa6ae0b74425335df" },
"telescope.nvim": { "branch": "master", "commit": "f04ab730b8f9c6bf3f54a206d0dcddfd70c52d59" }, "telescope.nvim": { "branch": "master", "commit": "427b576c16792edad01a92b89721d923c19ad60f" },
"todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" }, "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" },
"toggleterm.nvim": { "branch": "main", "commit": "50ea089fc548917cc3cc16b46a8211833b9e3c7c" },
"tokyonight.nvim": { "branch": "main", "commit": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6" }, "tokyonight.nvim": { "branch": "main", "commit": "cdc07ac78467a233fd62c493de29a17e0cf2b2b6" },
"treesj": { "branch": "main", "commit": "5fa4e7ba3517f8fe743bb4488f9e9c7ce83330fc" }, "treesj": { "branch": "main", "commit": "79aedb401bbdc7e4202f7881eab5f6feb2105b0a" },
"trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" }, "trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" },
"ts-comments.nvim": { "branch": "main", "commit": "123a9fb12e7229342f807ec9e6de478b1102b041" }, "ts-comments.nvim": { "branch": "main", "commit": "a59d6092213447450191122c9346f309161504cb" },
"typst-preview.nvim": { "branch": "master", "commit": "87db18b8d19c8b0eed399f52e4c527ce5afe4817" }, "typst-preview.nvim": { "branch": "master", "commit": "1c2e19486397be1c580b560fc50ee36abe329c46" },
"venv-selector.nvim": { "branch": "main", "commit": "bcb2f58533c59b01565285eba49693f00bc460f5" }, "venv-selector.nvim": { "branch": "main", "commit": "cc4bb3975de8835291f9bb45889e96c6b2795fc4" },
"vim-dadbod": { "branch": "master", "commit": "6d1d41da4873a445c5605f2005ad2c68c99d8770" }, "vim-dadbod": { "branch": "master", "commit": "6d1d41da4873a445c5605f2005ad2c68c99d8770" },
"vim-dadbod-completion": { "branch": "master", "commit": "a8dac0b3cf6132c80dc9b18bef36d4cf7a9e1fe6" }, "vim-dadbod-completion": { "branch": "master", "commit": "a8dac0b3cf6132c80dc9b18bef36d4cf7a9e1fe6" },
"vim-dadbod-ui": { "branch": "master", "commit": "07e92e22114cc5b1ba4938d99897d85b58e20475" }, "vim-dadbod-ui": { "branch": "master", "commit": "afd07819d8efcefc3317205b855ad4e3513b0011" },
"vim-eunuch": { "branch": "master", "commit": "e86bb794a1c10a2edac130feb0ea590a00d03f1e" }, "vim-eunuch": { "branch": "master", "commit": "e86bb794a1c10a2edac130feb0ea590a00d03f1e" },
"vim-fugitive": { "branch": "master", "commit": "3b753cf8c6a4dcde6edee8827d464ba9b8c4a6f0" }, "vim-fugitive": { "branch": "master", "commit": "3b753cf8c6a4dcde6edee8827d464ba9b8c4a6f0" },
"vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" }, "vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" },
"vim-rhubarb": { "branch": "master", "commit": "5496d7c94581c4c9ad7430357449bb57fc59f501" }, "vim-rhubarb": { "branch": "master", "commit": "5496d7c94581c4c9ad7430357449bb57fc59f501" },
"vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" }, "vim-sleuth": { "branch": "master", "commit": "be69bff86754b1aa5adcbb527d7fcd1635a84080" },
"vim-startuptime": { "branch": "master", "commit": "f10474b400c197787a0434548d842a2db583c333" }, "vim-startuptime": { "branch": "master", "commit": "5f33e50f1e2e2a80370c9094e4c303ea54cd2aea" },
"vim-unimpaired": { "branch": "master", "commit": "db65482581a28e4ccf355be297f1864a4e66985c" }, "vim-unimpaired": { "branch": "master", "commit": "db65482581a28e4ccf355be297f1864a4e66985c" },
"vimtex": { "branch": "master", "commit": "97e11bd4f56d46a87f8593d6ccb27820e19c4ab0" }, "vimtex": { "branch": "master", "commit": "a5568d902cc20a76bb8ef70743f0157ec2e79ded" },
"wezterm-types": { "branch": "main", "commit": "3d66a8377f27af81d247c1961bc617c02fe80ebb" }, "wezterm-types": { "branch": "main", "commit": "851470ad5d2dfb56bda936e6aeef2f3a45e7f199" },
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" }, "which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" },
"yank-path.nvim": { "branch": "main", "commit": "e660248de1e4c91a760f510fc165c172a19cc1d5" }, "yank-path.nvim": { "branch": "main", "commit": "e660248de1e4c91a760f510fc165c172a19cc1d5" },
"yanky.nvim": { "branch": "main", "commit": "784188e0a7363e762e53140f39124d786aec0832" }, "yanky.nvim": { "branch": "main", "commit": "dd6689fdda85f66cab7d9b1a1664625f3be0920d" },
"zenbones.nvim": { "branch": "main", "commit": "321543e581cd73d0ee43327d8a7c02a420f640cf" } "zenbones.nvim": { "branch": "main", "commit": "8304d8df9b823ff11e103afa62f38c39f534abe6" }
} }
+1 -1
View File
@@ -29,13 +29,13 @@
"lazyvim.plugins.extras.lang.tex", "lazyvim.plugins.extras.lang.tex",
"lazyvim.plugins.extras.lang.toml", "lazyvim.plugins.extras.lang.toml",
"lazyvim.plugins.extras.lang.typescript", "lazyvim.plugins.extras.lang.typescript",
"lazyvim.plugins.extras.lang.typescript.oxc",
"lazyvim.plugins.extras.lang.typescript.tsgo", "lazyvim.plugins.extras.lang.typescript.tsgo",
"lazyvim.plugins.extras.lang.typst", "lazyvim.plugins.extras.lang.typst",
"lazyvim.plugins.extras.lang.yaml", "lazyvim.plugins.extras.lang.yaml",
"lazyvim.plugins.extras.lang.zig", "lazyvim.plugins.extras.lang.zig",
"lazyvim.plugins.extras.lsp.neoconf", "lazyvim.plugins.extras.lsp.neoconf",
"lazyvim.plugins.extras.test.core", "lazyvim.plugins.extras.test.core",
"lazyvim.plugins.extras.ui.mini-indentscope",
"lazyvim.plugins.extras.ui.treesitter-context", "lazyvim.plugins.extras.ui.treesitter-context",
"lazyvim.plugins.extras.util.dot", "lazyvim.plugins.extras.util.dot",
"lazyvim.plugins.extras.util.gh", "lazyvim.plugins.extras.util.gh",
+7 -59
View File
@@ -14,6 +14,13 @@ vim.keymap.set("n", "<leader>B", function()
Snacks.terminal({ "btop" }, { esc_esc = false, ctrl_hjkl = false }) Snacks.terminal({ "btop" }, { esc_esc = false, ctrl_hjkl = false })
end, { desc = "Toggle btop (improved console top monitor) floating terminal" }) end, { desc = "Toggle btop (improved console top monitor) floating terminal" })
local function toggle_split_terminal()
Snacks.terminal.toggle(nil, { win = { position = "bottom" } })
end
vim.keymap.set({ "n", "t" }, [[<C-\>]], toggle_split_terminal, { desc = "Toggle terminal split" })
vim.keymap.set({ "n", "t" }, "<F12>", toggle_split_terminal, { desc = "Toggle terminal split" })
-- Toggle zoom/maximize current window (<C-w> is the vim window prefix, m for maximize) -- Toggle zoom/maximize current window (<C-w> is the vim window prefix, m for maximize)
vim.keymap.set({ "n", "t" }, "<C-w>m", function() vim.keymap.set({ "n", "t" }, "<C-w>m", function()
Snacks.toggle.zoom():toggle() Snacks.toggle.zoom():toggle()
@@ -28,62 +35,3 @@ if vim.fn.has("mac") == 1 then
vim.keymap.set("t", "<D-v>", '<C-\\><C-n>"+pi') vim.keymap.set("t", "<D-v>", '<C-\\><C-n>"+pi')
vim.keymap.set("t", "<D-s-v>", '<C-\\><C-n>"+pi') vim.keymap.set("t", "<D-s-v>", '<C-\\><C-n>"+pi')
end end
local function oxlint_cmd(bufnr)
local file = vim.api.nvim_buf_get_name(bufnr)
if file == "" then
return nil
end
local root = vim.fs.dirname(vim.fs.find({ "package.json", ".oxlintrc.json", "oxlint.config.ts" }, {
path = file,
upward = true,
})[1] or "")
local local_bin = root ~= "" and vim.fs.joinpath(root, "node_modules", ".bin", "oxlint") or nil
return local_bin and vim.fn.executable(local_bin) == 1 and local_bin or "oxlint"
end
local function oxlint_fix()
local bufnr = vim.api.nvim_get_current_buf()
local file = vim.api.nvim_buf_get_name(bufnr)
if file == "" then
vim.notify("Oxlint fix requires a file-backed buffer", vim.log.levels.WARN)
return
end
if vim.bo[bufnr].modified then
vim.cmd.update()
end
local cmd = oxlint_cmd(bufnr)
if not cmd or vim.fn.executable(cmd) ~= 1 then
vim.notify("oxlint executable not found", vim.log.levels.ERROR)
return
end
local cwd = vim.fs.dirname(vim.fs.find({ "package.json", ".oxlintrc.json", "oxlint.config.ts" }, {
path = file,
upward = true,
})[1] or file)
vim.system({ cmd, "--fix", "--type-aware", file }, { cwd = cwd, text = true }, function(result)
vim.schedule(function()
if result.code == 0 or result.code == 1 then
vim.cmd.checktime()
pcall(require("lint").try_lint, "oxlint")
local level = result.code == 0 and vim.log.levels.INFO or vim.log.levels.WARN
local msg = result.code == 0 and "Oxlint fix completed" or "Oxlint fix completed with remaining diagnostics"
vim.notify(msg, level)
else
local output = table.concat(vim.tbl_filter(function(v)
return v and v ~= ""
end, { result.stdout, result.stderr }), "\n")
vim.notify(output ~= "" and output or "Oxlint fix failed", vim.log.levels.ERROR)
end
end)
end)
end
vim.api.nvim_create_user_command("OxlintFix", oxlint_fix, { desc = "Fix current file with oxlint" })
vim.keymap.set("n", "<leader>cx", oxlint_fix, { desc = "Oxlint Fix" })
+3 -2
View File
@@ -1,5 +1,5 @@
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then if not vim.uv.fs_stat(lazypath) then
-- bootstrap lazy.nvim -- bootstrap lazy.nvim
-- stylua: ignore -- stylua: ignore
vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath }) vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", "--branch=stable", lazypath })
@@ -28,8 +28,9 @@ require("lazy").setup({
version = false, -- always use the latest git commit version = false, -- always use the latest git commit
-- version = "*", -- try installing the latest stable version for plugins that support semver -- version = "*", -- try installing the latest stable version for plugins that support semver
}, },
install = { colorscheme = { "tokyonight", "habamax" } }, install = { colorscheme = { "kanagawa-dragon", "habamax" } },
checker = { enabled = true }, -- automatically check for plugin updates checker = { enabled = true }, -- automatically check for plugin updates
rocks = { enabled = false },
git = { git = {
concurrency = 3, -- reduce concurrent git operations (default is higher) concurrency = 3, -- reduce concurrent git operations (default is higher)
}, },
-1
View File
@@ -10,7 +10,6 @@ else
vim.opt.guifont = "Berkeley Mono Variable:h13" vim.opt.guifont = "Berkeley Mono Variable:h13"
end end
-- idk if it does anything cause I have to set it in the nvim-cmp settings too
vim.opt.completeopt = "menu,menuone,noinsert,noselect" vim.opt.completeopt = "menu,menuone,noinsert,noselect"
-- Window decorations -- Window decorations
-96
View File
@@ -1,96 +0,0 @@
-- Custom directory watcher using Neovim's built-in libuv bindings
-- Source: https://github.com/richardgill/nix/blob/ebdd8260f770d242db7b6163158cfe9ad9784c41/modules/home-manager/dot-files/nvim/lua/custom/directory-watcher.lua
local M = {}
local uv = vim.uv
local watcher = nil
local debounce_timer = nil
local on_change_handlers = {}
-- Debounce helper to prevent callback storms
local debounce = function(fn, delay)
return function(...)
local args = { ... }
if debounce_timer then
debounce_timer:close()
end
debounce_timer = vim.defer_fn(function()
debounce_timer = nil
fn(unpack(args))
end, delay)
end
end
-- Register a named handler to be called when files change
-- If a handler with the same name exists, it will be replaced
-- Note: Named handlers are required to support Lua hotreload - when a file is reloaded,
-- it re-registers its handler with the same name, replacing the old one instead of
-- creating duplicates
M.registerOnChangeHandler = function(name, handler)
on_change_handlers[name] = handler
end
-- Start watching a directory for file changes
M.setup = function(opts)
opts = opts or {}
local path = opts.path
local debounce_delay = opts.debounce or 100 -- ms
if not path then
return false
end
-- Stop existing watcher if any
if watcher then
M.stop()
end
-- Create fs_event handle
local fs_event = uv.new_fs_event()
if not fs_event then
return false
end
-- Debounced callback for file changes
local on_change = debounce(function(err, filename, events)
if err then
M.stop()
return
end
if filename then
local full_path = path .. "/" .. filename
-- Call all registered handlers
for _, handler in pairs(on_change_handlers) do
pcall(handler, full_path, events)
end
end
end, debounce_delay)
-- Start watching (wrapped for thread safety)
local ok, err = fs_event:start(path, { recursive = false }, vim.schedule_wrap(on_change))
if ok ~= 0 then
return false
end
watcher = fs_event
return true
end
-- Stop the watcher and clean up resources
M.stop = function()
if watcher then
watcher:stop()
watcher = nil
end
if debounce_timer then
debounce_timer:close()
debounce_timer = nil
end
end
return M
+1 -1
View File
@@ -40,7 +40,7 @@ M.simulate_yank_highlight = function()
local bounds = M.get_visual_bounds() local bounds = M.get_visual_bounds()
local ns = vim.api.nvim_create_namespace("simulate_yank_highlight") local ns = vim.api.nvim_create_namespace("simulate_yank_highlight")
vim.highlight.range( vim.hl.range(
0, 0,
ns, ns,
"IncSearch", "IncSearch",
+2 -20
View File
@@ -1,8 +1,6 @@
return { return {
"saghen/blink.cmp", "saghen/blink.cmp",
dependencies = { dependencies = {
-- For auto-completion in the avante window
"Kaiser-Yang/blink-cmp-avante",
-- For emoji selection -- For emoji selection
"moyiz/blink-emoji.nvim", "moyiz/blink-emoji.nvim",
}, },
@@ -12,26 +10,10 @@ return {
show_in_snippet = false, show_in_snippet = false,
}, },
}, },
-- use preset again once this is merged: https://github.com/LazyVim/LazyVim/pull/6183 keymap = { preset = "super-tab" },
-- keymap = { preset = "super-tab" },
keymap = {
["<Tab>"] = {
require("blink.cmp.keymap.presets").get("super-tab")["<Tab>"][1],
require("lazyvim.util").cmp.map({ "snippet_forward", "ai_accept" }),
"fallback",
},
},
sources = { sources = {
-- Add 'avante' to the list default = { "lsp", "path", "snippets", "buffer", "emoji" },
default = { "avante", "lsp", "path", "snippets", "buffer", "emoji" },
providers = { providers = {
avante = {
module = "blink-cmp-avante",
name = "Avante",
opts = {
-- options for blink-cmp-avante
},
},
emoji = { emoji = {
module = "blink-emoji", module = "blink-emoji",
name = "Emoji", name = "Emoji",
+126
View File
@@ -0,0 +1,126 @@
-- VSCode-style diff viewer, replaces sindrets/diffview.nvim.
-- The C diff library is downloaded automatically on first use (:CodeDiff install to force).
return {
"esmuellert/codediff.nvim",
cmd = "CodeDiff",
opts = {
diff = {
layout = "side-by-side",
},
explorer = {
-- Match diffview's file panel: tree listing with +/- line stats
view_mode = "tree",
line_stats = {
enabled = true,
},
},
keymaps = {
view = {
-- gq closed every diffview panel, keep it alongside the default q
quit = { "q", "gq" },
-- Default <leader>b shadows LazyVim's +buffer group, <leader>e/E mirrors
-- LazyVim's explorer mnemonic instead
toggle_explorer = "<leader>E",
focus_explorer = "<leader>e",
-- Defaults t and gc shadow the t{char} motion and the gc comment
-- operator in the (editable) modified buffer
toggle_layout = "gl",
toggle_compact = "gz",
},
},
},
keys = {
{ "<leader>gv", "<cmd>CodeDiff<cr>", desc = "Open [g]it Diff[v]iew tab" },
{ "<leader>gl", "<cmd>CodeDiff history %<cr>", desc = "Toggle git log of current file history" },
{ "<leader>gl", ":'<,'>CodeDiff history<cr>", mode = "v", desc = "Toggle git log of selected lines" },
{ "<leader>gL", "<cmd>CodeDiff history<cr>", desc = "Toggle git log of current branch" },
},
config = function(_, opts)
require("codediff").setup(opts)
-- Snacks' smooth scroll animates the scrolling codediff does to keep the two
-- panes in sync, so ]c/[c hunk navigation jitters (codediff.nvim#519).
-- Mute animations while a codediff tab is focused, restore on the way out.
-- Buffer-local vars can't scope this: the modified pane is the real file
-- buffer, so muting it would follow the file into other tabs.
local group = vim.api.nvim_create_augroup("codediff_snacks_animate", { clear = true })
local diff_tabs = {} ---@type table<integer, true>
local saved ---@type { value: boolean? }? set only while we are muting
local function sync_animations()
if diff_tabs[vim.api.nvim_get_current_tabpage()] then
-- Wrapped so an unset vim.g (the default, animations on) round-trips as
-- nil rather than reading as "nothing saved"
saved = saved or { value = vim.g.snacks_animate }
vim.g.snacks_animate = false
elseif saved then
vim.g.snacks_animate = saved.value
saved = nil
end
end
vim.api.nvim_create_autocmd("User", {
group = group,
pattern = "CodeDiffOpen",
callback = function(ev)
diff_tabs[ev.data.tabpage] = true
sync_animations()
end,
})
vim.api.nvim_create_autocmd("User", {
group = group,
pattern = "CodeDiffClose",
callback = function(ev)
diff_tabs[ev.data.tabpage] = nil
-- Fires before the tab is gone, so TabClosed does the actual unmuting
sync_animations()
end,
})
vim.api.nvim_create_autocmd({ "TabEnter", "TabClosed" }, {
group = group,
callback = sync_animations,
})
-- The explorer and history panels tag their text (filenames, commit subjects,
-- padding) with the literal `Normal` group, which carries an opaque bg. Under
-- a colorscheme with dim_inactive that text keeps Normal's background while
-- the rest of the window dims to NormalNC, so every row looks highlighted.
-- Remapping the group to NormalNC while the panel is unfocused makes the text
-- dim along with the window, the way an ordinary buffer does.
local panel_ft = { ["codediff-explorer"] = true, ["codediff-history"] = true }
local function sync_panel_dim()
local current = vim.api.nvim_get_current_win()
for _, win in ipairs(vim.api.nvim_tabpage_list_wins(0)) do
local ok, buf = pcall(vim.api.nvim_win_get_buf, win)
if ok and panel_ft[vim.bo[buf].filetype] then
local want = win ~= current and "Normal:NormalNC" or ""
if vim.wo[win].winhighlight ~= want then
vim.wo[win].winhighlight = want
end
end
end
end
-- Deferred: codediff hops windows with nvim_win_call to refresh panes, which
-- fires WinEnter with a window that is not the real focus. Scheduling lets
-- those transient switches unwind before we read the current window.
local function schedule_panel_dim()
vim.schedule(sync_panel_dim)
end
vim.api.nvim_create_autocmd({ "WinEnter", "WinLeave", "BufWinEnter", "TabEnter" }, {
group = group,
callback = schedule_panel_dim,
})
vim.api.nvim_create_autocmd("User", {
group = group,
pattern = "CodeDiffOpen",
callback = schedule_panel_dim,
})
end,
}
+21 -6
View File
@@ -7,6 +7,7 @@ return {
}, },
{ {
"ellisonleao/gruvbox.nvim", "ellisonleao/gruvbox.nvim",
lazy = true,
opts = { opts = {
contrast = "hard", contrast = "hard",
palette_overrides = { palette_overrides = {
@@ -29,12 +30,14 @@ return {
}, },
{ {
"arturgoms/moonbow.nvim", "arturgoms/moonbow.nvim",
lazy = true,
opts = { opts = {
dim_inactive = true, dim_inactive = true,
}, },
}, },
{ {
"rebelot/kanagawa.nvim", "rebelot/kanagawa.nvim",
lazy = true,
opts = { opts = {
dimInactive = true, dimInactive = true,
colors = { colors = {
@@ -62,9 +65,9 @@ return {
}, },
}, },
}, },
{ "kdheepak/monochrome.nvim" },
{ {
"folke/tokyonight.nvim", "folke/tokyonight.nvim",
lazy = true,
opts = { opts = {
style = "night", style = "night",
dim_inactive = true, dim_inactive = true,
@@ -73,6 +76,7 @@ return {
{ {
"catppuccin/nvim", "catppuccin/nvim",
name = "catppuccin", name = "catppuccin",
lazy = true,
opts = { opts = {
flavour = "mocha", flavour = "mocha",
dim_inactive = { dim_inactive = {
@@ -80,15 +84,16 @@ return {
}, },
}, },
}, },
{ "LunarVim/onedarker.nvim" },
{ {
"EdenEast/nightfox.nvim", "EdenEast/nightfox.nvim",
lazy = true,
opts = { opts = {
dim_inactive = true, dim_inactive = true,
}, },
}, },
{ {
"mcchrish/zenbones.nvim", "mcchrish/zenbones.nvim",
lazy = true,
dependencies = { "rktjmp/lush.nvim" }, dependencies = { "rktjmp/lush.nvim" },
config = function() config = function()
local opts = { local opts = {
@@ -106,26 +111,36 @@ return {
}, },
{ {
"HoNamDuong/hybrid.nvim", "HoNamDuong/hybrid.nvim",
lazy = false, lazy = true,
opts = {}, opts = {},
}, },
{ {
-- My own colorscheme, aka. thallada/farout.nvim -- My own colorscheme, aka. thallada/farout.nvim
"thallada/farout.nvim", "thallada/farout.nvim",
lazy = true,
opts = { opts = {
dim_inactive = true, dim_inactive = true,
}, },
}, },
{ {
"xero/miasma.nvim", "xero/miasma.nvim",
lazy = false, lazy = true,
priority = 1000,
}, },
{ {
"ptdewey/darkearth-nvim", "ptdewey/darkearth-nvim",
priority = 1000, lazy = true,
}, },
{ {
"nyoom-engineering/oxocarbon.nvim", "nyoom-engineering/oxocarbon.nvim",
lazy = true,
},
{
"Aejkatappaja/cendre",
lazy = true,
opts = {
-- "hard" | "medium" | "soft", also switchable at runtime with :CendreBackground
background = "hard",
dim_inactive = true,
},
}, },
} }
+24
View File
@@ -0,0 +1,24 @@
local oxfmt_owned = {
"javascript",
"javascriptreact",
"typescript",
"typescriptreact",
"json",
"jsonc",
"vue",
}
return {
"stevearc/conform.nvim",
opts = function(_, opts)
opts.formatters_by_ft = opts.formatters_by_ft or {}
for _, ft in ipairs(oxfmt_owned) do
local formatters = opts.formatters_by_ft[ft]
if formatters then
opts.formatters_by_ft[ft] = vim.tbl_filter(function(formatter)
return formatter ~= "prettier"
end, formatters)
end
end
end,
}
-35
View File
@@ -1,35 +0,0 @@
-- better increase/descrease
return {
"monaqa/dial.nvim",
keys = {
{
"<C-a>",
function()
return require("dial.map").inc_normal()
end,
expr = true,
desc = "Increment",
},
{
"<C-x>",
function()
return require("dial.map").dec_normal()
end,
expr = true,
desc = "Decrement",
},
},
config = function()
local augend = require("dial.augend")
require("dial.config").augends:register_group({
default = {
augend.integer.alias.decimal,
augend.integer.alias.hex,
augend.date.alias["%Y/%m/%d"],
augend.constant.alias.bool,
augend.semver.alias.semver,
augend.constant.new({ elements = { "let", "const" } }),
},
})
end,
}
-72
View File
@@ -1,72 +0,0 @@
-- Custom Diffview auto-refresh config from https://richardgill.org/blog/configuring-neovim-coding-agents
-- Source: https://github.com/richardgill/nix/blob/ebdd8260f770d242db7b6163158cfe9ad9784c41/modules/home-manager/dot-files/nvim/lua/plugins/git-diff_diffview.lua
return {
"sindrets/diffview.nvim",
cmd = { "DiffviewOpen", "DiffviewClose", "DiffviewToggleFiles", "DiffviewFocusFiles" },
opts = {
enhanced_diff_hl = true,
keymaps = {
view = {
{ "n", "gq", "<cmd>DiffviewClose<cr>", { desc = "Close diffview" } },
},
file_panel = {
{ "n", "gq", "<cmd>DiffviewClose<cr>", { desc = "Close diffview" } },
},
file_history_panel = {
{ "n", "gq", "<cmd>DiffviewClose<cr>", { desc = "Close diffview" } },
},
},
},
keys = {
{ "<leader>gl", ":'<,'>DiffviewFileHistory<cr>", mode = "v", desc = "Toggle git log of selected lines" },
{ "<leader>gL", "<cmd>DiffviewFileHistory<cr>", desc = "Toggle git log of current branch" },
{ "<leader>gl", "<cmd>DiffviewFileHistory %<cr>", desc = "Toggle git log of current file history" },
{ "<leader>gv", "<cmd>DiffviewOpen<cr>", desc = "Open [g]it Diff[v]iew tab" },
},
config = function(_, opts)
require("diffview").setup(opts)
local watcher = require("custom.directory-watcher")
local is_git_ignored = function(filepath)
vim.fn.system("git check-ignore -q " .. vim.fn.shellescape(filepath))
return vim.v.shell_error == 0
end
local update_left_pane = function()
pcall(function()
local lib = require("diffview.lib")
local view = lib.get_current_view()
if view then
view:update_files()
end
end)
end
-- Register handler for file changes in watched directory
watcher.registerOnChangeHandler("diffview", function(filepath, events)
local is_in_dot_git_dir = filepath:match("/%.git/") or filepath:match("^%.git/")
if is_in_dot_git_dir or not is_git_ignored(filepath) then
vim.notify("[diffview] File changed: " .. vim.fn.fnamemodify(filepath, ":t"), vim.log.levels.INFO)
update_left_pane()
end
end)
-- Start watching the current working directory
watcher.setup({ path = vim.fn.getcwd() })
vim.api.nvim_create_autocmd("FocusGained", {
callback = update_left_pane,
})
vim.api.nvim_create_autocmd("User", {
pattern = "DiffviewViewLeave",
callback = function()
watcher.stop()
vim.cmd(":DiffviewClose")
end,
})
end,
}
-1
View File
@@ -1 +0,0 @@
return {}
-68
View File
@@ -1,68 +0,0 @@
return {
-- add folding range to capabilities
{
"neovim/nvim-lspconfig",
opts = {
servers = {
["*"] = {
capabilities = {
textDocument = {
foldingRange = {
dynamicRegistration = false,
lineFoldingOnly = true,
},
},
},
},
},
},
},
-- add nvim-ufo
{
"kevinhwang91/nvim-ufo",
dependencies = {
"kevinhwang91/promise-async",
-- This looks awful, so leaving it disabled
-- {
-- "luukvbaal/statuscol.nvim",
-- config = function()
-- local builtin = require("statuscol.builtin")
-- require("statuscol").setup({
-- relculright = true,
-- segments = {
-- { text = { builtin.foldfunc }, click = "v:lua.ScFa" },
-- { text = { "%s" }, click = "v:lua.ScSa" },
-- { text = { builtin.lnumfunc, " " }, click = "v:lua.ScLa" },
-- },
-- })
-- end,
-- },
},
event = "BufReadPost",
opts = {
provider_selector = function()
return { "treesitter", "indent" }
end,
},
init = function()
vim.o.foldcolumn = "1" -- '0' is not bad
vim.o.foldlevel = 99 -- Using ufo provider need a large value, feel free to decrease the value
vim.o.foldlevelstart = 99
vim.o.foldenable = true
-- disabling since LazyVim already sets this nicely and it was overriding my diff fillchar
-- vim.o.fillchars = [[eob: ,fold: ,foldopen:,foldsep: ,foldclose:]]
-- Using ufo provider need remap `zR` and `zM`. If Neovim is 0.6.1, remap yourself
vim.keymap.set("n", "zR", function()
require("ufo").openAllFolds()
end)
vim.keymap.set("n", "zM", function()
require("ufo").closeAllFolds()
end)
end,
},
-- Folding preview, by default h and l keys are used.
-- On first press of h key, when cursor is on a closed fold, the preview will be shown.
-- On second press the preview will be closed and fold will be opened.
-- When preview is opened, the l key will close it and open fold. In all other cases these keys will work as usual.
{ "anuvyklack/fold-preview.nvim", dependencies = "anuvyklack/keymap-amend.nvim", config = true },
}
+1 -1
View File
@@ -14,7 +14,7 @@ return {
{ "<leader>gc", [[<Cmd>Git commit<CR>]], desc = "[G]it [C]ommit" }, { "<leader>gc", [[<Cmd>Git commit<CR>]], desc = "[G]it [C]ommit" },
{ "<leader>gb", [[<Cmd>Git blame -C<CR>]], desc = "[G]it [B]lame" }, { "<leader>gb", [[<Cmd>Git blame -C<CR>]], desc = "[G]it [B]lame" },
{ "<leader>gp", [[<Cmd>Git push<CR>]], desc = "[G]it [P]ush" }, { "<leader>gp", [[<Cmd>Git push<CR>]], desc = "[G]it [P]ush" },
{ "<leader>gf", [[<Cmd>Git push --force<CR>]], desc = "[G]it [F]orce push" }, { "<leader>gF", [[<Cmd>Git push --force<CR>]], desc = "[G]it [F]orce push" },
{ "<leader>gu", [[<Cmd>Git pull<CR>]], desc = "[G]it p[U]ll" }, { "<leader>gu", [[<Cmd>Git pull<CR>]], desc = "[G]it p[U]ll" },
{ {
"<leader>gh", "<leader>gh",
+40 -8
View File
@@ -1,15 +1,50 @@
local function first_jdk(candidates)
for _, path in ipairs(candidates) do
if vim.fn.executable(path .. "/bin/java") == 1 then
return path
end
end
end
local function find_jdk(patterns)
local roots = {
"/Library/Java/JavaVirtualMachines/%s/Contents/Home",
"/usr/lib/jvm/%s",
vim.fn.expand("~") .. "/.sdkman/candidates/java/%s",
}
local candidates = {}
for _, pattern in ipairs(patterns) do
for _, root in ipairs(roots) do
for _, path in ipairs(vim.fn.glob(root:format(pattern), true, true)) do
candidates[#candidates + 1] = path
end
end
end
return first_jdk(candidates)
end
return { return {
{ {
"mfussenegger/nvim-jdtls", "mfussenegger/nvim-jdtls",
opts = function(_, opts) opts = function(_, opts)
local corretto8 = "/Library/Java/JavaVirtualMachines/amazon-corretto-8.jdk/Contents/Home" local jdk8 = find_jdk({ "*corretto-8*", "*corretto*1.8*", "*-8-*", "*java-8*", "*1.8*" })
local temurin21 = "/Library/Java/JavaVirtualMachines/temurin-21.jdk/Contents/Home" local jdk21 = find_jdk({ "*temurin-21*", "*-21-*", "*java-21*", "*21*" })
if jdk21 then
opts.cmd = opts.cmd or {} opts.cmd = opts.cmd or {}
table.insert(opts.cmd, "--java-executable") table.insert(opts.cmd, "--java-executable")
table.insert(opts.cmd, temurin21 .. "/bin/java") table.insert(opts.cmd, jdk21 .. "/bin/java")
end
local project_jdk = vim.env.JAVA_HOME or temurin21 local runtimes = {}
if jdk8 then
table.insert(runtimes, { name = "JavaSE-1.8", path = jdk8 })
end
if jdk21 then
table.insert(runtimes, { name = "JavaSE-21", path = jdk21 })
end
local project_jdk = vim.env.JAVA_HOME or jdk21
opts.settings = vim.tbl_deep_extend("force", opts.settings or {}, { opts.settings = vim.tbl_deep_extend("force", opts.settings or {}, {
java = { java = {
@@ -19,10 +54,7 @@ return {
}, },
}, },
configuration = { configuration = {
runtimes = { runtimes = runtimes,
{ name = "JavaSE-1.8", path = corretto8 },
{ name = "JavaSE-21", path = temurin21 },
},
}, },
}, },
}) })
+1
View File
@@ -1,4 +1,5 @@
return { return {
"meznaric/key-analyzer.nvim", "meznaric/key-analyzer.nvim",
cmd = "KeyAnalyzer",
opts = {}, opts = {},
} }
-9
View File
@@ -1,16 +1,7 @@
return { return {
"mfussenegger/nvim-lint", "mfussenegger/nvim-lint",
opts = { opts = {
linters_by_ft = {
javascript = { "oxlint" },
typescript = { "oxlint" },
javascriptreact = { "oxlint" },
typescriptreact = { "oxlint" },
},
linters = { linters = {
oxlint = {
prepend_args = { "--type-aware" },
},
["markdownlint-cli2"] = { ["markdownlint-cli2"] = {
prepend_args = { prepend_args = {
"--config", "--config",
+12 -3
View File
@@ -1,8 +1,9 @@
return { return {
{
"neovim/nvim-lspconfig", "neovim/nvim-lspconfig",
opts = { opts = {
diagnostics = { diagnostics = {
virtual_text = true, virtual_text = false,
virtual_lines = { current_line = true }, virtual_lines = { current_line = true },
}, },
servers = { servers = {
@@ -10,8 +11,11 @@ return {
-- removing .proto from the list of filetypes since clangd doesn't seem to be able to parse them -- removing .proto from the list of filetypes since clangd doesn't seem to be able to parse them
filetypes = { "c", "cpp", "objc", "objcpp", "cuda" }, filetypes = { "c", "cpp", "objc", "objcpp", "cuda" },
}, },
-- Disable oxlint LSP - using nvim-lint with CLI instead for type-aware support oxlint = {
oxlint = { enabled = false }, keys = {
{ "<leader>cx", "<cmd>LspOxlintFixAll<cr>", desc = "Oxlint Fix All" },
},
},
}, },
-- Disable eslint formatting as it's slow and timing out on big projects -- Disable eslint formatting as it's slow and timing out on big projects
-- taken from -- taken from
@@ -22,4 +26,9 @@ return {
end, end,
}, },
}, },
},
{
"mason-org/mason.nvim",
opts = { ensure_installed = { "oxlint" } },
},
} }
-12
View File
@@ -1,12 +0,0 @@
return {
"nvim-mini/mini.indentscope",
enabled = true,
opts = {
draw = {
-- Speed up distracting animation
animation = function()
return 1
end,
},
},
}
+1 -1
View File
@@ -7,7 +7,7 @@ return {
return { return {
adapters = { adapters = {
["neotest-mocha"] = { ["neotest-mocha"] = {
command = "docker exec -it api-sandbox npm run test:integration", command = "docker exec " .. (vim.env.NEOTEST_MOCHA_CONTAINER or "api-sandbox") .. " npm run test:integration",
command_args = function(context) command_args = function(context)
-- The context contains: -- The context contains:
-- results_path: The file that json results are written to -- results_path: The file that json results are written to
+4 -3
View File
@@ -1,5 +1,5 @@
return { return {
"epwalsh/obsidian.nvim", "obsidian-nvim/obsidian.nvim",
version = "*", -- recommended, use latest release instead of latest commit version = "*", -- recommended, use latest release instead of latest commit
lazy = true, lazy = true,
event = { event = {
@@ -13,8 +13,6 @@ return {
}, },
dependencies = { dependencies = {
"nvim-lua/plenary.nvim", "nvim-lua/plenary.nvim",
"hrsh7th/nvim-cmp",
"ibhagwan/fzf-lua",
}, },
opts = { opts = {
workspaces = { workspaces = {
@@ -23,5 +21,8 @@ return {
path = "~/notes", path = "~/notes",
}, },
}, },
picker = {
name = "snacks.pick",
},
}, },
} }
+1 -10
View File
@@ -1,15 +1,6 @@
return { return {
"pwntester/octo.nvim", "pwntester/octo.nvim",
dependencies = { opts = {
"nvim-lua/plenary.nvim",
"nvim-telescope/telescope.nvim",
-- OR 'ibhagwan/fzf-lua',
"nvim-tree/nvim-web-devicons",
},
cmd = {
"Octo",
},
opt = {
mappings = { mappings = {
pull_request = { pull_request = {
next_comment = { lhs = "<space>]c", desc = "go to next comment" }, next_comment = { lhs = "<space>]c", desc = "go to next comment" },
+1 -1
View File
@@ -25,6 +25,6 @@ return {
}, },
dependencies = { "nvim-tree/nvim-web-devicons" }, dependencies = { "nvim-tree/nvim-web-devicons" },
keys = { keys = {
{ "-", "<cmd>Oil<cr>", { desc = "Open parent directory in current buffer" } }, { "-", "<cmd>Oil<cr>", desc = "Open parent directory in current buffer" },
}, },
} }
-6
View File
@@ -1,6 +0,0 @@
return {
"yorickpeterse/nvim-pqf",
config = function()
require("pqf").setup()
end,
}
-44
View File
@@ -1,44 +0,0 @@
return {
"akinsho/toggleterm.nvim",
version = "*",
opts = {
direction = "horizontal",
open_mapping = [[<C-\>]],
hide_numbers = true,
},
cmd = {
"ToggleTerm",
"TermExec",
"ToggleTermSendCurrentLine",
"ToggleTermSendVisualLines",
"ToggleTermSendVisualSelection",
"ToggleTermOpenAll",
"ToggleTermCloseAll",
"ToggleTermToggleAll",
},
keys = {
[[<C-\>]],
{ "<M-=>", [[<Cmd>ToggleTerm direction=float<CR>]], desc = "Toggle terminal in floating window" },
{
"<M->",
[[<Cmd>ToggleTerm direction=horizontal<CR>]],
desc = "Toggle terminal in horizontal bottom window",
},
-- tmux muscle-memory for fullscreening nvim window
-- replaced with true-zen.nvim
-- vim.keymap.set('n', [[<C-a>z]], [[<Cmd>ToggleTermToggleAll<CR>]])
-- vim.keymap.set('t', [[<C-a>z]], [[<Cmd>tab split<CR>]])
{ "<Esc>", [[<C-\><C-n>]], mode = "t", desc = "Escape terminal mode" },
{ "<Esc><Esc>", [[<Esc>]], mode = "t", desc = "Escape inside terminal" },
-- These were replaced by smart-splits
-- { "<C-j>", [[<Cmd>wincmd h<CR>]], mode = "t", desc = "Move focus down one window" },
-- { "<C-h>", [[<Cmd>wincmd h<CR>]], mode = "t", desc = "Move focus left one window" },
-- { "<C-k>", [[<Cmd>wincmd k<CR>]], mode = "t", desc = "Move focus up one window" },
-- { "<C-l>", [[<Cmd>wincmd l<CR>]], mode = "t", desc = "Move focus right one window" },
{ [[<C-\>]], [[<Cmd>ToggleTerm<CR>]] },
{ "<F12>", [[<Cmd>ToggleTerm<CR>]] },
{ "<F12>", [[<Cmd>ToggleTerm<CR>]], mode = "t" },
-- { "<leader>H", "<cmd>lua _clx_toggle()<CR>", { desc = "Toggle clx (console HackerNews) floating terminal" } },
-- { "<leader>G", "<cmd>lua _gitui_toggle()<CR>", { desc = "Toggle gitui floating terminal" } },
},
}
+14 -1
View File
@@ -1 +1,14 @@
return { "justinsgithub/wezterm-types" } return {
{
"justinsgithub/wezterm-types",
lazy = true,
},
{
"folke/lazydev.nvim",
opts = {
library = {
{ path = "wezterm-types", mods = { "wezterm" } },
},
},
},
}