nvim-java was installed but never initialized, so jdtls ran vanilla and the
plugin's value-add (tests, DAP, refactors, Spring Boot) was inert. Wire it up
following the current nvim-java README (Neovim 0.11.5+ / vim.pack install):
- lua/custom/plugins/nvim-java.lua now installs the full stack (spring-boot.nvim
pinned, nui.nvim, nvim-dap, nvim-java), calls `require('java').setup()` and
then `vim.lsp.enable('jdtls')`, in that required order.
- init.lua: the LSP config/enable loop now SKIPS jdtls, so nvim-java is the
single owner of jdtls configuration and enablement. This avoids a second,
competing vanilla jdtls setup while jdtls stays in the `servers` table purely
so mason-tool-installer keeps it installed.
- java-debug-adapter + java-test remain provided via mason-nvim-dap (debug.lua),
giving nvim-java the bundles it launches jdtls with for DAP and tests.
Verified headless: opening a .java buffer attaches exactly one jdtls client
(plus spring-boot), with no duplicate/competing jdtls setup and no Lua errors.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Audit-identified corrections, applied on top of the replayed config:
- conform: use the lowercase filetype key `sql` (not `SQL`) so sql-formatter
actually fires.
- conform: switch Python formatting to `ruff_organize_imports` + `ruff_format`
(black/isort are not installed; ruff is and does both jobs).
- Wire in installed-but-previously-dormant Mason tools: add `texlab` to the
LSP servers (LaTeX LSP, which VimTeX does not provide), and add conform
entries `java = { 'google-java-format' }` and tex/plaintex = { 'latexindent' }.
- which-key: add a `<leader>l` = [L]aTeX group label for the VimTeX maps.
Note: the deprecated `vim.highlight.on_yank` -> `vim.hl.on_yank` change from
the audit is already present in this newer base, so no change was needed there.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Re-apply the user's customizations (previously living as an uncommitted
diff on the OLD lazy.nvim kickstart base) onto the new single-file
vim.pack-based kickstart, adapting them to the new architecture:
- Enable Nerd Font (have_nerd_font = true).
- VimTeX: lua/custom/plugins/vimtex.lua (ported from the lazy `lazy=false`
spec to vim.pack; globals set before load, zathura viewer, latexmk) plus
the three <leader>l keymaps.
- nvim-java: lua/custom/plugins/nvim-java.lua installs the plugin only
(mirrors the user's original `return { 'nvim-java/nvim-java' }`; wiring
is finished in a later commit).
- LSP servers: add jdtls, plus ty (Astral's Python type checker) and ruff.
ty is not in nvim-lspconfig, so it's defined via the new vim.lsp.config
API (cmd/filetypes/root_markers) instead of the old lspconfig.configs path.
- Mason: exclude ty and ruff from auto-install (installed separately via uv).
- conform: re-apply the user's formatter entries.
- treesitter: add `latex` to the installed parsers.
- Enable the optional kickstart modules the user had on (debug, indent_line,
lint, autopairs, neo-tree, gitsigns) and the custom.plugins loader, via the
new base's `require` mechanism (not lazy `import`).
- lint.lua: guard markdownlint behind `vim.fn.executable`.
- debug.lua: add java-debug-adapter and java-test to mason-nvim-dap.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Adds 'gr' to which-keys documentation, so users can see that LSP actions are grouped after 'gr' key binds.
Co-authored-by: thiago-negri <evohunz@gmail.com>
This could help beginners to get autocompletion, catch mistakes earlier,
and allow them to skip the docs for simple configs.
This is not perfect because a lot of the plugins type all of their keys
as required, even though they have defaults, but this is good enough.
* move telescope related lsp functions inside the telscope plugin declaration block
* explicitly enable telescope plugin, add some comments explainging why
* update comments with suggestions from @oriori1703
Co-authored-by: Ori Perry <48057913+oriori1703@users.noreply.github.com>
* fix formatting in accordance to stylua so that pipeline passes
---------
Co-authored-by: Philipp Szechenyi <philipp.szechenyi@cgm.com>
Co-authored-by: Philipp Szechenyi <45265588+szechp@users.noreply.github.com>
Co-authored-by: Ori Perry <48057913+oriori1703@users.noreply.github.com>
Co-authored-by: philipp <philipp@philipps-MacBook-Pro.local>
The functions of vim.highlight were renamed to vim.hl on commit
18b43c331d8a0ed87d7cbefe2a18543b8e4ad360 of neovim, which was applied
with the release of nvim version 0.11.
Now, the use of vim.highlight is deprecated, and instead, one should
use vim.hl functions.
In practice, vim.highlight is still working, however, asking for help
for vim.highlight.on_yank fails (E149), while asking for help for
vim.hl.on_yank works as expected. So, by updating the used function, a
new user will have easier time looking getting the relevant help.
Co-authored-by: Omri Sarig <omri.sarig@prevas.dk>