## Description
This prevents the following error when opening java files when mason is
disabled (e.g: NixOS)
```
Failed to run `config` for nvim-jdtls
...im/lazy/LazyVim/lua/lazyvim/plugins/extras/lang/java.lua:149: module 'mason-registry' not found:
no field package.preload['mason-registry']
cache_loader: module mason-registry not found
cache_loader_lib: module mason-registry not found
no file '/nix/store/j3563y13yim4m7qdwk0m8h22648wbifj-luajit-2.1.1713773202-env/share/lua/5.1/mason-registry.lua'
no file '/nix/store/j3563y13yim4m7qdwk0m8h22648wbifj-luajit-2.1.1713773202-env/share/lua/5.1/mason-registry/init.lua'
no file '/nix/store/j3563y13yim4m7qdwk0m8h22648wbifj-luajit-2.1.1713773202-env/lib/lua/5.1/mason-registry.so'
# stacktrace:
- /LazyVim/lua/lazyvim/plugins/extras/lang/java.lua:149 _in_ **config**
- /nix/store/xgn4baapvvk35ssi47bsmmyawl83917g-neovim-unwrapped-0.10.2/share/nvim/runtime/filetype.lua:36
- /nix/store/xgn4baapvvk35ssi47bsmmyawl83917g-neovim-unwrapped-0.10.2/share/nvim/runtime/filetype.lua:35
```
## Checklist
- [X] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
## Description
The current config breaks when mason is not installed (e.g. for Nix
users). This PR makes the mason-related functionality (which, as of now,
consists only of finding `lombok`) dependent on mason being installed.
As noted in the commit, this does make it impossible to use lombok
without mason, but I'm unaware of any other method of finding it (which
is why mason-registry was used in the first place, I assume)
Please note that I'm not very experienced with Lua and the code might be
not the most idiomatic one.
## Related Issue(s)
<!--
If this PR fixes any issues, please link to the issue here.
- Fixes #<issue_number>
-->
## Screenshots
<!-- Add screenshots of the changes if applicable. -->
## Checklist
- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
## Description
This prevents the following popup appearing when opening nvim:
```
Failed to run `config` for nvim-cmp
.../lazy/LazyVim/lua/lazyvim/plugins/extras/lang/clangd.lua:108: attempt to index field 'sorting' (a nil value)
# stacktrace:
- /LazyVim/lua/lazyvim/plugins/extras/lang/clangd.lua:108 _in_ **values**
- ~/.config/nvim/lua/config/lazy.lua:17
- ~/.config/nvim/init.lua:2
```
## Checklist
- [X] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
## Description
when sorting completion results, blink compares kinds, which can result
in an error if the kind is a string
## Related Issue(s)
<!--
If this PR fixes any issues, please link to the issue here.
- Fixes #<issue_number>
-->
## Screenshots
<!-- Add screenshots of the changes if applicable. -->
## Checklist
- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
## Summary
This pull request introduces several new keymaps specifically for VSCode
when using LazyVim. These changes aim to enhance the integration between
VSCode and LazyVim by adding keymaps for, tab navigation, and syncing
nvim undo/redo actions with vscode undo/redo.
## Changes
- Synced undo/redo lists with VSCode using `VSCodeNotify`: (check
https://github.com/vscode-neovim/vscode-neovim/issues/1139 for more
details)
- `u` for undo
- `<C-r>` for redo
- Enabled navigation of VSCode tabs similar to LazyVim buffers:
- `<S-h>` to go to the previous editor
- `<S-l>` to go to the next editor
## Additional Notes
These changes are intended to improve the user experience for those who
use LazyVim within VSCode by providing more intuitive and consistent
keybindings. Please test these keymaps to ensure they work as expected
in your VSCode setup.
Co-authored-by: Deniz Gökçin <deniz.gokcin@treatwell.com>
## Changes
**NOTE: the PR will be in draft until
https://github.com/mason-org/mason-registry/pull/5774 is not merged**
Some improvements in the Rust extra
- Set `codelldb` adapter for rustacean.nvim
- Add support for [bacon-ls](https://github.com/crisidev/bacon-ls)
([blog post](https://lmno.lol/crisidev/bacon-language-server))
`bacon-ls` can be used as an alternative to `rust-analyzer` for
diagnostics, improving `rust-analyzer` performances. This is configured
by `vim.g.lazyvim_rust_diagnostics`, which can be set to `rust-analyzer`
or `bacon-lsp`.
<img width="1063" alt="screenshot"
src="f50a38ff-0ec0-4d10-8cdc-796d027b16f0">
---------
Co-authored-by: Iordanis Petkakis <12776461+dpetka2001@users.noreply.github.com>