Compare commits

..

616 Commits
v12.9.0 ... v14

Author SHA1 Message Date
ce37e7f7cb docs: updated NEWS.md 2024-12-12 13:41:14 +01:00
1cb7ae6566 fix(copliot): restructure copilot-cmp spec 2024-12-12 13:32:56 +01:00
73bb4b20b6 style: typo 2024-12-12 12:50:04 +01:00
c578be0bc1 feat(snacks): added profiler keymaps 2024-12-12 12:29:43 +01:00
d5bc4d58d0 feat(zen): zoom with leader-wm and leader-uZ. zen with leader-uz 2024-12-12 12:14:12 +01:00
836e18885c feat(snacks): added snacks.input 2024-12-12 12:03:17 +01:00
6d4caf60fc feat(snacks): added leader-uS to toggle scroll 2024-12-12 11:19:09 +01:00
a5fe23e3f4 feat(snacks): added leader-ug to toggle indent guides 2024-12-12 11:18:55 +01:00
4d087030bd fix(git): make nvim-cmp optional for the git extra 2024-12-12 11:07:29 +01:00
f3543d8d29 refactor(snacks): move snacks specs to ui/util so that they show up in the generated docs 2024-12-12 09:37:47 +01:00
4341cdc892 feat(snacks): added leader-ua to toggle global animations 2024-12-12 08:46:26 +01:00
178ef97804 fix(nvim-cmp): specs 2024-12-12 08:45:02 +01:00
43140c0897 feat(keymaps): added leader-z to toggle zen mode 2024-12-12 08:08:13 +01:00
a35b328978 feat(keymaps): added leader-Z to toggle zoom 2024-12-12 08:08:01 +01:00
cc747b3635 feat(keymaps): added leader-uD to toggle dim mode 2024-12-12 08:07:48 +01:00
96684c696c feat(lualine): add snacks profiler status 2024-12-12 08:07:29 +01:00
b510209024 fix(ui): use Snacks.util.color instead of LazyVim.ui.fg 2024-12-12 07:49:07 +01:00
f53a1b7f12 feat(snacks): use Snacks.zen.zoom() instead of custom **maximize** 2024-12-12 07:29:28 +01:00
b7ff5c24bd feat(cmp)!: moved nvim-cmp to extras and prefer blink.cmp on Neovim >= 0.10 as default completion engine 2024-12-12 07:29:28 +01:00
b2a18f8e0e feat(cmp)!: moved nvim-cmp to extras and prefer blink.cmp on Neovim >= 0.10 as default completion engine 2024-12-12 07:25:07 +01:00
c4de0c1d34 feat(snacks)!: use snacks.scope indent objects in favor of custom mini.ai indent objects 2024-12-12 07:09:09 +01:00
3db0dcc68e feat(snacks): enable snacks.scroll 2024-12-12 07:06:41 +01:00
cc0cd8c419 feat(snacks)!: use snacks.indent and moved indent-blankline to extras 2024-12-12 07:06:26 +01:00
a653cbc7da fix(mini.animate): disable snacks.scroll when mini.animate is enabled 2024-12-12 07:02:12 +01:00
ce32cf66f6 feat(which-key): make helix the default which-key preset 2024-12-12 06:59:52 +01:00
3d242774d0 feat(pick)!: make fzf the default picker for LazyVim 2024-12-12 06:55:18 +01:00
69e8867a0f chore(build): auto-generate docs 2024-12-12 05:30:09 +00:00
cee60a6d30 fix(blink): set kind to int, not string, if overriding (#4999)
## 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.
2024-12-12 06:29:08 +01:00
475e3f32b8 chore(main): release 13.9.0 (#4979)
🤖 I have created a release *beep* *boop*
---


##
[13.9.0](https://github.com/LazyVim/LazyVim/compare/v13.8.0...v13.9.0)
(2024-12-11)


### Features

* **luasnip:** add default user snippet location
([#4987](https://github.com/LazyVim/LazyVim/issues/4987))
([8c79ab6](8c79ab601a))
* **vscode:** add vscode-specific keymaps and sync undo/redo with vscode
([#4983](https://github.com/LazyVim/LazyVim/issues/4983))
([9ad1c49](9ad1c49b67))


### Bug Fixes

* **autocmds:** remove snacks_win from close_with_q, since they have
their own keymaps
([99c361f](99c361f708))
* **blink:** config breaking changes. Fixes
[#4990](https://github.com/LazyVim/LazyVim/issues/4990)
([439340b](439340bd8a))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-12-12 00:29:18 +01:00
8c79ab601a feat(luasnip): add default user snippet location (#4987)
## Description

Loads snippets in user directories if it exists.

## Checklist

- [X] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-12-11 11:13:57 +01:00
87915a1f23 chore(build): auto-generate docs 2024-12-11 09:58:12 +00:00
439340bd8a fix(blink): config breaking changes. Fixes #4990 2024-12-11 10:57:09 +01:00
9ad1c49b67 feat(vscode): add vscode-specific keymaps and sync undo/redo with vscode (#4983)
## 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>
2024-12-10 12:13:01 +01:00
e2c189e066 chore(build): auto-generate docs 2024-12-10 11:10:44 +00:00
1519cd6da7 chore: remove dead code. Closes #4985 2024-12-10 12:09:40 +01:00
4b86cf9900 chore(build): auto-generate docs 2024-12-09 23:32:30 +00:00
99c361f708 fix(autocmds): remove snacks_win from close_with_q, since they have their own keymaps 2024-12-10 00:31:36 +01:00
71ea193cf6 chore(build): auto-generate docs 2024-12-08 20:54:21 +00:00
3c605f547c chore(main): release 13.8.0 (#4955)
🤖 I have created a release *beep* *boop*
---


##
[13.8.0](https://github.com/LazyVim/LazyVim/compare/v13.7.0...v13.8.0)
(2024-12-07)


### Features

* **git:** added toggles for gitsigns.nvim and mini.diff
([2ebba15](2ebba15e12))


### Bug Fixes

* **dot:** kitty ft with bash treesitter highlights
([7ef2dfd](7ef2dfd3ba))
* **keymaps:** toggle name
([b2f7505](b2f750558a))
* **mini.diff:** toggle
([3f4b1ff](3f4b1ff003))
* **rust:** only use mason.nvim if it is present
([#4963](https://github.com/LazyVim/LazyVim/issues/4963))
([5ddad99](5ddad99bac))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-12-08 21:53:24 +01:00
7ef2dfd3ba fix(dot): kitty ft with bash treesitter highlights 2024-12-07 20:52:48 +01:00
3f4b1ff003 fix(mini.diff): toggle 2024-12-07 20:52:13 +01:00
0d71732902 chore(build): auto-generate docs 2024-12-07 10:58:17 +00:00
2ebba15e12 feat(git): added toggles for gitsigns.nvim and mini.diff 2024-12-07 11:57:21 +01:00
d424a02554 chore(build): auto-generate docs 2024-12-06 15:36:29 +00:00
5ddad99bac fix(rust): only use mason.nvim if it is present (#4963)
## Description

Fix the lang/rust extra for users that don't use mason. Uses the fix
suggested in
https://github.com/LazyVim/LazyVim/issues/4957#issuecomment-2521787846,
which works perfectly!

## Related Issue(s)

Fixes https://github.com/LazyVim/LazyVim/issues/4957

## Screenshots

n/a

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

Co-authored-by: Felix Rath <frath@cloudflare.com>
2024-12-06 16:35:27 +01:00
b2f750558a fix(keymaps): toggle name 2024-12-05 09:52:49 +01:00
8a3321d827 chore(main): release 13.7.0 (#4929)
🤖 I have created a release *beep* *boop*
---


##
[13.7.0](https://github.com/LazyVim/LazyVim/compare/v13.6.0...v13.7.0)
(2024-12-05)


### Features

* **blink:** enabled treesitter highlighting
([0a9447c](0a9447c1b1))
* **extras.ai:** blink.cmp integration and kind overrides for menu
drawing ([#4942](https://github.com/LazyVim/LazyVim/issues/4942))
([f841ecf](f841ecf6bd))
* **rust:** add bacon-ls and improve debugging
([#3212](https://github.com/LazyVim/LazyVim/issues/3212))
([ea794ff](ea794ffd94))
* **snacks:** silence copy url keymap
([#4939](https://github.com/LazyVim/LazyVim/issues/4939))
([03e203b](03e203bfbe))
* **toggle:** added leader-A to toggle tabline. Closes
[#4951](https://github.com/LazyVim/LazyVim/issues/4951)
([8232651](8232651c4a))


### Bug Fixes

* **blink:** update config for latest changes
([#4953](https://github.com/LazyVim/LazyVim/issues/4953))
([090ca75](090ca75d3b))
* **copilot:** CopilotChat.nvim has moved to main
([#4931](https://github.com/LazyVim/LazyVim/issues/4931))
([0d6026a](0d6026a3e8))
* **extras.treesitter-context:** change event back to `LazyFile`
([#4940](https://github.com/LazyVim/LazyVim/issues/4940))
([83017ff](83017ff28a))
* **supermaven:** blink.cmp integration
([#4941](https://github.com/LazyVim/LazyVim/issues/4941))
([d714711](d71471151b))
* **tex:** specify filetype for &lt;localleader&gt;l
([#4905](https://github.com/LazyVim/LazyVim/issues/4905))
([12e3752](12e37529e7))
* **ui:** actually disable mini-indentscope on snacks_dashboard
([#4947](https://github.com/LazyVim/LazyVim/issues/4947))
([bfe29fb](bfe29fb013))
* **ui:** disable mini.indentscope on `ft=snacks_dashboard`
([#4928](https://github.com/LazyVim/LazyVim/issues/4928))
([4bf3a39](4bf3a39223))
* **ui:** properly clear maximize state on exit. See
[#4934](https://github.com/LazyVim/LazyVim/issues/4934)
([9ec253b](9ec253b9b6))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-12-05 09:22:10 +01:00
ea794ffd94 feat(rust): add bacon-ls and improve debugging (#3212)
## 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="https://github.com/LazyVim/LazyVim/assets/1781140/f50a38ff-0ec0-4d10-8cdc-796d027b16f0">

---------

Co-authored-by: Iordanis Petkakis <12776461+dpetka2001@users.noreply.github.com>
2024-12-05 09:20:34 +01:00
8232651c4a feat(toggle): added leader-A to toggle tabline. Closes #4951 2024-12-05 09:18:16 +01:00
83017ff28a fix(extras.treesitter-context): change event back to LazyFile (#4940)
## Description

Load treesitter-context on `LazyFile` instead of `VeryLazy`. IMHO it
didn't make sense to load the plugin earlier just so that the toggle is
available, especially when the toggle won't actually have any effect
anything until a file is opened.

~Previously, treesitter-context was loaded on `VeryLazy` and its toggle
map in `opt`, which also `require`d it. Now, mapping happens in config,
after treesitter-context is setup (also how toggle is handled in other
extras, eg for render-markdown).~

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-12-05 09:11:40 +01:00
12e37529e7 fix(tex): specify filetype for <localleader>l (#4905)
## Description

Specify the filetype for the keymap `<localleader>l` to ensure that this
keybinding group only appears when editing TeX files.

## 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.
2024-12-05 09:11:11 +01:00
bfe29fb013 fix(ui): actually disable mini-indentscope on snacks_dashboard (#4947)
## Description

Disables mini.indentscope for the buffer on which the
`SnacksDashboardOpened` autocmd is called.

## Related Issue(s)

closes #4944

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-12-05 09:10:44 +01:00
097b9e2f27 chore(build): auto-generate docs 2024-12-05 07:47:07 +00:00
090ca75d3b fix(blink): update config for latest changes (#4953)
## Description

Update the blink.cmp config for the latest changes.

Mainly fixing the experimental `auto_brackets` support (moved under the
`completion` key). The other changes are either the same as the
defaults, or commented out - they were simply updated to reflect the new
config format.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-12-05 08:46:15 +01:00
efc95dc6aa chore(build): auto-generate docs 2024-12-03 20:08:00 +00:00
f841ecf6bd feat(extras.ai): blink.cmp integration and kind overrides for menu drawing (#4942)
## Description

blink.cmp integration for codeium and copilot, and correct menu drawing
for codeium, copilot, and supermaven.

I've simplified the blink.cmp config a bit for these extras (especially
for copilot, which was extremely nested) by only including the blink.cmp
spec if vim.g.ai_cmp is true.

Multiple AI extras can now be enabled at the same time with blink.cmp.

blink.cmp ghost text is now always enabled. Although some ai plugins
always display virtual text, at worst it overlaps with blink's ghost
text and is not noticable.

Lastly, I can't test copilot because I don't have a subscription, nor do
I want to sign up for one, but it should work just as well as the
others.

## Screenshots

With Codeium:

![image](https://github.com/user-attachments/assets/1485ee3f-1cba-440f-8a82-ec69b4a3f473)

Multiple extras enabled at the same time:

![image](https://github.com/user-attachments/assets/4364ee45-d79b-4f97-a4c0-cf2a2b6433c6)

## 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>
2024-12-03 21:06:58 +01:00
4a626a8137 refactor(ui): cleanup maximize code 2024-12-02 23:46:11 +01:00
9ec253b9b6 fix(ui): properly clear maximize state on exit. See #4934 2024-12-02 22:34:39 +01:00
d71471151b fix(supermaven): blink.cmp integration (#4941)
## Description

Supermaven completion now works with the latest release of blink.cmp and
blink.compat. I'll also take a look at the other ai extras soon.

~A draft for now, until some issues with ghost text are resolved, see
https://github.com/Saghen/blink.cmp/issues/257. Alternatively, enabling
the supermaven extra could disable ghost text.~

## Screenshots


![image](https://github.com/user-attachments/assets/feb8003d-85c5-49a4-80df-7f57b240d371)

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-12-02 21:51:25 +01:00
03e203bfbe feat(snacks): silence copy url keymap (#4939)
## Description

Silences keymap introduced in related PR
## Related PR(s)

https://github.com/LazyVim/LazyVim/pull/4870

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-12-02 20:22:55 +01:00
0a9447c1b1 feat(blink): enabled treesitter highlighting 2024-12-02 19:43:08 +01:00
fefcda5431 chore(build): auto-generate docs 2024-12-02 06:36:02 +00:00
0d6026a3e8 fix(copilot): CopilotChat.nvim has moved to main (#4931)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

CopilotChat.nvim has moved to main
([ref](https://github.com/CopilotC-Nvim/CopilotChat.nvim/issues/665))

## Related Issue(s)
https://github.com/CopilotC-Nvim/CopilotChat.nvim/issues/665
<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

![image](https://github.com/user-attachments/assets/2970e3c0-04af-49e9-974b-d535e47b9c12)

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-12-02 07:35:04 +01:00
4bf3a39223 fix(ui): disable mini.indentscope on ft=snacks_dashboard (#4928)
## Description

mini.indentscope would act on the snacks dashboard if it was somehow
loaded while the dashboard is still open.

## Related Issue(s)

I forgot about mini.indentscope in #4895 :)

## Screenshots

**Actually** fixes this:

![image](https://github.com/user-attachments/assets/1f77cf1d-c9c1-48d1-9bf3-8508782e8dd1)

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-12-01 19:57:55 +01:00
7bdc205e7d chore(main): release 13.6.0 (#4872)
🤖 I have created a release *beep* *boop*
---


##
[13.6.0](https://github.com/LazyVim/LazyVim/compare/v13.5.3...v13.6.0)
(2024-12-01)


### Features

* **colorscheme:** enable catppuccin snacks integration by default
([#4882](https://github.com/LazyVim/LazyVim/issues/4882))
([5659786](5659786893))
* **extras:** added extra for `smear-cursor.nvim`
([40dba86](40dba86925))
* **lang:** add maxInlayHintLength for vtsls to resolve inlay hint to…
([#4902](https://github.com/LazyVim/LazyVim/issues/4902))
([1847e3f](1847e3fb25))
* **smear-cursor:** enable `cursor_color = "none"`, to show trail using
color of target text fg color
([275c786](275c78665e))
* **snacks:** add keymap to copy url from gitbrowse
([#4870](https://github.com/LazyVim/LazyVim/issues/4870))
([cdf3f1f](cdf3f1f2bd))
* **snacks:** added leader-. to toggle a scratch buffer. Uses `count`
for new scratch buffers
([6d42f10](6d42f1084d))
* **snacks:** added leader-n to show notification history
([be0cb96](be0cb9622d))
* **snacks:** added leader-S to select a previous scratch buffer
([e05379b](e05379babc))


### Bug Fixes

* **blink:** fixed luasnip completions for blink
([7bb954f](7bb954fd1d))
* **blink:** icons
([2263b94](2263b94439))
* **blink:** make sure blink.compat is setup correctly when used in
extras
([91a3c66](91a3c663a7))
* **blink:** updated to config to reflect breaking changes
([efcba66](efcba66a22))
* **dial:** add and/or augend to python ft
([#4875](https://github.com/LazyVim/LazyVim/issues/4875))
([ecfaed3](ecfaed3cc1))
* **java:** give java a default nvim-dap config
([#4261](https://github.com/LazyVim/LazyVim/issues/4261))
([c9102bc](c9102bc351))
* **java:** minisurround jdtls keybind conflict
([#4886](https://github.com/LazyVim/LazyVim/issues/4886))
([30fac42](30fac4206a))
* **lazydev:** use luals' bundled luv library
([eb525c6](eb525c680d))
* **lsp:** don't leak keymaps from LSP server configs
([#4849](https://github.com/LazyVim/LazyVim/issues/4849))
([85e4118](85e4118065))
* **mini.animate:** disable when in Neovide
([66459f9](66459f9361))
* **octo:** upstream changed mappings to `localleader`
([#4850](https://github.com/LazyVim/LazyVim/issues/4850))
([c979225](c979225c37))
* **snacks:** remove lazygit requirement for git browse/blame keymaps
([#4869](https://github.com/LazyVim/LazyVim/issues/4869))
([2c37492](2c37492461))
* **sql:** fix autocomplete, it was using the wrong plugin name on the
`LazyVim.has` check
([#4900](https://github.com/LazyVim/LazyVim/issues/4900))
([ed10d3c](ed10d3cf19))
* **sql:** only use cmp if it is available
([#4891](https://github.com/LazyVim/LazyVim/issues/4891))
([9eccb5d](9eccb5d2de))
* **ui:** disable indent-blankline on `ft=snacks_dashboard`
([#4895](https://github.com/LazyVim/LazyVim/issues/4895))
([c022759](c02275919e))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-12-01 09:38:42 +01:00
c8bd062ef8 chore(build): auto-generate docs 2024-12-01 08:32:23 +00:00
6d42f1084d feat(snacks): added leader-. to toggle a scratch buffer. Uses count for new scratch buffers 2024-12-01 09:31:26 +01:00
e05379babc feat(snacks): added leader-S to select a previous scratch buffer 2024-12-01 09:31:26 +01:00
be0cb9622d feat(snacks): added leader-n to show notification history 2024-12-01 09:31:26 +01:00
2fc7697786 chore(build): auto-generate docs 2024-11-29 13:31:50 +00:00
275c78665e feat(smear-cursor): enable cursor_color = "none", to show trail using color of target text fg color 2024-11-29 14:30:47 +01:00
2263b94439 fix(blink): icons 2024-11-28 21:51:23 +01:00
1847e3fb25 feat(lang): add maxInlayHintLength for vtsls to resolve inlay hint to… (#4902)
## Description

feat(lang): add maxInlayHintLength for vtsls to resolve inlay hint too
long

## Related Issue(s)
* https://github.com/neovim/neovim/issues/27240
* https://github.com/yioneko/vtsls/pull/173


## Screenshots
before

![image](https://github.com/user-attachments/assets/5bc53695-7457-4f8f-bd03-b4de29f6f80d)


after

![image](https://github.com/user-attachments/assets/c9281173-4198-4bf2-84cf-33c5d1984550)



## Checklist

- [ x ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-28 08:49:40 +01:00
7bb954fd1d fix(blink): fixed luasnip completions for blink 2024-11-28 07:39:30 +01:00
efcba66a22 fix(blink): updated to config to reflect breaking changes 2024-11-28 07:39:30 +01:00
76fbed6de5 chore(build): auto-generate docs 2024-11-28 06:22:02 +00:00
ed10d3cf19 fix(sql): fix autocomplete, it was using the wrong plugin name on the LazyVim.has check (#4900)
## Description

`LazyVim.has` was called with the wrong plugin name.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-28 07:21:00 +01:00
13dc88a317 chore(build): auto-generate docs 2024-11-27 16:11:17 +00:00
40dba86925 feat(extras): added extra for smear-cursor.nvim 2024-11-27 17:10:22 +01:00
66459f9361 fix(mini.animate): disable when in Neovide 2024-11-27 17:09:59 +01:00
c02275919e fix(ui): disable indent-blankline on ft=snacks_dashboard (#4895)
## Description

`indent-blankline.nvim` would act on the snacks dashboard if it was
somehow loaded while the dashboard is still open.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

Fixes this:

![image](https://github.com/user-attachments/assets/1f77cf1d-c9c1-48d1-9bf3-8508782e8dd1)

## Checklist

- [X] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-26 22:39:05 +01:00
9eccb5d2de fix(sql): only use cmp if it is available (#4891)
## Description

The blink and sql extras are currently conflicting because the sql extra
has a hard dependency on nvim-cmp, which is disabled by the blink extra.
Introducing a check for cmp in the sql extra resolves this.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

Co-authored-by: Jakob Pfender <jakob.pfender@safetyio.com>
2024-11-26 16:12:56 +01:00
d5734087e4 chore(build): auto-generate docs 2024-11-26 08:14:53 +00:00
c9102bc351 fix(java): give java a default nvim-dap config (#4261)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->
Currently, there are no Java configurations for nvim-dap upon enabling
the Java extras.

This requires debugging configurations to be setup manually afterwards.

(This is unlike many other language extras which do have nvim-dap
support "out of the box")

This pr creates an initial configuration for nvim-dap which lets it
attach to a debugging process on port 5005.
(such as a spring boot application) More can be added if there are any
experienced Java devs here.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->
None

## Screenshots

<!-- Add screenshots of the changes if applicable. -->
Error message:

![image](https://github.com/user-attachments/assets/5922cf48-6ac7-4a2a-8785-1f9b958089e4)

Java remote debugging open:

![image](https://github.com/user-attachments/assets/dfbe7c5b-2308-4aa4-a236-487605e4c75a)


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-26 09:13:01 +01:00
cdf3f1f2bd feat(snacks): add keymap to copy url from gitbrowse (#4870)
## Description

Adds a `<leader>gY` keymap that copies the URL from `Snacks.gitbrowse()`
to the clipboard.

This is a feature in other git browse plugins like `vim-rhubarb`, so
other people will probably be looking for this when migrating like I
did.

Let me know if you'd prefer a different key combination, thanks!

## Related Issue(s)

N/A

## Screenshots

N/A

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-25 15:00:36 +01:00
85e4118065 fix(lsp): don't leak keymaps from LSP server configs (#4849)
## Description

I found an issue where if I'm editing files of different types, say for
example `.cs` and `.py` files, they will naturally load the
corresponding LSPs for each language. However, if one of those LSPs has
keys defined in their `server` config section, then those key maps will
leak into the other, so in this case, the `gd` (go to definition)
mapping intended for `.cs` buffers is now present in `.py` buffers,
causing it not to work. This is currently the case with the `omnisharp`
LSP, as it defines a `gd` key map, see:
63150fa4c5/lua/lazyvim/plugins/extras/lang/omnisharp.lua (L53-L61)

The fix here is to shallow clone the "global" LSP keymaps before adding
the LSP server-specific keymaps so the LSP keymaps aren't added to the
global ones.

## Related Issue(s)

## Screenshots

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-25 14:59:55 +01:00
37dbb63c61 docs(readme): enhance the quality of the Chinese translation (#4860)
## Description

Enhance the quality of the Chinese README.

### Changes
1. Complete the translation of the untranslated sections.
2. Correct inaccuracies in existing translations.
3. Revise the language to sound more natural and idiomatic.
4. Adjust punctuation and paragraph structure to align with Chinese
typography standards.

## 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.
2024-11-25 14:59:25 +01:00
55be9a1648 chore(build): auto-generate docs 2024-11-25 13:58:01 +00:00
30fac4206a fix(java): minisurround jdtls keybind conflict (#4886)
## Description

Fixes the keybind conflict with jdtls and mini-surround plugin.

When pressing "\<gs\>" or "\<gS\>" to start the surround once the java
language server starts,
it replaces the surround bind with "goto super" and "goto subjects".

When pressing "\<gs\>" quickly, it attempts the command "goto super".
When pressing "\<gs\>" slowly, it brings up "which-key" and the surround
bind works.

## Related Issue(s)

None

## Screenshots
Pressing "\<gs\>" quickly

![image](https://github.com/user-attachments/assets/8fbaf39f-72cd-4d7d-bcf7-035faa7650e8)

Pressing "\<gs\>" slowly

![image](https://github.com/user-attachments/assets/2ec4d1f3-f900-413c-8351-26cb8a5cbafc)


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-25 14:57:17 +01:00
c979225c37 fix(octo): upstream changed mappings to localleader (#4850)
## Description
As of this [PR](https://github.com/pwntester/octo.nvim/pull/681)
`<leader>` got changed to `<localleader>`.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
None
<!--
  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.
2024-11-25 14:57:02 +01:00
eb525c680d fix(lazydev): use luals' bundled luv library 2024-11-24 23:03:03 +01:00
91a3c663a7 fix(blink): make sure blink.compat is setup correctly when used in extras 2024-11-24 22:03:43 +01:00
a03f796097 chore(build): auto-generate docs 2024-11-24 16:30:10 +00:00
5659786893 feat(colorscheme): enable catppuccin snacks integration by default (#4882)
## Description

Enable catppuccin's snacks integration by default.

## 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.
2024-11-24 17:28:26 +01:00
ecfaed3cc1 fix(dial): add and/or augend to python ft (#4875)
## Description

The python language includes the keywords `and` or `or` for logical
operations.
The current `dial.nvim` config does not include an augend for swapping
these
keywords.

## 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.
2024-11-23 00:05:43 +01:00
2c37492461 fix(snacks): remove lazygit requirement for git browse/blame keymaps (#4869)
## Description

The Snacks keymaps for `gitbrowse()` and `git.blame_line()` were in a
conditional checking if `lazygit` is installed. But both work without
`lazygit`.

## Related Issue(s)

N/A

## Screenshots

N/A

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-22 12:25:33 +01:00
adcbfc72fd chore(main): release 13.5.3 (#4845)
🤖 I have created a release *beep* *boop*
---


##
[13.5.3](https://github.com/LazyVim/LazyVim/compare/v13.5.2...v13.5.3)
(2024-11-22)


### Bug Fixes

* **copilot:** remove tmp nightly fix
([30f556d](30f556d17a))
* **dial:** make sure defaults are part of every group. Fixes
[#4868](https://github.com/LazyVim/LazyVim/issues/4868)
([2108028](2108028cde))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-22 09:41:06 +01:00
ba8f6b0215 chore(build): auto-generate docs 2024-11-22 05:55:52 +00:00
2108028cde fix(dial): make sure defaults are part of every group. Fixes #4868 2024-11-22 06:54:47 +01:00
63150fa4c5 chore(build): auto-generate docs 2024-11-20 08:49:27 +00:00
30f556d17a fix(copilot): remove tmp nightly fix 2024-11-20 09:48:30 +01:00
4d596cf4b4 chore(main): release 13.5.2 (#4840)
🤖 I have created a release *beep* *boop*
---


##
[13.5.2](https://github.com/LazyVim/LazyVim/compare/v13.5.1...v13.5.2)
(2024-11-19)


### Bug Fixes

* **keymaps:** `gitbrowse` also in Visual mode
([#4818](https://github.com/LazyVim/LazyVim/issues/4818))
([86dc548](86dc548ff9))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-19 15:35:35 +01:00
86dc548ff9 fix(keymaps): gitbrowse also in Visual mode (#4818)
## Description
If https://github.com/folke/snacks.nvim/pull/89 gets accepted, then we
should also update the keymap for Visual mode
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
None
<!--
  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.
2024-11-19 15:27:07 +01:00
fc2eae5faf chore(main): release 13.5.1 (#4835)
🤖 I have created a release *beep* *boop*
---


##
[13.5.1](https://github.com/LazyVim/LazyVim/compare/v13.5.0...v13.5.1)
(2024-11-19)


### Bug Fixes

* **copilot:** work-around to get copilot working again on nightly
([5961528](59615281f8))
* **extras:** add blink.cmp integration for SQL extra
([#4833](https://github.com/LazyVim/LazyVim/issues/4833))
([0bb1da6](0bb1da6d57))
* **snacks:** alignment of header
([4df9392](4df9392cb8))
* **snacks:** cleaner way to adjust keys preset
([9c31004](9c31004365))
* **snacks:** make sure early notifications show up in noice
([b873f9a](b873f9a7e7))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-19 09:47:23 +01:00
4df9392cb8 fix(snacks): alignment of header 2024-11-19 09:35:42 +01:00
b873f9a7e7 fix(snacks): make sure early notifications show up in noice 2024-11-19 09:03:00 +01:00
59615281f8 fix(copilot): work-around to get copilot working again on nightly 2024-11-19 08:49:53 +01:00
f198eef6e5 chore(build): auto-generate docs 2024-11-19 06:32:29 +00:00
9c31004365 fix(snacks): cleaner way to adjust keys preset 2024-11-19 07:31:28 +01:00
0bb1da6d57 fix(extras): add blink.cmp integration for SQL extra (#4833)
## Description

This PR adds blink.cmp integration with `vim-dadbod-completion` in the
SQL extras module. It allows blink.cmp to use the dadbod provider for
SQL autocompletion in Neovim.

## 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.
2024-11-19 00:02:56 +01:00
2786fdb6e2 chore(main): release 13.5.0 (#4823)
🤖 I have created a release *beep* *boop*
---


##
[13.5.0](https://github.com/LazyVim/LazyVim/compare/v13.4.0...v13.5.0)
(2024-11-18)


### Features

* **copilot-chat:** remove call to nvim-cmp integration
([#4822](https://github.com/LazyVim/LazyVim/issues/4822))
([af95531](af9553135d))
* **snacks:** use `snacks.dashboard` as the default dashboard. moved
`dashboard-nvim` to extras
([#4832](https://github.com/LazyVim/LazyVim/issues/4832))
([a07db1a](a07db1a723))


### Bug Fixes

* **lualine:** dont show statusline on snacks_dashboard
([33557ae](33557ae68b))
* **tabnine:** dont call CmpTabnineHub in build. Fixes
[#4828](https://github.com/LazyVim/LazyVim/issues/4828)
([6dcf5d7](6dcf5d7159))


### Performance Improvements

* **ui:** never show folds on dashboards
([0352f94](0352f944c3))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-18 23:34:15 +01:00
a07db1a723 feat(snacks): use snacks.dashboard as the default dashboard. moved dashboard-nvim to extras (#4832)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

Snacks has a new dashboard plugin that will be LazyVim's default.

Check the docs at
https://github.com/folke/snacks.nvim/blob/main/docs/dashboard.md

## 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.
2024-11-18 23:32:49 +01:00
0352f944c3 perf(ui): never show folds on dashboards 2024-11-18 21:27:36 +01:00
33557ae68b fix(lualine): dont show statusline on snacks_dashboard 2024-11-18 21:27:36 +01:00
6dcf5d7159 fix(tabnine): dont call CmpTabnineHub in build. Fixes #4828 2024-11-18 21:27:36 +01:00
5c5ae903c9 chore(build): auto-generate docs 2024-11-18 09:06:35 +00:00
af9553135d feat(copilot-chat): remove call to nvim-cmp integration (#4822)
nvim-cmp integration was removed in favour of custom autocomplete (it
was pointless trying to support all the new completion plugins when its
15 lines to implement something plugin specific)

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2024-11-18 10:05:28 +01:00
704c29110d chore(main): release 13.4.0 (#4806)
🤖 I have created a release *beep* *boop*
---


##
[13.4.0](https://github.com/LazyVim/LazyVim/compare/v13.3.1...v13.4.0)
(2024-11-16)


### Features

* **blink:** auto-enable catppuccin integration
([#4799](https://github.com/LazyVim/LazyVim/issues/4799))
([ffce089](ffce089a9f))
* **copilot-chat:** remove deprecated options
([#4802](https://github.com/LazyVim/LazyVim/issues/4802))
([7a1414b](7a1414b5e5))
* **dial:** support vue filetype
([#4785](https://github.com/LazyVim/LazyVim/issues/4785))
([8235126](8235126a32))
* **extras:** add biome formatter
([#4448](https://github.com/LazyVim/LazyVim/issues/4448))
([b8407f4](b8407f4b12))
* **vscode:** automatically enable the vscode extra when running in
vscode
([1c5a330](1c5a330b6b))


### Bug Fixes

* **terminal:** set shellcmdflags for powershell to recommended values.
Closes [#4805](https://github.com/LazyVim/LazyVim/issues/4805)
([1db2af2](1db2af267e))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-16 13:09:51 +01:00
1db2af267e fix(terminal): set shellcmdflags for powershell to recommended values. Closes #4805 2024-11-16 07:39:48 +01:00
1c5a330b6b feat(vscode): automatically enable the vscode extra when running in vscode 2024-11-16 07:35:47 +01:00
b8407f4b12 feat(extras): add biome formatter (#4448)
## Description
This PR adds biome as a conform/null-ls formatter.

When using biome lsp formatting directly, the syntax highlighting is
flickering. However, it works great when formatting is configured with
conform.

To avoid conflicts with Prettier, it is recommended to set
`vim.g.lazyvim_prettier_needs_config = true` In this case, both prettier
and biome formatters could be activated simultaneously.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-16 07:34:21 +01:00
8235126a32 feat(dial): support vue filetype (#4785)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

support vue filetype

## 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.
2024-11-16 07:33:27 +01:00
767d873f93 chore(build): auto-generate docs 2024-11-16 06:32:40 +00:00
ffce089a9f feat(blink): auto-enable catppuccin integration (#4799)
## Description

Auto enable `blink_cmp` integration in catppuccin if the theme plugin is
loaded.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

**Before**

![before](https://github.com/user-attachments/assets/918d5110-fd05-4468-9259-bf7164569521)

**After**

![after](https://github.com/user-attachments/assets/0d02d0c6-2b31-41cd-8b26-fbf74a86e498)


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-16 07:32:07 +01:00
7a1414b5e5 feat(copilot-chat): remove deprecated options (#4802)
- Diagnostic help was deprecated and now just proxies to prompt actions
(by default diagnostics are auto included in all selections so this
feature was no longer necessary)
- Selecton is now visual || buffer by default so the custom selection
config is no longer needed too

Signed-off-by: Tomas Slusny <slusnucky@gmail.com>
2024-11-16 07:31:50 +01:00
bb289f4345 chore(main): release 13.3.1 (#4796)
🤖 I have created a release *beep* *boop*
---


##
[13.3.1](https://github.com/LazyVim/LazyVim/compare/v13.3.0...v13.3.1)
(2024-11-15)


### Bug Fixes

* **copilot:** don't enable blink when using copilot when blink is not
installed. Fixes [#4795](https://github.com/LazyVim/LazyVim/issues/4795)
([07a0468](07a046867d))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-15 06:29:54 +01:00
bbd5c8a771 chore(build): auto-generate docs 2024-11-15 05:26:21 +00:00
07a046867d fix(copilot): don't enable blink when using copilot when blink is not installed. Fixes #4795 2024-11-15 06:25:26 +01:00
ad3e2b6354 chore(main): release 13.3.0 (#4765)
🤖 I have created a release *beep* *boop*
---


##
[13.3.0](https://github.com/LazyVim/LazyVim/compare/v13.2.0...v13.3.0)
(2024-11-14)


### Features

* **copilot:** added support for blink.cmp source
([a7eca05](a7eca05609))
* **extras:** add supermaven
([#3491](https://github.com/LazyVim/LazyVim/issues/3491))
([c1e8e3c](c1e8e3c80d))


### Bug Fixes

* **dial.nvim:** added boolean and logical toggles to default group.
Fixes [#4515](https://github.com/LazyVim/LazyVim/issues/4515)
([5e485d3](5e485d39b4))
* **fzf:** decouple `defaults` from `opts` to easy switch profiles
([#4190](https://github.com/LazyVim/LazyVim/issues/4190))
([0819f93](0819f9396e))
* **lsp:** wrap signature_help
([#4791](https://github.com/LazyVim/LazyVim/issues/4791))
([deb9fd8](deb9fd85b1))
* **lualine:** dynamically fetch the color used in lualine
([#4788](https://github.com/LazyVim/LazyVim/issues/4788))
([e50b435](e50b43544f))
* **lualine:** normalize paths before calculating pretty path. Fixes
[#4763](https://github.com/LazyVim/LazyVim/issues/4763)
([ea266e7](ea266e7326))
* **snacks:** explicitely enable snakcs plugins
([c0b623c](c0b623c332))


### Performance Improvements

* **treesitter:** better foldtext and foldexpr
([1d7b9a1](1d7b9a1a61))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-14 23:55:29 +01:00
c0b623c332 fix(snacks): explicitely enable snakcs plugins 2024-11-14 23:53:03 +01:00
deb9fd85b1 fix(lsp): wrap signature_help (#4791)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

Related to 7616816.
Without wrap `lsp_doc_border` does not work

## 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.
2024-11-14 20:32:52 +01:00
86b2c23e2a chore(build): auto-generate docs 2024-11-14 14:54:39 +00:00
e50b43544f fix(lualine): dynamically fetch the color used in lualine (#4788)
## Description

The color used in lualine was previously static and did not update
dynamically when a new colorscheme was applied. This resulted in
inconsistencies between the theme and the lualine colors, as the 'local'
color table returned the highlight color defined during initialization.

This pull request resolves the issue by ensuring that the lualine colors
are always in sync with the current colorscheme. It achieves this by
using `LazyVim.ui.fg(HIGHLIGHT)` to dynamically fetch the appropriate
highlight colors, making the lualine colors responsive to colorscheme
changes.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

**Before**


![image](https://github.com/user-attachments/assets/6b78483b-4a64-4ec3-a902-a0d1ed10a992)

**After**


![image](https://github.com/user-attachments/assets/3f73ec26-cbf1-4ff7-873f-6c7b2c13c481)

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-14 15:53:27 +01:00
3ac62a4364 refactor(ui): cleanup fg/color 2024-11-13 21:14:29 +01:00
1d7b9a1a61 perf(treesitter): better foldtext and foldexpr 2024-11-13 21:11:32 +01:00
0819f9396e fix(fzf): decouple defaults from opts to easy switch profiles (#4190)
## Description
This decouples `defaults` from `opts`, so that if users switch to
another profile they can take advantage of
the profile's default settings and prompts.

I use `default-title` either way. I just stumbled upon this when I tried
the rest profiles and thought maybe there
would be users who would prefer to have the default prompts if they
chose another profile.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
No
<!--
  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>
2024-11-13 19:20:48 +01:00
5e485d39b4 fix(dial.nvim): added boolean and logical toggles to default group. Fixes #4515 2024-11-13 19:00:07 +01:00
a7eca05609 feat(copilot): added support for blink.cmp source 2024-11-13 18:28:58 +01:00
c1e8e3c80d feat(extras): add supermaven (#3491)
Add fast copilot alternative

---------

Co-authored-by: Iordanis Petkakis <12776461+dpetka2001@users.noreply.github.com>
Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-11-13 17:49:47 +01:00
b98b048ec6 chore(build): auto-generate docs 2024-11-13 16:22:02 +00:00
5df382765b refactor(lualine): status component 2024-11-13 17:20:50 +01:00
ea266e7326 fix(lualine): normalize paths before calculating pretty path. Fixes #4763 2024-11-11 15:44:08 +01:00
0137a110c1 chore(main): release 13.2.0 (#4745)
🤖 I have created a release *beep* *boop*
---


##
[13.2.0](https://github.com/LazyVim/LazyVim/compare/v13.1.0...v13.2.0)
(2024-11-11)


### Features

* **ai:** better completion/suggestions of AI engines
([#4752](https://github.com/LazyVim/LazyVim/issues/4752))
([fbf881f](fbf881f80b))
* **ai:** move ai related extras from `coding` to `ai`
([#4751](https://github.com/LazyVim/LazyVim/issues/4751))
([86904d2](86904d2fb1))
* **keymaps:** leader-bo to close other buffers
([24665fc](24665fc736))
* **rest:** add more keymaps to util.rest
([#4467](https://github.com/LazyVim/LazyVim/issues/4467))
([c22db72](c22db72435))


### Bug Fixes

* **extras:** fix alpha-nvim non-string keycodes
([#4735](https://github.com/LazyVim/LazyVim/issues/4735))
([9c9e650](9c9e650530))
* **snacks:** allow overriding `statuscolumn` through `options.lua`
([17a1b84](17a1b846f0))
* **vscode:** added snacks.nvim to allowed plugins for vscode. Fixes
[#4757](https://github.com/LazyVim/LazyVim/issues/4757)
([06071dd](06071dd452))


### Performance Improvements

* **ui:** only enable treesitter folds if the buffer has treesitter
highlighting
([b9dae57](b9dae57961))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-11 11:09:35 +01:00
fbf881f80b feat(ai): better completion/suggestions of AI engines (#4752)
## Description

The whole completion / snippets / AI is very tricky:
- multiple snippet engines
- native snippets on > 0.11 set their own keymaps, but not on 0.10
- multiple completion engines, like `nvim-cmp` and `blink.cmp`
- multiple ai completion engines that have a different API
- user's preference of showing ai suggestions as completion or not
- none of the ai completion engines currently set undo points, which is
bad

Solution:
- [x] added `LazyVim.cmp.actions`, where snippet engines and ai engines
can register their action.
- [x] an action returns `true` if it succeeded, or `false|nil` otherwise
- [x] in a completion engine, we then try running multiple actions and
use the fallback if needed
- [x] so `<tab>` runs `{"snippet_forward", "ai_accept", "fallback"}`
- [x] added `vim.g.ai_cmp`. When `true` we try to integrate the AI
source in the completion engine.
- [x] when `false`, `<tab>` should be used to insert the AI suggestion
- [x] when `false`, the completion engine's ghost text is disabled
- [x] luasnip support for blink (only works with blink `main`)
- [x] create undo points when accepting AI suggestions 

## Test Matrix

| completion   | snippets     | ai          | ai_cmp | tested? |
|--------------|--------------|-------------|--------|---------|
| nvim-cmp     | native       | copilot     | true   |       |
| nvim-cmp     | native       | copilot     | false  |       |
| nvim-cmp     | native       | codeium     | true   |       |
| nvim-cmp     | native       | codeium     | false  |       |
| nvim-cmp     | luasnip      | copilot     | true   |       |
| nvim-cmp     | luasnip      | copilot     | false  |       |
| nvim-cmp     | luasnip      | codeium     | true   |       |
| nvim-cmp     | luasnip      | codeium     | false  |       |
| blink.cmp    | native       | copilot     | true   |       |
| blink.cmp    | native       | copilot     | false  |       |
| blink.cmp    | native       | codeium     | true   |       |
| blink.cmp    | native       | codeium     | false  |       |
| blink.cmp    | luasnip      | copilot     | true   |       |
| blink.cmp    | luasnip      | copilot     | false  |       |
| blink.cmp    | luasnip      | codeium     | true   |       |
| blink.cmp    | luasnip      | codeium     | false  |       |


## Related Issue(s)

- [ ] Closes #4702

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [ ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-11 10:50:57 +01:00
c22db72435 feat(rest): add more keymaps to util.rest (#4467)
## Description

Add keymaps util.rest extra

## Related Issue(s)

n/a


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

---------

Co-authored-by: janbua <janbua@apetito.com>
Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-11-11 09:44:11 +01:00
06071dd452 fix(vscode): added snacks.nvim to allowed plugins for vscode. Fixes #4757 2024-11-11 09:41:45 +01:00
dcab30f242 chore(build): auto-generate docs 2024-11-11 08:38:55 +00:00
17a1b846f0 fix(snacks): allow overriding statuscolumn through options.lua 2024-11-11 09:37:47 +01:00
86904d2fb1 feat(ai): move ai related extras from coding to ai (#4751)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## 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

- [ ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-10 11:27:21 +01:00
309d189448 chore(build): auto-generate docs 2024-11-10 07:19:09 +00:00
b9dae57961 perf(ui): only enable treesitter folds if the buffer has treesitter highlighting 2024-11-09 23:33:05 +01:00
24665fc736 feat(keymaps): leader-bo to close other buffers 2024-11-09 16:13:11 +01:00
9c9e650530 fix(extras): fix alpha-nvim non-string keycodes (#4735)
## Description

The `dashboard.button` function provided by alpha-nvim expects a string
keybind, not a function:


https://github.com/goolord/alpha-nvim/blob/main/lua/alpha/themes/dashboard.lua#L63

## Related Issue(s)

Fixes https://github.com/LazyVim/LazyVim/issues/3728.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-09 15:57:48 +01:00
f57944f926 chore(main): release 13.1.0 (#4733)
🤖 I have created a release *beep* *boop*
---


##
[13.1.0](https://github.com/LazyVim/LazyVim/compare/v13.0.0...v13.1.0)
(2024-11-09)


### Features

* **terraform:** add formatter for packer files
([#4591](https://github.com/LazyVim/LazyVim/issues/4591))
([4876d11](4876d1137d))


### Bug Fixes

* **extras:** lazy-load telescope-terraform plugins
([#4667](https://github.com/LazyVim/LazyVim/issues/4667))
([94b4219](94b4219327))
* **options:** make sure spelling works in regular text files
([548fddd](548fddd1d5))
* **snacks:** noice now honors `Snacks.config.notifier.enabled = false`
([220148f](220148f47f))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-09 15:51:45 +01:00
5b66db294f chore(build): auto-generate docs 2024-11-09 14:50:33 +00:00
220148f47f fix(snacks): noice now honors Snacks.config.notifier.enabled = false 2024-11-09 15:49:40 +01:00
4876d1137d feat(terraform): add formatter for packer files (#4591)
## Description

Adds a formatter for Packer configuration files (`ft=hcl`), a file type
already partially supported by the `lang.terraform` extra.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 21:14:22 +01:00
EJ
94b4219327 fix(extras): lazy-load telescope-terraform plugins (#4667)
## Description

In the current terraform extra, both
`cappyzawa/telescope-terraform.nvim` and
`ANGkeith/telescope-terraform-doc.nvim` are dependencies of
`telescope.nvim`.
This should be reversed so that the telescope extensions only load when
needed
(I added a `ft` trigger which I think makes the most sense), and not as
a
dependency of `telescope.nvim`.

## Related Issue(s)

No related issues, just fixed this when the loading time of
`telescope-terraform-doc.nvim` in-particular was annoying (+~30ms
startup).

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 21:08:21 +01:00
548fddd1d5 fix(options): make sure spelling works in regular text files 2024-11-08 21:05:30 +01:00
5efb88f44a chore(main): release 13.0.0 (#4723)
🤖 I have created a release *beep* *boop*
---


##
[13.0.0](https://github.com/LazyVim/LazyVim/compare/v12.44.1...v13.0.0)
(2024-11-08)


### ⚠ BREAKING CHANGES

* **core:** move a bunch of LazyVim features to snacks.nvim
([#4706](https://github.com/LazyVim/LazyVim/issues/4706))

### Features

* **core:** move a bunch of LazyVim features to snacks.nvim
([#4706](https://github.com/LazyVim/LazyVim/issues/4706))
([2f46974](2f4697443c))
* **elixir:** add support for livebook files (`*.livemd`)
([#4184](https://github.com/LazyVim/LazyVim/issues/4184))
([2fcd4cd](2fcd4cdc5f))
* **eslint:** add option to disable eslint auto format
([#4225](https://github.com/LazyVim/LazyVim/issues/4225))
([2d2e425](2d2e425d25))
* **extras.nushell:** update to upstream treesitter
([#4715](https://github.com/LazyVim/LazyVim/issues/4715))
([37cc039](37cc03948d))
* **extras:** lang/zig
([#4437](https://github.com/LazyVim/LazyVim/issues/4437))
([4379faf](4379fafc7b))
* **extras:** rego language support
([#4297](https://github.com/LazyVim/LazyVim/issues/4297))
([cf86484](cf86484797))
* **keymaps:** only add lazygit keymaps when available. Closes
[#4643](https://github.com/LazyVim/LazyVim/issues/4643). Closes
[#4247](https://github.com/LazyVim/LazyVim/issues/4247)
([aa53cd4](aa53cd47c4))
* **lang.angular:** configure `prettier` as formatter for `angular`
templates ([#4345](https://github.com/LazyVim/LazyVim/issues/4345))
([2d6687c](2d6687c646))
* **scala:** add key for worksheet hover
([#3853](https://github.com/LazyVim/LazyVim/issues/3853))
([859646f](859646f628))
* **toggle:** add illuminate toggle for which-key
([#4708](https://github.com/LazyVim/LazyVim/issues/4708))
([67ba582](67ba58215b))


### Bug Fixes

* **blink:** remove `draw="reversed"` for now till new release
([b841a1d](b841a1dfc3))
* **copilot-chat:** setup cmp conditionally
([#4716](https://github.com/LazyVim/LazyVim/issues/4716))
([a86c252](a86c25286b))
* **dap:** use dap's splitstr when running with args. Closes
[#4387](https://github.com/LazyVim/LazyVim/issues/4387)
([776994a](776994a207))
* **dial:** follow comment explanation for integers
([#4658](https://github.com/LazyVim/LazyVim/issues/4658))
([c879b39](c879b397c7))
* **extras:** make kulala keys only for http files
([#4574](https://github.com/LazyVim/LazyVim/issues/4574))
([b0ced33](b0ced339a8))
* **extras:** use the correct naming when setting up eruby formatter
([#4625](https://github.com/LazyVim/LazyVim/issues/4625))
([8534af4](8534af4a79))
* **lang/r:** make keymaps in which-key menu available in visual mode
([#4565](https://github.com/LazyVim/LazyVim/issues/4565))
([ee2ec7e](ee2ec7e474))
* **lang/ruby:** do not enable Rubocop as LSP if Solargraph is used
([#4566](https://github.com/LazyVim/LazyVim/issues/4566))
([fd361d0](fd361d07a2))
* **lsp:** wrap hover and signature_help
([7616816](76168166e5))
* **lualine:** apply highlight groups correctly to truncated
pretty_paths ([#4379](https://github.com/LazyVim/LazyVim/issues/4379))
([1d4157e](1d4157e681))
* **lualine:** make sure path is in root before substituting
([67b216c](67b216c973))
* **navic:** use the same background color as lualine section_c
([#4231](https://github.com/LazyVim/LazyVim/issues/4231))
([64b0f0b](64b0f0b71d))
* **neotest:** disambiguous key map descriptions
([#4374](https://github.com/LazyVim/LazyVim/issues/4374))
([dfde914](dfde9148ef))
* **options:** disable default ruler
([#4731](https://github.com/LazyVim/LazyVim/issues/4731))
([da3058a](da3058a72d))
* **options:** removed deprecated options
([1e975be](1e975be7a5))
* **prettier:** keep existing formatters_by_ft
([#4719](https://github.com/LazyVim/LazyVim/issues/4719))
([4ff3606](4ff36062dd))
* **project.nvim:** correctly delete projects
([#4314](https://github.com/LazyVim/LazyVim/issues/4314))
([c097355](c09735594a))
* **snacks:** dont add `snacks_notif` to close_with_q
([e6f612f](e6f612f1cc))
* **snippet:** don't set navigation mappings in nightly
([#4375](https://github.com/LazyVim/LazyVim/issues/4375))
([1552791](15527910c3))
* **telescope:** buffers to start at final item
([#4189](https://github.com/LazyVim/LazyVim/issues/4189))
([f78bc3b](f78bc3b858))
* **telescope:** check for gmake if needed
([0bc09d8](0bc09d8206))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-08 17:18:00 +01:00
da3058a72d fix(options): disable default ruler (#4731)
## Description

The ruler option causes numbers to be briefly shown on the dashboard
while LazyVim is loading. This MR disables the ruler.


## Screenshots
<img width="1086" alt="image"
src="https://github.com/user-attachments/assets/debd9e9b-bfd2-485e-be51-d1b7a59c3729">


<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 17:10:53 +01:00
76168166e5 fix(lsp): wrap hover and signature_help 2024-11-08 16:55:40 +01:00
2fcd4cdc5f feat(elixir): add support for livebook files (*.livemd) (#4184)
Livebook is a subset of Markdown, so we can safely use markdown's
treesitter for it.

Co-authored-by: Iordanis Petkakis <dpetka2001@users.noreply.github.com>
2024-11-08 14:10:11 +01:00
859646f628 feat(scala): add key for worksheet hover (#3853)
## What is this PR for?

Worksheet hovering is a useful feature provided by `metals` to see not
just the end result, but also the entire output of a function call, as
can be seen here for example:
https://youtu.be/Jv9B1crzpWM?t=16m20s

Having a default key assigned not only makes it more convenient, but
also increases discoverability.

(I was also contemplating `<leader>mK` as the mapping to be in line with
`K` for regular hover, but I wasn't convinced that the consistency is
worth the extra keypress.)

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 14:09:17 +01:00
64b0f0b71d fix(navic): use the same background color as lualine section_c (#4231)
## Description

Prior to this, when using the navic Extra, the symbol breadcrumbs shown
in lualine section_c had a background color different from the
background of lualine_c, causing it to standout and not blend in with
some colorschemes.

There were ways around this problem, but hose involved overriding a lot
of highlights. See https://github.com/LazyVim/LazyVim/issues/328

This change uses the new (as of April 2023) lualine component built in
to SmiteshP/nvim-navic, which has a `color_correction` option to fix the
problem described above. This built-in component replaces the manual
method of calling `require("nvim-navic").is_available()` and
`require("nvim-navic").get_location()`.

*
711e9f117a
*
bf587250f8

With `color_correction` set to "static" or "dynamic", navic uses the
lualine section's background color when building the breadcrumbs text.

*
bf587250f8/doc/navic.txt (L83-L88)

I chose to set color_correction to "dynamic" to provide the best user
experience as that will update the background any time the lualine
section's background changes (e.g. when switching modes).

## Related Issue(s)

* Fixes #328

## Screenshots

Before this fix, the breadcrumb's background did not match lualine
section_c's:

![before](https://github.com/user-attachments/assets/b30e9844-5aac-4ec8-96fd-a5243de8cded)

After this fix, the breadcrumb's background does match:

![after](https://github.com/user-attachments/assets/63945c48-2edc-4aea-8144-ae0bff1ed952)

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 14:08:43 +01:00
f78bc3b858 fix(telescope): buffers to start at final item (#4189)
## Description

Currently hitting `<leader>fb` triggers the telescope buffers command
but because we're passing the `sort_lastused=true` flag the index starts
at the second item.

This happens because of this line of code in telescope.nvim:


https://github.com/nvim-telescope/telescope.nvim/blob/master/lua/telescope/builtin/__internal.lua#L941-L943

This makes it annoying to actually use the tool to find buffers because
you have to first type your query then exit insert mode, then scroll one
item down, and then hitting enter:



https://github.com/user-attachments/assets/4126d017-df4b-48dc-b6d4-f7d9b8f491ff

When removing that flag it makes the function much more usable in terms
of UX since now you can just write your query and hit enter to go
straight to it.

## 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.
2024-11-08 14:06:39 +01:00
2d2e425d25 feat(eslint): add option to disable eslint auto format (#4225)
## Description

This adds an option to disable eslint's autoformatting. The reasons for
not wanting an auto format by eslint are:
1. It is generally not recommended to use a linter as a formatter as
highlighted by
https://typescript-eslint.io/users/what-about-formatting/#:~:text=We%20recommend%20against%20using%20ESLint,dprint%2C%20or%20an%20equivalent%20instead
2. A personal preference not to have a linter change my code which I'm
sure other people share.
3. As highlighted in the link above, eslint auto format can be quite
slow.

I would even argue that this should be the default, but I've left it as
is in order not to break anyone's config or ruffle anyone's feathers.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 14:05:00 +01:00
fd361d07a2 fix(lang/ruby): do not enable Rubocop as LSP if Solargraph is used (#4566)
## Description

Solargraph already delegates some diagnostics to Rubocop by itself if it
is installed on your system. However, if Rubocop is also enabled as an
LSP while you're using Solargraph, then all Rubocop diagnostics are
going to be duplicated and shown twice. Once from Solargraph after it
calls Rubocop, and again by Rubocop separately running as an LSP.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 13:56:44 +01:00
8534af4a79 fix(extras): use the correct naming when setting up eruby formatter (#4625)
## Description

Eruby files (.*.erb) are not formatted because the formatter name is
incorrect. This PR fixes it.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 13:56:05 +01:00
2d6687c646 feat(lang.angular): configure prettier as formatter for angular templates (#4345)
## Description

Angular templates didn't have a configured formatter.
This PR configures prettier as a default formatter for angular
templates.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 13:45:53 +01:00
cf86484797 feat(extras): rego language support (#4297)
It took a while, but finally we can work with
[OPA](https://www.openpolicyagent.org/) like a BOSS in neovim.

Linking some PR-s that had to land in the past couple of months to make
this config as
simple as it is now:

- treesitter commentstring support in
<https://github.com/JoosepAlviste/nvim-ts-context-commentstring/pull/108>
- regols support in nvim-lspconfig:
<https://github.com/neovim/nvim-lspconfig/pull/2721>
- regols support in mason-registry:
<https://github.com/mason-org/mason-registry/pull/4896>
- regols support in mason-lspconfig:
<https://github.com/williamboman/mason-lspconfig.nvim/pull/403>
- regal support in nvim-lspconfig:
<https://github.com/neovim/nvim-lspconfig/pull/3071>
- regal support in mason-registry:
<https://github.com/mason-org/mason-registry/pull/5717>
- regal support in mason-lspconfig:
<https://github.com/williamboman/mason-lspconfig.nvim/pull/426>

## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## 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.

Signed-off-by: Zoltán Reegn <zoltan.reegn@gmail.com>
2024-11-08 13:44:59 +01:00
c09735594a fix(project.nvim): correctly delete projects (#4314)
## Description
Unfortunately, the upstream Github repo hasn't been active for over a
year. This overwrites the `history.delete_project` function to correctly
be able to delete projects. Because of `ipairs` being used, when you
delete the first key from the table the `for` loop iteration will just
stop, since there will be a gap between the available indices.
> will iterate over the pairs (`1,t[1]`), (`2,t[2]`), ..., up to the
first integer key absent from the table.

There's also a
[PR](https://github.com/ahmedkhalf/project.nvim/pull/106/files) for this
upstream, but like I mentioned the Github repo hasn't been active for
over a year.

Feel free to disregard, since this is obviously something that should be
rather fixed upstream under normal circumstances. I just created this
PR, since it's such a basic functionality with little change in
LazyVim's codebase, that I thought it might be acceptable.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
No, rather a discussion #4310
<!--
  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.
2024-11-08 13:43:11 +01:00
15527910c3 fix(snippet): don't set navigation mappings in nightly (#4375)
## Description

Since [this commit in
Neovim](https://github.com/neovim/neovim/pull/27339), snippet navigation
mappings are set by default to `<tab>` and `<s-tab>`, and hence don't
need to be redefined here. Moreover, the core implementation makes sure
that those snippet navigation mappings are active only when snippet
expansion is happening, and if other user bindings are using those keys,
they're restored when snippet navigation ends.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 13:40:25 +01:00
dfde9148ef fix(neotest): disambiguous key map descriptions (#4374)
## Description

Neotest key map descriptions were too ambiguous. This change simply adds
the plugin name to the key map descriptions, following the pattern of
other plugin related key map descriptions.

## Screenshots


![240830_09h47m20s_screenshot](https://github.com/user-attachments/assets/9c63b9f5-139d-4f9d-a6aa-4f9744c62a57)

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 13:37:09 +01:00
776994a207 fix(dap): use dap's splitstr when running with args. Closes #4387 2024-11-08 13:31:19 +01:00
ee2ec7e474 fix(lang/r): make keymaps in which-key menu available in visual mode (#4565)
## Description
`r.nvim` keymaps don't show group names in visual mode.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
No, rather discussion #4564
<!--
  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.
2024-11-08 13:26:31 +01:00
4e1fd66078 docs(dap): document continue to be used also for run (#4603)
The `dap.continue` is meant to be used also to start the program if no
debugging session is active.

The documentation states:

> `continue()` is the main entry-point for users to start debugging an
application.

With this change, it should be clearer to the user that `continue` is
the way to start a program. Otherwise, one could think to use `Run with
args` (which is misleading). At least for me, it was, until I read the
dap documentation.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 13:25:56 +01:00
b0ced339a8 fix(extras): make kulala keys only for http files (#4574)
## Description

[Kulala's](https://github.com/mistweaverco/kulala.nvim) keys are
currently globally active. This PR makes them available in .http files
only.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-08 13:25:09 +01:00
b5b3122843 chore(build): auto-generate docs 2024-11-08 08:01:42 +00:00
67ba58215b feat(toggle): add illuminate toggle for which-key (#4708)
## Description
Adds a Toggle-Shortcut to enable/disable
[Illuminate](https://github.com/RRethy/vim-illuminate)

I dont think 'leader ux' is the right shortcut here. I just took the
next free one.


![image](https://github.com/user-attachments/assets/65990e1b-f527-4691-8d2e-eee103695bff)
2024-11-08 09:00:36 +01:00
b841a1dfc3 fix(blink): remove draw="reversed" for now till new release 2024-11-07 22:52:38 +01:00
e6f612f1cc fix(snacks): dont add snacks_notif to close_with_q 2024-11-07 22:52:11 +01:00
67b216c973 fix(lualine): make sure path is in root before substituting 2024-11-07 17:01:08 +01:00
d017bb861e chore(build): auto-generate docs 2024-11-07 15:46:41 +00:00
db052ed9c0 docs(Readme): reflect that LazyVim For Ambitious Developers is complete (#4407)
## Description

LazyVim for Ambitious Developers is completely released online, with
ebooks available and print edition coming shortly. This just updates the
links to remove the "is working on" wording.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-07 16:45:39 +01:00
4379fafc7b feat(extras): lang/zig (#4437)
## Description

A fresh and minimalist take on #1750.
It only adds what is maintainable (has activity in the past year at
least).

## Related Issue(s)

Closes #1750.


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-07 16:40:06 +01:00
1d4157e681 fix(lualine): apply highlight groups correctly to truncated pretty_paths (#4379)
## Description

This is a small fix to the path truncating in
`LazyVim.lualine.pretty_path()` to make the filename highlighting
actually apply to only the filename, rather than the filename and all
path elements after the inserted ellipsis (`…`).

This keeps it consistent with the behaviour exhibited when the path
isn't truncated, and is what I think most users would expect the
behaviour to be.

## Screenshots

Before this fix:

<img width="320" alt="image"
src="https://github.com/user-attachments/assets/d708a140-2b23-457a-a296-dd411d29d268">

```
   nvim/…/nvim/lua/plugins/lazyvim/ui.lua
   └──┬──┘└──────────────┬──────────────┘
directory_hl        filename_hl
```

After this fix:

<img width="319" alt="image"
src="https://github.com/user-attachments/assets/e9d13fdd-79a8-4e3d-942a-58d0e2bb8bca">

```
nvim/…/nvim/lua/plugins/lazyvim/ui.lua
└──────────────┬───────────────┘└─┬──┘
         directory_hl        filename_hl
```

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-07 16:26:17 +01:00
aa53cd47c4 feat(keymaps): only add lazygit keymaps when available. Closes #4643. Closes #4247 2024-11-07 16:21:48 +01:00
1e975be7a5 fix(options): removed deprecated options 2024-11-07 16:19:18 +01:00
c879b397c7 fix(dial): follow comment explanation for integers (#4658)
relevant doc page:
https://github.com/monaqa/dial.nvim?tab=readme-ov-file#augend-alias

## Description

The specific augend for integers in several languages is a different one
than what the comment explaining it suggests.

Changed the augend to the one that includes negative integers like the
comment suggests.


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-07 16:16:41 +01:00
37cc03948d feat(extras.nushell): update to upstream treesitter (#4715)
## Description

Since the nushell treesitter parser is now upstream, as seen in [this
pr](https://github.com/nvim-treesitter/nvim-treesitter/pull/7267), it
updates the treesitter config of this extra

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

Co-authored-by: Conarius <Conarius+34580743@users.noreply.github.com>
2024-11-07 16:11:59 +01:00
4ff36062dd fix(prettier): keep existing formatters_by_ft (#4719)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

This change makes it possible to configure other formatters for
filetypes supported by the prettier extra, for instance

```js
return {
  {
    "stevearc/conform.nvim",
    opts = {
      formatters_by_ft = {
        css = { "stylelint" },
      },
    },
  },
}
```

Currently the prettier extra overwrites any existing `formatters_by_ft`
for the filetypes it supports. I've changed it to use `table.insert`
[like the sql extra
does](75750be1c0/lua/lazyvim/plugins/extras/lang/sql.lua (L148-L149)).

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

None that I know of

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

N/A

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-07 16:11:36 +01:00
0bc09d8206 fix(telescope): check for gmake if needed 2024-11-07 16:10:45 +01:00
a86c25286b fix(copilot-chat): setup cmp conditionally (#4716)
## Description

Check for cmp before setting up copilot chat.

## Related Issue(s)

For https://github.com/LazyVim/LazyVim/issues/4702

I would like to set up the cmp compatability later if possible, but this
is a quick patch to allow copilot chat to work without cmp (for now).

## 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>
2024-11-07 16:05:32 +01:00
81a4f3f690 chore(build): auto-generate docs 2024-11-07 14:55:42 +00:00
2f4697443c feat(core)!: move a bunch of LazyVim features to snacks.nvim (#4706)
## Description

LazyVim comes with a bunch of smaller QoL plugin like features, but it's
not easy for non LazyVim users to use them.

That's why I started working on
[snacks.nvim](https://github.com/folke/snacks.nvim), a collection of
small QoL plugins for Neovim.

Snacks also includes a bunch of new improvements to these features.

This PR fully integrates with snacks.

## Todo

- [ ] add proper deprecations where needed
- [ ] create snacks docs
- [ ] document all the new improvements relevant to LazyVim users

## Closes

- [ ] #4492 
- [ ] #4333
- [ ] #4687

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

## Checklist

- [ ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-11-07 15:54:47 +01:00
75750be1c0 chore(build): auto-generate docs 2024-11-04 11:56:40 +00:00
73f14943ba chore(main): release 12.44.1 (#4694)
🤖 I have created a release *beep* *boop*
---


##
[12.44.1](https://github.com/LazyVim/LazyVim/compare/v12.44.0...v12.44.1)
(2024-11-03)


### Bug Fixes

* **blink:** use release version
([7ebed53](7ebed5349d))
* **copilot:** properly process tab with copilot and blink. Fixes
[#4692](https://github.com/LazyVim/LazyVim/issues/4692)
([fa37396](fa3739678a))
* **java:** jdtls run with args
([#4689](https://github.com/LazyVim/LazyVim/issues/4689))
([0403e80](0403e80a8e))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-04 12:55:25 +01:00
7ebed5349d fix(blink): use release version 2024-11-03 15:26:45 +01:00
fa3739678a fix(copilot): properly process tab with copilot and blink. Fixes #4692 2024-11-03 12:53:10 +01:00
f4d78ac0de chore(build): auto-generate docs 2024-11-03 11:49:08 +00:00
0403e80a8e fix(java): jdtls run with args (#4689)
## Description

Makes run with args work for jdtls

## Related Issue(s)
- Closes #4686
- Closes #4673
2024-11-03 12:48:11 +01:00
29dab35619 chore(main): release 12.44.0 (#4635)
🤖 I have created a release *beep* *boop*
---


##
[12.44.0](https://github.com/LazyVim/LazyVim/compare/v12.43.0...v12.44.0)
(2024-11-02)


### Features

* **blink:** use vim.o.pumblend as winblend option for autocomplete menu
in blink
([28da1eb](28da1eb073))
* **extras:** blink
([#4680](https://github.com/LazyVim/LazyVim/issues/4680))
([ad52bf9](ad52bf91bc))
* **extras:** enable crates.nvim in-process lsp server
([#4684](https://github.com/LazyVim/LazyVim/issues/4684))
([db8895b](db8895b518))


### Bug Fixes

* **autocmds:** `vim.highlight` is deprecated
([a7b4c43](a7b4c4391b))
* **autocmds:** change mapping for `lazyvim_close_with_q`
([#4638](https://github.com/LazyVim/LazyVim/issues/4638))
([5f432d9](5f432d997e))
* **autocmds:** close window and force delete buf on q. See
[#4638](https://github.com/LazyVim/LazyVim/issues/4638)
([cb40a09](cb40a09538))
* **autocmds:** force close buffers with q. See
[#4638](https://github.com/LazyVim/LazyVim/issues/4638)
([0eb4009](0eb400908d))
* **blink:** explicetely set version=false for now
([ec616a3](ec616a3cec))
* **catppuccin:** fix bufferline integration when no colorscheme is set.
Closes [#4641](https://github.com/LazyVim/LazyVim/issues/4641)
([6570a14](6570a141c0))
* **copilot:** create undo point before accepting copilot suggestion
when using blink
([6e1d099](6e1d0994d9))
* **dap:** remove explicit `load_launchjs` call
([#4634](https://github.com/LazyVim/LazyVim/issues/4634))
([2f6c1f6](2f6c1f6083))
* **lazygit:** file history when cwd is outside the repo
([#4666](https://github.com/LazyVim/LazyVim/issues/4666))
([4ee6be4](4ee6be4499))
* **rust:** disable rust_analyzer in the rust extra. Fixes
[#4685](https://github.com/LazyVim/LazyVim/issues/4685)
([1d3d64f](1d3d64fd1a))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-11-03 00:15:26 +01:00
a7b4c4391b fix(autocmds): vim.highlight is deprecated 2024-11-02 18:51:04 +01:00
ec616a3cec fix(blink): explicetely set version=false for now 2024-11-02 18:12:31 +01:00
28da1eb073 feat(blink): use vim.o.pumblend as winblend option for autocomplete menu in blink 2024-11-02 17:43:11 +01:00
6e1d0994d9 fix(copilot): create undo point before accepting copilot suggestion when using blink 2024-11-02 17:41:38 +01:00
db8895b518 feat(extras): enable crates.nvim in-process lsp server (#4684)
## Description

Rather than manually handling hover and completions through nvim-cmp and
nvim-lspconfig, enable the crates.nvim in-process lsp server. This also
allows crates.nvim to provide code actions.

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)

This change also removes the direct dependency on nvim-cmp, which should
help with #4680

<!--
  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>
2024-11-02 10:02:23 +01:00
ad52bf91bc feat(extras): blink (#4680)
## Description

Extra to use [blink.cmp](https://github.com/Saghen/blink.cmp) instead of
**nvim-cmp**.

## Todo

- [x] tokyonight suport
- [x] basic integration
- [ ] check / update all cmp sources
- [ ] copilot and others integration 
- [x] native lazydev source

## Limitations

There's no copilot source, so instead when enabling both blink and
copilot:
- blink ghost text is disabled
- copilot suggestions are enabled
- use `<tab>` to navigate snippets and accept copilot completions 

## Related Issue(s)

- https://github.com/LazyVim/LazyVim/discussions/4679
2024-11-02 09:54:55 +01:00
a66b44a9fe chore(build): auto-generate docs 2024-11-02 08:48:22 +00:00
1d3d64fd1a fix(rust): disable rust_analyzer in the rust extra. Fixes #4685 2024-11-02 09:47:17 +01:00
f11890bf99 chore(build): auto-generate docs 2024-11-01 21:48:00 +00:00
4ee6be4499 fix(lazygit): file history when cwd is outside the repo (#4666)
## Description

When using `<leader>gf` Lazygit is launched in the current directory
rather than the root directory.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## 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.
2024-11-01 22:47:03 +01:00
cb40a09538 fix(autocmds): close window and force delete buf on q. See #4638 2024-10-24 17:18:01 +02:00
0eb400908d fix(autocmds): force close buffers with q. See #4638 2024-10-24 09:25:03 +02:00
5f432d997e fix(autocmds): change mapping for lazyvim_close_with_q (#4638)
## Description
Currently `checkhealth` buffers stay visible on `bufferline` when you
close them with `q`. Use `:bd` instead to delete the buffer from
bufferlist. `vim.schedule` is needed because `LspInfo` adds its own
mapping to close the window (see
[here](edd9591199/lua/lspconfig/health.lua (L328))),
so we need to overwrite it.

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
None
<!--
  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.
2024-10-24 08:30:17 +02:00
944d214c26 chore(build): auto-generate docs 2024-10-24 05:59:11 +00:00
6570a141c0 fix(catppuccin): fix bufferline integration when no colorscheme is set. Closes #4641 2024-10-24 07:58:14 +02:00
2f6c1f6083 fix(dap): remove explicit load_launchjs call (#4634)
## Description

The explicit call to `load_launchjs` is unnecessary, since after
https://github.com/mfussenegger/nvim-dap/pull/1237 `.vscode/launch.json`
files are loaded automatically.

## Related Issue(s)
Fixes #4432


## 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.
2024-10-23 16:03:06 +02:00
7c7c196a78 chore(main): release 12.43.0 (#4630)
🤖 I have created a release *beep* *boop*
---


##
[12.43.0](https://github.com/LazyVim/LazyVim/compare/v12.42.0...v12.43.0)
(2024-10-23)


### Features

* **catppuccin:** bufferline integration. Closes
[#4583](https://github.com/LazyVim/LazyVim/issues/4583). Closes
[#4581](https://github.com/LazyVim/LazyVim/issues/4581)
([917c685](917c685c1f))
* **extras:** expose `prios` to users for customization
([#4587](https://github.com/LazyVim/LazyVim/issues/4587))
([e46cb62](e46cb62a17))
* **keymaps:** allow `v:count1` when moving lines
([#4618](https://github.com/LazyVim/LazyVim/issues/4618))
([b4eb4e1](b4eb4e1f4a))


### Bug Fixes

* **folds:** enable folds when treesitter available. Fixes
[#4563](https://github.com/LazyVim/LazyVim/issues/4563)
([fe7003d](fe7003de50))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-23 11:55:48 +02:00
0f5fa439e5 refactor(cmp): add optional where necessary (#4557)
## Description
Makes it easier to disable it for users who want to try other completion
engines, without it being pulled back by some Extra.

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
None
<!--
  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.
2024-10-23 11:44:27 +02:00
b4eb4e1f4a feat(keymaps): allow v:count1 when moving lines (#4618)
## Description
Allow user to use `v:count1` when moving lines
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Closes #4615.
<!--
  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.
2024-10-23 11:40:31 +02:00
fe7003de50 fix(folds): enable folds when treesitter available. Fixes #4563 2024-10-23 11:32:21 +02:00
e46cb62a17 feat(extras): expose prios to users for customization (#4587)
## Description
Offer to users capability to customize priorities of the Extras.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Closes #4584
<!--
  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.
2024-10-23 11:26:14 +02:00
27f53eaa1e chore(build): auto-generate docs 2024-10-23 09:24:14 +00:00
917c685c1f feat(catppuccin): bufferline integration. Closes #4583. Closes #4581 2024-10-23 11:23:09 +02:00
13a4a84e34 chore(main): release 12.42.0 (#4535)
🤖 I have created a release *beep* *boop*
---


##
[12.42.0](https://github.com/LazyVim/LazyVim/compare/v12.41.0...v12.42.0)
(2024-10-04)


### Features

* **root:** provide `vim.g.root_lsp_ignore` to ignore LSP servers
([#4332](https://github.com/LazyVim/LazyVim/issues/4332))
([90a9231](90a92312ae))


### Bug Fixes

* **gitsigns:** change name of filetype blame
([#4243](https://github.com/LazyVim/LazyVim/issues/4243))
([3e257fd](3e257fdb88))
* **neotest:** properly initialize adapter with call table. Fixes
[#4538](https://github.com/LazyVim/LazyVim/issues/4538)
([327e829](327e829c15))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-05 00:01:48 +02:00
c49b788319 chore(build): auto-generate docs 2024-10-04 21:51:19 +00:00
327e829c15 fix(neotest): properly initialize adapter with call table. Fixes #4538 2024-10-04 23:50:15 +02:00
90a92312ae feat(root): provide vim.g.root_lsp_ignore to ignore LSP servers (#4332)
## Description
This provides `vim.g.root_lsp_ignore` for users to customize which LSP
servers should be taken into account when evaluating the LSP `root_dir`.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Closes #4330
<!--
  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.
2024-10-03 15:55:25 +02:00
3b8f6554f4 chore(build): auto-generate docs 2024-10-03 13:48:11 +00:00
d2bd3114c0 style(typo): vimtext -> vimtex (#4530)
Typo: `vimtext` -> `vimtex`
2024-10-03 15:47:41 +02:00
3e257fdb88 fix(gitsigns): change name of filetype blame (#4243)
## Description
There was a change in `gitsigns` filetype name for blame.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
No
<!--
  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.
2024-10-03 15:47:09 +02:00
d5a4ced75a chore(main): release 12.41.0 (#4526)
🤖 I have created a release *beep* *boop*
---


##
[12.41.0](https://github.com/LazyVim/LazyVim/compare/v12.40.0...v12.41.0)
(2024-10-02)


### Features

* **rust:** update rustaceanvim
([#4477](https://github.com/LazyVim/LazyVim/issues/4477))
([04515b1](04515b1399))
* **toggle:** add more `M.wk` fields for better user customization
([#4521](https://github.com/LazyVim/LazyVim/issues/4521))
([57c0c0b](57c0c0bc9f))


### Bug Fixes

* **extras:** migrate away from deprecated `get_target_window()` in
mini-files ([#4479](https://github.com/LazyVim/LazyVim/issues/4479))
([b110550](b110550393))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-02 11:29:17 +02:00
04515b1399 feat(rust): update rustaceanvim (#4477)
The recommended version of rustaceanvim has changed to 5.x, which brings
in a lot of improvements.

## Description

Version 5.x of rustaceanvim has a lot of improvements over 4.x, and is
the recommended version according to its maintainer.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-10-02 10:41:44 +02:00
b110550393 fix(extras): migrate away from deprecated get_target_window() in mini-files (#4479)
## Description

This method is deprecated in the most recent version of mini-files:
a3a9cce821/lua/mini/files.lua (L1060-L1068),
which causes a warning message to be displayed every time the
`<leader>wv` and similar commands are used from the mini file browser.

I've tested this change locally and it gets rid of the warning message.

## Screenshots
Warning message without this fix:
<img width="1355" alt="image"
src="https://github.com/user-attachments/assets/cf5dc674-6054-4cb2-9e9b-3b0bb03dd5ca">

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-10-02 10:23:26 +02:00
57c0c0bc9f feat(toggle): add more M.wk fields for better user customization (#4521)
## Description
Add to `M.wk` fields for `icon`, `color_enabled` and `color_disabled`
for more granual user customization.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
No, rather a discussion #4512
<!--
  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.
2024-10-02 10:22:08 +02:00
dee5e18cf6 chore(main): release 12.40.0 (#4522)
🤖 I have created a release *beep* *boop*
---


##
[12.40.0](https://github.com/LazyVim/LazyVim/compare/v12.39.0...v12.40.0)
(2024-10-02)


### Features

* **lang:** add ts_ls to lsp config
([#4406](https://github.com/LazyVim/LazyVim/issues/4406))
([34f0e56](34f0e568d4))


### Bug Fixes

* **extras:** rename `lspconfig.server_configurations` to
`lspconfig.configs`
([#4518](https://github.com/LazyVim/LazyVim/issues/4518))
([7432574](74325743e7))
* **lsp:** backward compat with lspconfig refactor. Fixes
[#4525](https://github.com/LazyVim/LazyVim/issues/4525). See
[#4518](https://github.com/LazyVim/LazyVim/issues/4518)
([6e40252](6e4025229d))
* **render-markdown:** remove redundant `opts.file_types`
([#4506](https://github.com/LazyVim/LazyVim/issues/4506))
([9b17672](9b1767205c))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-10-02 10:19:57 +02:00
6e4025229d fix(lsp): backward compat with lspconfig refactor. Fixes #4525. See #4518 2024-10-02 10:18:21 +02:00
34f0e568d4 feat(lang): add ts_ls to lsp config (#4406)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

In this [PR](https://github.com/neovim/nvim-lspconfig/pull/3232),
tsserver is renamed to ts_ls, but it hasn't been released yet.

Therefore, ts_ls is added to the LSP configuration in case the user
updates their plugins locally.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->
N/A!

## Screenshots

<!-- Add screenshots of the changes if applicable. -->
N/A!

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-10-02 09:32:17 +02:00
9b1767205c fix(render-markdown): remove redundant opts.file_types (#4506)
## Description
After
cb9a5e2412
there's no need for defining filetypes both in Lazy's `ft` and the
plugin's `opts.file_types`.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
None
<!--
  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.
2024-10-02 09:26:05 +02:00
b6ff54bb95 chore(build): auto-generate docs 2024-10-02 07:25:07 +00:00
74325743e7 fix(extras): rename lspconfig.server_configurations to lspconfig.configs (#4518)
## Description


bedb2a0df1
introduces a change to the Lua module structure for `nvim-lspconfig`
that broke `tailwindcss`. Tried to also address all the other usages of
`lspconfig.server_configurations` within the ecosystem.

## Screenshots

![mason-lspconfig
nvim](https://github.com/user-attachments/assets/bc9f80f0-3386-436f-8f86-abfcb311cec2)


## Checklist

- [X] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-10-02 09:24:02 +02:00
a1c3ec4cd4 chore(main): release 12.39.0 (#4376)
🤖 I have created a release *beep* *boop*
---


##
[12.39.0](https://github.com/LazyVim/LazyVim/compare/v12.38.2...v12.39.0)
(2024-09-18)


### Features

* **cmp:** better c-n and c-p mapping fallback. Fixes
[#4414](https://github.com/LazyVim/LazyVim/issues/4414)
([86d4f14](86d4f14bc8))
* **lazygit:** allow user to override LazyVim config with custom file
([#4367](https://github.com/LazyVim/LazyVim/issues/4367))
([41a8f3a](41a8f3a5fb))
* **persistence:** added leader-qS to select a session
([5a0122b](5a0122b619))
* **vscode:** make use of vscode builtin terminal
([#4392](https://github.com/LazyVim/LazyVim/issues/4392))
([ead5955](ead5955bef))


### Bug Fixes

* **extra:** make copilot-chat.lua fallback to the latest model
([#4411](https://github.com/LazyVim/LazyVim/issues/4411))
([ae17b32](ae17b321c7))
* **grug:** grug_far -&gt; grug.open
([#4404](https://github.com/LazyVim/LazyVim/issues/4404))
([746ea8f](746ea8f1e6))
* **markdown-preview:** unknown function `mkdp#util#install`
([#4196](https://github.com/LazyVim/LazyVim/issues/4196))
([b892861](b892861bde))
* **ocaml:** get_language_id
([#4327](https://github.com/LazyVim/LazyVim/issues/4327))
([6dcd979](6dcd9794b1))
* **omnisharp:** use Go To Definition with fzf.lua
([#4260](https://github.com/LazyVim/LazyVim/issues/4260))
([39ca76c](39ca76c960))
* **toggle:** diagnostics enable/disable. See
[#4205](https://github.com/LazyVim/LazyVim/issues/4205)
([3dbace9](3dbace941e))
* **toggle:** make `diagnostics` compatible with nvim-0.9.5
([#4205](https://github.com/LazyVim/LazyVim/issues/4205))
([c012f85](c012f85959))
* **vue:** ensure css treesitter installed
([#4308](https://github.com/LazyVim/LazyVim/issues/4308))
([627215a](627215a72b))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-09-18 20:46:29 +02:00
39ca76c960 fix(omnisharp): use Go To Definition with fzf.lua (#4260)
## Description

There was a problem with Omnisharp with fzf.lua enabled instead of
telescope. As discussed in #4258, this change makes Go To Definition
work with fzf.lua.

## Related Issue(s)

  - Fixes #4258 

## Checklist

- [x ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-09-18 08:22:58 +02:00
627215a72b fix(vue): ensure css treesitter installed (#4308)
## Description

If css treesitter is not installed(the current), <style> in vue file
will use wrong commentstring, ts-comments.nvim or
nvim-ts-context-commentstring both. so ensure it's installed.

## Related Issue(s)

explained: [in
https://github.com/JoosepAlviste/nvim-ts-context-commentstring/issues/117](https://github.com/JoosepAlviste/nvim-ts-context-commentstring/issues/117#issuecomment-2287909324)
close https://github.com/LazyVim/LazyVim/issues/4292
2024-09-18 08:22:05 +02:00
6dcd9794b1 fix(ocaml): get_language_id (#4327)
## Description
This fixes the error users get from local function `get_language_id`. 

From looking into [nvim-lspconfig
ocamllsp](https://github.com/neovim/nvim-lspconfig/blob/master/lua/lspconfig/server_configurations/ocamllsp.lua)
and other googling around, namely [tjdevries config
files](9b790b90c1/lua/custom/plugins/lsp.lua (L108-L115))
and [another
one](e31c0d61fd/nvim/after/plugin/lspconfig.lua (L67)),
it seems that we can directly set these as filetypes foregoing the
mapping via the additional local function which would also need the
[nvim-lspconfig language_id
mapping](d4814330b2/lua/lspconfig/server_configurations/ocamllsp.lua (L3-L10)).

Please bear in mind I don't do any Ocaml, so it would be great if other
users who do Ocaml could test this PR.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Closes #4326
<!--
  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.
2024-09-18 08:20:43 +02:00
86d4f14bc8 feat(cmp): better c-n and c-p mapping fallback. Fixes #4414 2024-09-18 08:20:01 +02:00
d67be9a9fb chore(build): auto-generate docs 2024-09-18 06:17:33 +00:00
ead5955bef feat(vscode): make use of vscode builtin terminal (#4392)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->
make use of vscode builtin terminal

**I don't know how to properly handle cwd so it's implemented as a
simple toggle**

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->
#4280

## Checklist

- [X] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-09-18 08:16:29 +02:00
4cb12312cf chore(build): auto-generate docs 2024-09-16 06:47:53 +00:00
746ea8f1e6 fix(grug): grug_far -> grug.open (#4404)
## Description

Just a very simple fix to use the updated method in grug to set the
options for the dependency. Just ran across the issue debuging search
and replace on my setup (was not the issue).

This is not breaking.  
## Related Issue(s)

N/A
## Screenshots
N/A

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-09-16 08:47:31 +02:00
ae17b321c7 fix(extra): make copilot-chat.lua fallback to the latest model (#4411)
## Description

CopilotChat upgraded to gpt-4o early in August
2c4d2954f9
but the LazyVim plugin is still running with opts of gpt-4. I thought
about changing model to the latest here, but I feel this means more
maintainability for an option which generally is expected to point to
the latest model, and the upstream opts of CopilotChat seem to keep up
with that already.

## Related Issue(s)
None

## Screenshots
None

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-09-16 08:46:52 +02:00
3dbace941e fix(toggle): diagnostics enable/disable. See #4205 2024-08-31 12:34:45 +02:00
c012f85959 fix(toggle): make diagnostics compatible with nvim-0.9.5 (#4205)
## Description
This makes `toggle.diagnostics` compatible with Neovim 0.9.5 (though not
sure about the metatable callables, since `set` there accepts a boolean
from `get` state).

Please make whatever changes you deem necessary or disregard as a whole
for a better approach I haven't been able to think of.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Fixes #4203
<!--
  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.
2024-08-31 09:44:52 +02:00
b892861bde fix(markdown-preview): unknown function mkdp#util#install (#4196)
## Description
This fixes the problem when checking for updates and trying to build and
the user encounters the error `unknown function mkdp#util#install`.

As per https://github.com/iamcco/markdown-preview.nvim/pull/691
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
No, rather a discussion #4194
<!--
  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.
2024-08-31 09:43:48 +02:00
5a0122b619 feat(persistence): added leader-qS to select a session 2024-08-31 09:27:14 +02:00
41a8f3a5fb feat(lazygit): allow user to override LazyVim config with custom file (#4367)
## Description
This takes into consideration an additional file, if it exists, to
extend `LG_CONFIG_FILE` environment variable, so that users can
overwrite easier default LazyVim options set for lazygit in
`lazygit-theme.yml`. It's not desirable to directly change
`lazygit-theme.yml` as the values are hardcoded and regenerated upon
colorscheme change.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Fixes #4364. Ideally, the problem about `nvim-remote` on Windows should
be fixed on lazygit's side, so this is just kind of a hotfix in the
meantime. Feel free to disregard this if not desirable.
<!--
  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.
2024-08-31 09:18:20 +02:00
393b7e4f46 chore(build): auto-generate docs 2024-08-31 07:17:40 +00:00
1d2c0a5cf4 chore(markdown): markdown.nvim was renamed to render-markdown.nvim (#4259)
As described in
aeb5cec617
2024-08-31 09:16:45 +02:00
12818a6cb4 chore(main): release 12.38.2 (#4178)
🤖 I have created a release *beep* *boop*
---


##
[12.38.2](https://github.com/LazyVim/LazyVim/compare/v12.38.1...v12.38.2)
(2024-07-25)


### Bug Fixes

* **news:** pcall diag when showing news for older Neovim versions
([94bf4f9](94bf4f9324))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-25 11:07:00 +02:00
deceafc0f9 chore(build): auto-generate docs 2024-07-25 08:56:05 +00:00
94bf4f9324 fix(news): pcall diag when showing news for older Neovim versions 2024-07-25 10:55:08 +02:00
bcbab77f0c chore(main): release 12.38.1 (#4167)
🤖 I have created a release *beep* *boop*
---


##
[12.38.1](https://github.com/LazyVim/LazyVim/compare/v12.38.0...v12.38.1)
(2024-07-24)


### Bug Fixes

* **autcmds:** added grug-far to close with q
([3282721](328272144c))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-24 18:49:45 +02:00
328272144c fix(autcmds): added grug-far to close with q 2024-07-24 18:18:00 +02:00
71b2690582 chore(main): release 12.38.0 (#4158)
🤖 I have created a release *beep* *boop*
---


##
[12.38.0](https://github.com/LazyVim/LazyVim/compare/v12.37.0...v12.38.0)
(2024-07-24)


### Features

* **markdown:** markdown-render toggle
([c8d0faf](c8d0faf9b1))
* **markdown:** replace `headlines.nvim` by `markdown.nvim`
([#4139](https://github.com/LazyVim/LazyVim/issues/4139))
([264abdf](264abdf9d5))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-24 08:30:15 +02:00
c8d0faf9b1 feat(markdown): markdown-render toggle 2024-07-24 08:21:36 +02:00
264abdf9d5 feat(markdown): replace headlines.nvim by markdown.nvim (#4139)
Okay, so
https://github.com/MeanderingProgrammer/markdown.nvim?tab=readme-ov-file
is a new kid on the block that I've been enjoying a lot. It replaces
headlines.nvim.

This new extra is a way for folks to try markdown.nvim effortlessly.

(Should I add here everything from the current markdown extra to make
this extra a complete drop-in replacement?)

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-07-24 08:02:56 +02:00
489a7a8e84 chore(main): release 12.37.0 (#4147)
🤖 I have created a release *beep* *boop*
---


##
[12.37.0](https://github.com/LazyVim/LazyVim/compare/v12.36.0...v12.37.0)
(2024-07-24)


### Features

* **catppuccin:** enable grug-far integration
([#4156](https://github.com/LazyVim/LazyVim/issues/4156))
([4bf6d85](4bf6d856a8))
* **elixir:** add elixirls code actions
([#4148](https://github.com/LazyVim/LazyVim/issues/4148))
([f94a059](f94a0591b3))


### Bug Fixes

* **dap:** don't mess up DAP adapters provided by nvim-dap-python
([#4141](https://github.com/LazyVim/LazyVim/issues/4141))
([940d7df](940d7df59a))
* **dap:** extend dap.configurations from .vscode/launch.json
([#4106](https://github.com/LazyVim/LazyVim/issues/4106))
([caf227d](caf227dd08))
* **grug-far:** use new transient option
([1c2be20](1c2be200c1))
* **keymaps:** leader-wd
([f0d8b8b](f0d8b8b293))
* **keymaps:** leader-wm
([391f506](391f506295))
* **news:** deprecated API
([f6cd4a3](f6cd4a38c6))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-24 07:05:03 +02:00
391f506295 fix(keymaps): leader-wm 2024-07-24 07:03:45 +02:00
ec8de342d7 chore(build): auto-generate docs 2024-07-24 04:27:22 +00:00
EJ
4bf6d856a8 feat(catppuccin): enable grug-far integration (#4156)
## Description

This enables the recently added `grug-far` integration in catppuccin -
https://github.com/catppuccin/nvim/pull/735

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-24 06:26:27 +02:00
940d7df59a fix(dap): don't mess up DAP adapters provided by nvim-dap-python (#4141)
## Description

* mason-nvim-dap.nvim ships a `Python: Launch file` adapter which does
the same thing as `Launch file` of nvim-dap-python, providing both
doesn't make sense and confuses the users.
* mason-nvim-dap.nvim unexpectedly overrides nvim-dap-python's adapters
and breaks its venv detection. As a result, user programs are always
executed in mason debugpy venv rather than the activated one.


<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)

Fixes #3064

<!--
  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.
2024-07-23 21:27:29 +02:00
caf227dd08 fix(dap): extend dap.configurations from .vscode/launch.json (#4106)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

This PR allows the nvim-dap module to read from vscode's launch.json and
add those configurations to the ones in nvim-dap.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

Before:

<img width="1137" alt="image"
src="https://github.com/user-attachments/assets/22978298-dbe1-44f5-92ac-c981197b22ae">



After:

<img width="1004" alt="image"
src="https://github.com/user-attachments/assets/3521b75e-6e32-40f4-9172-f52f39077441">


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

---------

Co-authored-by: Micah Halter <micah@mehalter.com>
2024-07-23 17:05:18 +02:00
f0d8b8b293 fix(keymaps): leader-wd 2024-07-23 08:29:08 +02:00
5727da6ff7 chore(build): auto-generate docs 2024-07-23 05:18:13 +00:00
f6cd4a38c6 fix(news): deprecated API 2024-07-23 07:17:18 +02:00
f94a0591b3 feat(elixir): add elixirls code actions (#4148)
This is a refactoring of #3846  with the changes:

- Use `Lazyvim.lsp.execute` on keymaps to make everything simpler;
- Remove expandMacro. 

Closes #3846

---------

Co-authored-by: Ahmed Kamal <ahmed@moon-i.com.au>
2024-07-23 00:11:30 +02:00
1c2be200c1 fix(grug-far): use new transient option 2024-07-22 23:26:03 +02:00
03968eb3f0 chore(main): release 12.36.0 (#4135)
🤖 I have created a release *beep* *boop*
---


##
[12.36.0](https://github.com/LazyVim/LazyVim/compare/v12.35.1...v12.36.0)
(2024-07-22)


### Features

* **grug-far:** no longer needed to call visual replace separately
([72d0cad](72d0cad353))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-22 14:25:04 +02:00
5626d98d1c ci: update 2024-07-22 14:24:32 +02:00
3a87ce4afb chore(build): auto-generate docs 2024-07-22 06:39:25 +00:00
72d0cad353 feat(grug-far): no longer needed to call visual replace separately 2024-07-22 08:38:34 +02:00
8db2f3af39 chore(main): release 12.35.1 (#4131)
🤖 I have created a release *beep* *boop*
---


##
[12.35.1](https://github.com/LazyVim/LazyVim/compare/v12.35.0...v12.35.1)
(2024-07-21)


### Bug Fixes

* **grug-far:** only prefill files filter when file has an extension.
Closes [#4130](https://github.com/LazyVim/LazyVim/issues/4130)
([6411ab0](6411ab0897))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-21 17:34:32 +02:00
6411ab0897 fix(grug-far): only prefill files filter when file has an extension. Closes #4130 2024-07-21 17:23:36 +02:00
fca038b433 chore(main): release 12.35.0 (#4128)
🤖 I have created a release *beep* *boop*
---


##
[12.35.0](https://github.com/LazyVim/LazyVim/compare/v12.34.0...v12.35.0)
(2024-07-21)


### Features

* **python:** default to new ruff instead of ruff_lsp
([#4126](https://github.com/LazyVim/LazyVim/issues/4126))
([61ce1cf](61ce1cfaaf))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-21 15:53:07 +02:00
76bc7b4022 chore(build): auto-generate docs 2024-07-21 10:25:26 +00:00
61ce1cfaaf feat(python): default to new ruff instead of ruff_lsp (#4126)
## Description

Change default python ruff lsp from `ruff_lsp` to `ruff`. It is now
marked as stable. I have been using it for a few days without any
problems. I use python for relatively small to medium projects. Maybe
someone who is using python more rigorously has better feedback.

References:

https://github.com/astral-sh/ruff-lsp (see note)
https://github.com/astral-sh/ruff/releases/tag/0.5.3
https://docs.astral.sh/ruff/editors/setup/#neovim

Also the issue in https://github.com/LazyVim/LazyVim/pull/3057 has been
resolved. I tested it and I only get 1 `ruff server` process per nvim
instance. The processes close correctly when nvim is closed.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-21 12:24:28 +02:00
43dbe0e60d chore(main): release 12.34.0 (#4121)
🤖 I have created a release *beep* *boop*
---


##
[12.34.0](https://github.com/LazyVim/LazyVim/compare/v12.33.0...v12.34.0)
(2024-07-20)


### Features

* **editor:** replace nvim-spectre with grug-far.nvim
([#4099](https://github.com/LazyVim/LazyVim/issues/4099))
([0d561a3](0d561a3226))
* **indent-blankline:** add which-key toggles
([#4122](https://github.com/LazyVim/LazyVim/issues/4122))
([a997152](a997152eb2))


### Bug Fixes

* **conform:** changes for new conform.nvim config
([eed91a3](eed91a3e4c))
* **toggle:** safe toggle get
([c8ab5d7](c8ab5d7554))


### Performance Improvements

* **core:** defer clipboard because xsel and pbcopy can be slow
([#4120](https://github.com/LazyVim/LazyVim/issues/4120))
([578f06e](578f06e140))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-20 22:27:04 +02:00
a997152eb2 feat(indent-blankline): add which-key toggles (#4122)
## Description

Add which-key toggle mappings for toggling both the indention guides,
and also scope highlight on a per buffer basis.

## Screenshots


![2024-07-20_08-16](https://github.com/user-attachments/assets/7b282868-c035-4f71-97dd-5738cd953713)

## 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>
2024-07-20 22:14:33 +02:00
c8ab5d7554 fix(toggle): safe toggle get 2024-07-20 22:06:16 +02:00
0d561a3226 feat(editor): replace nvim-spectre with grug-far.nvim (#4099)
## Description

I'm considering to replace
[nvim-spectre](https://github.com/nvim-pack/nvim-spectre) with
[grug-far.nvim](https://github.com/MagicDuck/grug-far.nvim).

It has a better ui and I like the workflow better.

I won't merge this right away. I'm mostly looking for feedback on
whether this would be a good thing and whether the defaults option I've
added seem ok.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots


![image](https://github.com/user-attachments/assets/bc44e35b-e033-4769-ad40-cdfe9e3482f4)

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-20 21:39:39 +02:00
eed91a3e4c fix(conform): changes for new conform.nvim config 2024-07-20 17:14:07 +02:00
3d1f961232 refactor: which-key mappings 2024-07-20 17:04:01 +02:00
6f91b406dd chore(build): auto-generate docs 2024-07-20 09:49:07 +00:00
578f06e140 perf(core): defer clipboard because xsel and pbcopy can be slow (#4120)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

See [this](https://github.com/LazyVim/LazyVim/discussions/4112)
discussion

TLDR: 
Startup time performance is affected quite significantly when the
clipboard provider is `xsel`(linux) or `pbcopy`(macos). I expect an
improvement in these cases, especially on older pc's.

This PR resets `vim.opt.clipboard` after the `options` are loaded. Then,
on `VeryLazy`, the setting is restored.

I also tested with `yanky`.

Relevant prints:

1. Before resetting `vim.opt.clipboard` in `init`,
`vim.print(vim.opt.clipboard)` yields a table which will be captured:

```lua
--- fields
_name = "clipboard",
_value = "unnamedplus",
--- more fields
```

2. Set `vim.opt.clipboard = ""` and `vim.print(vim.opt.clipboard)`, also
yields a table:

```lua
--- fields
_name = "clipboard",
_value = "",
--- more fields
```


## 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: abeldekat <abel@nomail.com>
2024-07-20 11:48:11 +02:00
64afb5f007 chore(main): release 12.33.0 (#4102)
🤖 I have created a release *beep* *boop*
---


##
[12.33.0](https://github.com/LazyVim/LazyVim/compare/v12.32.0...v12.33.0)
(2024-07-19)


### Features

* **extras:** improve ruby extra by letting user chose
([#3652](https://github.com/LazyVim/LazyVim/issues/3652))
([7839498](7839498108))
* **lang:** add Lean 4 support
([#4080](https://github.com/LazyVim/LazyVim/issues/4080))
([3e29fdf](3e29fdf478))
* **lang:** add OCaml
([#4079](https://github.com/LazyVim/LazyVim/issues/4079))
([a219e10](a219e105b0))


### Bug Fixes

* **ui:** trouble lualine component
([f9fdb35](f9fdb356f2))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-19 11:50:05 +02:00
7839498108 feat(extras): improve ruby extra by letting user chose (#3652)
## What is this PR for?

Shopify started working on its own LSP
(https://github.com/Shopify/ruby-lsp) and it performs way better than
Solargraph which has a lot of limitations. This paired with sorbet gives
better IntelliSense when navigating the code.

This PR follows the same approach as Python and lets the user configure
through vim.g options the lsp and formatter for ruby, without overriding
any configuration.

## Does this PR fix an existing issue?

One caveat though is that RubyLsp does not work very well with NeoVim <
0.10 https://github.com/Shopify/ruby-lsp/blob/main/EDITORS.md#neovim

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-19 11:09:57 +02:00
3e29fdf478 feat(lang): add Lean 4 support (#4080)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

Adds language support for lean, a popular proof assistant and theorem
prover.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

None

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

Language Server

<img width="1510" alt="lsp"
src="https://github.com/user-attachments/assets/28c29cae-eca4-4dfa-a4a4-462551f5cfd8">

Lean Execution (infobox on the right)

<img width="1510" alt="goals"
src="https://github.com/user-attachments/assets/e195dbeb-70d6-4f09-90bf-dbe289423bec">

Keymaps

<img width="1510" alt="keymaps"
src="https://github.com/user-attachments/assets/2451c3d2-b855-4fb5-9d30-33305274c52c">

Many More Commands

<img width="1510" alt="lots of commands"
src="https://github.com/user-attachments/assets/e7b7eb1d-0f4e-4d3c-a58b-a87eb7e0319c">

## 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>
2024-07-19 09:38:55 +02:00
5795be3c19 chore(build): auto-generate docs 2024-07-19 07:34:55 +00:00
a219e105b0 feat(lang): add OCaml (#4079)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

Adds an extra that adds language support for ocaml.

Adds LSP and completions. Fairly simple/small config.

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

None

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

<img width="1510" alt="lsp ocaml"
src="https://github.com/user-attachments/assets/0e44c539-332c-415d-9225-bcbb61f37666">


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-19 09:33:49 +02:00
f9fdb356f2 fix(ui): trouble lualine component 2024-07-18 15:45:53 +02:00
0daa957b3c chore(main): release 12.32.0 (#4086)
🤖 I have created a release *beep* *boop*
---


##
[12.32.0](https://github.com/LazyVim/LazyVim/compare/v12.31.0...v12.32.0)
(2024-07-18)


### Features

* **edgy:** added support for grug-far.nvim
([b1a4740](b1a47405b9))
* **terminal:** clear search highlight when opening a terminal
([#4090](https://github.com/LazyVim/LazyVim/issues/4090))
([b5290fd](b5290fd929))
* **toggle:** move toggle notifs to toggle function
([c1b76ee](c1b76ee235))


### Bug Fixes

* **autcmds:** desc for close_with_q
([d6561fd](d6561fd27c))
* **ui:** another typo
([b8bdebe](b8bdebe5be))
* **ui:** typo
([4ac249b](4ac249beaa))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-18 10:48:31 +02:00
b8bdebe5be fix(ui): another typo 2024-07-18 10:42:02 +02:00
4ac249beaa fix(ui): typo 2024-07-18 09:30:56 +02:00
d2483f19ce feat(lualine): allow for trouble_lualine to be overriden on buffer (#4096)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

Right now there is a default `vim.g.trouble_lualine` being set to
`true`, and only that variable is being checked when deciding if the
trouble output is being appended to the `lualine_c` for the lualine
plugin. This is normally nice in code files, where you can get output
like `packages/src/index.ts > myFunction` but in some filetypes, the
user may not wish for this. In particular, I found if you have files
with the `markdown` type that include long headers, then you can easily
lose the file name by it trying to include the headers in this location.

Considering that one of the `CONTRIBUTING.md` guidelines is `Ensure all
configurations are overridable by the user, using Lazy's specs.`, I
figured that allowing this to be overrideable at the user's discretion
could be a valuable feature.

This would allow the user to override this on file type by including an
autocmd like this in their `lua/config/autocmds.lua` or equivalent:

```lua
-- disable trouble symbols in lualine in text filetypes
vim.api.nvim_create_autocmd("FileType", {
  group = vim.api.nvim_create_augroup("disable_trouble_lualine", { clear = true }),
  pattern = { "text", "plaintex", "typst", "gitcommit", "markdown" },
  callback = function()
    vim.b.trouble_lualine = false
  end,
})
```

## Related Issue(s)

None

<!--
  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: jpridemore-allegion <jeremy.pridemore@allegion.com>
2024-07-18 07:21:50 +02:00
87ef93e8a0 chore(build): auto-generate docs 2024-07-18 05:11:12 +00:00
b5290fd929 feat(terminal): clear search highlight when opening a terminal (#4090)
## Description

Often times when opening a terminal or lazygit when a search is active,
words in the terminal are highlighted. In my opinion this is rarely, if
not never intended. This attempts to fixes this behavior. The code of
`terminal.lua` is a bit beyond me, but I believe I have added it to the
right place.

## Related Issue(s)

N/A.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-18 07:10:22 +02:00
d6561fd27c fix(autcmds): desc for close_with_q 2024-07-18 00:41:54 +02:00
b1a47405b9 feat(edgy): added support for grug-far.nvim 2024-07-18 00:21:19 +02:00
c1b76ee235 feat(toggle): move toggle notifs to toggle function 2024-07-17 15:07:04 +02:00
d263cf5dd1 chore(main): release 12.31.0 (#4061)
🤖 I have created a release *beep* *boop*
---


##
[12.31.0](https://github.com/LazyVim/LazyVim/compare/v12.30.0...v12.31.0)
(2024-07-17)


### Features

* **keymaps:** proxy leader-w to ctrl-w
([bab5440](bab54406dc))
* **R:** added new which-key group for new install feature
([#4078](https://github.com/LazyVim/LazyVim/issues/4078))
([5339aca](5339acacec))
* **toggle:** make toggles callable. Fixes
[#4081](https://github.com/LazyVim/LazyVim/issues/4081)
([150523b](150523b77b))
* **treesitter-context:** which-key toggle
([#4059](https://github.com/LazyVim/LazyVim/issues/4059))
([ab01350](ab0135093b))
* **which-key:** dynamic buffer mappings under leader-b
([8d9f2ad](8d9f2ad97e))
* **which-key:** dynamic window mappings under leader-w
([66bba78](66bba787b8))
* **which-key:** leader-w-space starts hydra mode for window mappings
([865bf15](865bf15f1c))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-17 12:48:40 +02:00
fd2db9e5ee chore(build): auto-generate docs 2024-07-17 10:44:14 +00:00
8d9f2ad97e feat(which-key): dynamic buffer mappings under leader-b 2024-07-17 12:43:12 +02:00
66bba787b8 feat(which-key): dynamic window mappings under leader-w 2024-07-17 12:42:55 +02:00
865bf15f1c feat(which-key): leader-w-space starts hydra mode for window mappings 2024-07-17 12:42:29 +02:00
bab54406dc feat(keymaps): proxy leader-w to ctrl-w 2024-07-17 12:40:56 +02:00
60b10deeb0 style(toggle): types 2024-07-16 23:54:23 +02:00
150523b77b feat(toggle): make toggles callable. Fixes #4081 2024-07-16 23:34:27 +02:00
1ceac32652 chore(build): auto-generate docs 2024-07-16 16:35:40 +00:00
5339acacec feat(R): added new which-key group for new install feature (#4078)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

A new feature was added to `r.nvim` that added a new key bind. This pr
adds that key bind (and group in case more are added) to the current
which-key config.

(I also removed a comment that I made previously for increasing the
width of the which-key window to fit the longer keybind descriptions,
something that eventually was taken out of the previous PR long ago)

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

None

## Screenshots

<!-- Add screenshots of the changes if applicable. -->

<img width="154" alt="Screenshot 2024-07-16 at 9 24 54 AM"
src="https://github.com/user-attachments/assets/70336846-cf42-458e-89f3-3e7cf1b94c3f">

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-16 18:34:51 +02:00
a1335e59e1 style: fix toggle desc 2024-07-15 23:56:07 +02:00
ab0135093b feat(treesitter-context): which-key toggle (#4059)
## Description

Add a which-key toggle for treesitter-context

## Screenshots


![image](https://github.com/user-attachments/assets/28c02607-a7e8-409c-a190-4fd2db85e8bb)

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-15 22:58:34 +02:00
dc8a3a139e chore(update): update repository (#4054)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: folke <292349+folke@users.noreply.github.com>
2024-07-15 17:09:19 +02:00
9eefc6a3aa chore(main): release 12.30.0 (#4036)
🤖 I have created a release *beep* *boop*
---


##
[12.30.0](https://github.com/LazyVim/LazyVim/compare/v12.29.2...v12.30.0)
(2024-07-15)


### Features

* **keymaps:** dynamic which-key icons/descriptions for toggles
([#4050](https://github.com/LazyVim/LazyVim/issues/4050))
([78cf032](78cf0320bf))
* **util.mini:** follow the user's mappings instead of hardcoded values
([#4043](https://github.com/LazyVim/LazyVim/issues/4043))
([8506cb5](8506cb5a98))


### Bug Fixes

* **lsp:** lsp keymaps. Fixes
[#4051](https://github.com/LazyVim/LazyVim/issues/4051)
([706ec4b](706ec4b6b6))
* **yanky:** enable yank history in visual mode
([#4048](https://github.com/LazyVim/LazyVim/issues/4048))
([6911327](6911327a5e))


### Performance Improvements

* **luasnip:** luasnip wasn't lazyloaded
([#4032](https://github.com/LazyVim/LazyVim/issues/4032))
([e80ed32](e80ed322a7))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-15 15:49:29 +02:00
78cf0320bf feat(keymaps): dynamic which-key icons/descriptions for toggles (#4050)
## Description

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)

- [ ] Closes #4025

## Screenshots


![image](https://github.com/user-attachments/assets/8453c23c-d560-490c-9f96-a22ea88f45fd)

## Checklist

- [ ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-15 15:47:44 +02:00
706ec4b6b6 fix(lsp): lsp keymaps. Fixes #4051 2024-07-15 14:05:49 +02:00
6911327a5e fix(yanky): enable yank history in visual mode (#4048)
## Description

Being able to select from the yank history is useful if you want to
paste over something else by first selecting the stuff you want to
remove in visual mode.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-15 11:48:58 +02:00
0f2d01dd01 chore(update): update repository (#4047)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: folke <292349+folke@users.noreply.github.com>
2024-07-15 11:19:44 +02:00
448e15862a chore(build): auto-generate docs 2024-07-15 07:07:24 +00:00
8506cb5a98 feat(util.mini): follow the user's mappings instead of hardcoded values (#4043)
Because I use the Colemak-DH keyboard layout, I have mapped 'i' to 'h'.
Therefore, the current mini.ai which_key prompts are inconsistent with
my keymap.


## Description

The names and prefixes used in mini.ai_whichkey() are hardcoded and
should follow the user's mappings.

## Related Issue(s)

No

## Screenshots

No

## 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>
2024-07-15 09:06:34 +02:00
e80ed322a7 perf(luasnip): luasnip wasn't lazyloaded (#4032)
## Description

this makes the extra luasnip lazy load at the same time as nvim cmp.
just putting `lazy = true` works because `nvim-cmp` when being loaded
with `InsertEnter` also load `cmp-luasnip`, which itself load `LUASNIP`.

you can see the problem in the following discussion
https://github.com/LazyVim/LazyVim/discussions/3966 where luasnip was
not lazy loaded when starting lazyvim. This was also loading nvim-cmp
and all its dep when starting lazyvim, which negatively impacted
performance.

## Related Issue(s)

https://github.com/LazyVim/LazyVim/discussions/3966

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-14 18:19:28 +02:00
29e285d882 style(persistence): remove unused option 2024-07-14 18:11:24 +02:00
b20be638b3 chore(main): release 12.29.2 (#4035)
🤖 I have created a release *beep* *boop*
---


##
[12.29.2](https://github.com/LazyVim/LazyVim/compare/v12.29.1...v12.29.2)
(2024-07-14)


### Bug Fixes

* **telescope:** better find_command. Fixes
[#4031](https://github.com/LazyVim/LazyVim/issues/4031)
([d39cdb0](d39cdb0596))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-14 18:08:14 +02:00
d39cdb0596 fix(telescope): better find_command. Fixes #4031 2024-07-14 18:06:40 +02:00
45af7e1fed chore(main): release 12.29.1 (#4026)
🤖 I have created a release *beep* *boop*
---


##
[12.29.1](https://github.com/LazyVim/LazyVim/compare/v12.29.0...v12.29.1)
(2024-07-14)


### Bug Fixes

* **omnisharp:** don't detach coreclr debug adapter
([#4023](https://github.com/LazyVim/LazyVim/issues/4023))
([b3e746b](b3e746b637))
* **pick:** get rid of "auto" picker and set better defaults for
telescope find_files
([#4024](https://github.com/LazyVim/LazyVim/issues/4024))
([337e9dd](337e9ddc00))
* **tailwind:** additional tailwind completion settings for phoenix
projects ([#3961](https://github.com/LazyVim/LazyVim/issues/3961))
([9bce054](9bce054faf))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-14 07:54:09 +02:00
9bce054faf fix(tailwind): additional tailwind completion settings for phoenix projects (#3961)
## Description

Tailwind completions stopped working in Phoenix projects that have
`HTML`, `HEEX` or `Elixir files with ~H sigils`.

Broader discussion and recommended solution:
https://github.com/tailwindlabs/tailwindcss-intellisense/issues/1002

## Related Issue(s)


## Screenshots

![Screenshot 2024-07-08 at 9 05
45 PM](https://github.com/LazyVim/LazyVim/assets/379021/8572e6c1-12dd-454c-b60e-3b33ae448284)
![Screenshot 2024-07-08 at 9 05
08 PM](https://github.com/LazyVim/LazyVim/assets/379021/f93bdc28-813e-4485-b40d-146c1670b8c2)


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-14 07:53:18 +02:00
b3e746b637 fix(omnisharp): don't detach coreclr debug adapter (#4023)
## Description

Debugging c# with the Omnisharp plugin doesn't work, as described by
myself in #4004. Turns out this is a known issue with how nvim-dap calls
the mason netcoredbg cmd script. [The
solution](https://github.com/jay-babu/mason-nvim-dap.nvim/issues/132) is
to pass `detach = false` as an option to the debug adapter. I've tested
and it works on my windows machine.

## Related Issue(s)

#4004

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-14 07:52:53 +02:00
337e9ddc00 fix(pick): get rid of "auto" picker and set better defaults for telescope find_files (#4024)
## Description

Changes telescope's `find_files` options to match `fzf-lua` that matches
what `git_files` does including untracked files.

## Related Issue(s)

Fixes #3974

## 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.
2024-07-14 07:52:00 +02:00
065d72320d chore(main): release 12.29.0 (#4015)
🤖 I have created a release *beep* *boop*
---


##
[12.29.0](https://github.com/LazyVim/LazyVim/compare/v12.28.0...v12.29.0)
(2024-07-14)


### Features

* **java:** new java mappings format for which-key v3
([#4013](https://github.com/LazyVim/LazyVim/issues/4013))
([28a7f81](28a7f8126c))
* shorter keymap descriptions for mini.ai / yanky
([75ff149](75ff1496bd))


### Bug Fixes

* **flit:** use which-key preset keymap descriptions
([#4000](https://github.com/LazyVim/LazyVim/issues/4000))
([ca37162](ca37162cb7))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-14 07:50:40 +02:00
d01a58ef90 chore(build): auto-generate docs 2024-07-14 05:09:15 +00:00
75ff1496bd feat: shorter keymap descriptions for mini.ai / yanky 2024-07-14 07:08:17 +02:00
431ceaf329 chore(update): update repository (#4019)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: folke <292349+folke@users.noreply.github.com>
2024-07-13 18:09:42 +02:00
1f8469a53c chore(update): update repository (#4018)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: folke <292349+folke@users.noreply.github.com>
2024-07-13 16:16:04 +02:00
b4b0234008 chore(update): update repository (#4009)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: folke <292349+folke@users.noreply.github.com>
2024-07-13 10:07:07 +02:00
28a7f8126c feat(java): new java mappings format for which-key v3 (#4013)
## Description

Use which-key v3 format for java mappings.

`<leader>c` is removed as it is reported as a duplicate mapping in
health check.

## Related Issue(s)


## Screenshots


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-13 09:54:58 +02:00
406aa9d8b4 chore(build): auto-generate docs 2024-07-13 07:52:17 +00:00
Bao
ca37162cb7 fix(flit): use which-key preset keymap descriptions (#4000)
## Description

The flit config overrides the descriptions provided by the which-key
presets plugin for the `f`/`F`/`t`/`T` motions with an unhelpful
description text (just the key itself).

Remove the `desc` argument so that which-key uses the existing
description (e.g "Move before next char").

## Related Issue(s)

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

## Screenshots

| Before | After |
| ------------- | ------------- |
|
![Before](https://github.com/user-attachments/assets/39b885fe-95c2-4a6e-8b22-4e5ddf1986a9)
|
![After](https://github.com/user-attachments/assets/6042fde3-e135-48fa-b1fd-c6047277903a)
|


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-13 09:51:19 +02:00
9391ff9fa3 chore(main): release 12.28.0 (#3952)
🤖 I have created a release *beep* *boop*
---


##
[12.28.0](https://github.com/LazyVim/LazyVim/compare/v12.27.0...v12.28.0)
(2024-07-12)


### Features

* new mappings format for which-key v3. Forgot to push :)
([702471e](702471e454))


### Bug Fixes

* **autocmds:** fixed pattern for autocommand to autoenable wrap and
spell in text files
([#3975](https://github.com/LazyVim/LazyVim/issues/3975))
([927031a](927031a2de))
* **java:** fix `config_overrides` for tests
([#3968](https://github.com/LazyVim/LazyVim/issues/3968))
([b481b64](b481b644dd))
* **outline:** use new object for `symbols.filter`
([#4006](https://github.com/LazyVim/LazyVim/issues/4006))
([db234ef](db234ef9cb))
* **php:** `php_cs_fixer` is the correct name
([#3991](https://github.com/LazyVim/LazyVim/issues/3991))
([8bfd9a5](8bfd9a50a7))
* **vscode:** allow overriding default vscode keymaps. Fixes
[#3950](https://github.com/LazyVim/LazyVim/issues/3950)
([6765052](67650528e4))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-12 22:56:08 +02:00
702471e454 feat: new mappings format for which-key v3. Forgot to push :) 2024-07-12 22:54:35 +02:00
4a6c0c2850 chore(build): auto-generate docs 2024-07-12 20:07:43 +00:00
db234ef9cb fix(outline): use new object for symbols.filter (#4006)
## Description
In `outline.nvim` we have `symbols.filter = LazyVim.config.kind_filter`.
`outline.nvim` adds an entry `exclude = false` by default when it's a
table. This entry propagates to `LazyVim.config.kind_filter` and when
using `LazyVim.config.get_kind_filter()` in Telescope `<leader>ss` that
entry is there as well and causes the error in
bfcc7d5c6f/lua/telescope/utils.lua (L143).
Use `vim.deepcopy` to create a new object for `symbols.filter` in
`outline.nvim`, so that the additional entries don't propagate to
default `LazyVim.config.kind_filter`.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Fixes #4003
<!--
  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.
2024-07-12 22:06:34 +02:00
0e2eaa3fba chore(build): auto-generate docs 2024-07-11 15:41:05 +00:00
8bfd9a50a7 fix(php): php_cs_fixer is the correct name (#3991)
## Description
`conform.nvim` was not using the correct formatter name for
`php-cs-fixer` (which is the name of the binary).
Also move `conform.nvim` spec outside of `nvim-lint` spec.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
Fixes #3985
<!--
  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.
2024-07-11 17:40:17 +02:00
11268d8ff1 chore(build): auto-generate docs 2024-07-10 07:12:24 +00:00
927031a2de fix(autocmds): fixed pattern for autocommand to autoenable wrap and spell in text files (#3975)
## Description

Autocommand group lazyvim_wrap_spell was not triggering for all of the
specified file types.

The autocommand will now trigger for types "text", "plaintex", "typst",
"gitcommit", "markdown" as intended.

## Related Issue(s)

 - Fixes #3973 


## Checklist

- [X] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-10 09:11:26 +02:00
d6bda24697 chore(build): auto-generate docs 2024-07-09 15:13:00 +00:00
b481b644dd fix(java): fix config_overrides for tests (#3968)
## Description
Problem
In the default configuration `opts.test` is a boolean and the code tries
to access `opts.test.config_overrides` which results in an error.

Solution
Use control flow to return nil in the case of `opts.test` being boolean.

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Related Issue(s)
  - Fixes #3965.

## Checklist

- [ x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-09 17:12:02 +02:00
8a34051177 chore(build): auto-generate docs 2024-07-08 05:53:15 +00:00
67650528e4 fix(vscode): allow overriding default vscode keymaps. Fixes #3950 2024-07-08 07:52:18 +02:00
bf9887adac chore(main): release 12.27.0 (#3949)
🤖 I have created a release *beep* *boop*
---


##
[12.27.0](https://github.com/LazyVim/LazyVim/compare/v12.26.2...v12.27.0)
(2024-07-07)


### Features

* **icons:** provide language specific icons in extras
([#3931](https://github.com/LazyVim/LazyVim/issues/3931))
([aa418a2](aa418a2147))
* **java:** allow overriding test config
([#3891](https://github.com/LazyVim/LazyVim/issues/3891))
([8b2eacb](8b2eacb6ac))


### Bug Fixes

* **fzf-lua:** move register_select to lazy init
([33e1da5](33e1da585d))
* **lazygit:** improve git browse
([#3941](https://github.com/LazyVim/LazyVim/issues/3941))
([28805d1](28805d1a4c))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-07 21:28:01 +02:00
28805d1a4c fix(lazygit): improve git browse (#3941)
## Description
Improves git browse command by handling different types of remotes, and
allows user to extend to other git hosts.

## Related Issue(s)
Fixes #3886

## 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>
2024-07-07 21:25:45 +02:00
8b2eacb6ac feat(java): allow overriding test config (#3891)
## What is this PR for?

Allow overriding java test config

## Does this PR fix an existing issue?

NO

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-07 20:50:13 +02:00
f3c93701e7 style(icons): CODEOWNERS has a default icon 2024-07-07 20:41:37 +02:00
aa418a2147 feat(icons): provide language specific icons in extras (#3931)
## What is this PR for?

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

Provide language specific file icons. The intent is to lay the
foundation of this type of extension / configuration. I've added icons
for file types that I interact with but this is definitely not holistic.
I also went back and forth on whether the configuration should be within
the core UI config or in the extras (I landed on the later). Definitely
open to feedback on these changes.

## Does this PR fix an existing issue?

<!--
  If this PR fixes any issues, please link to the issue here.
  - Fixes #<issue_number>
-->

Nope.

## 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>
2024-07-07 19:28:51 +02:00
09831414cf test: added tests for mini.icons 2024-07-07 17:46:57 +02:00
33e1da585d fix(fzf-lua): move register_select to lazy init 2024-07-07 17:23:53 +02:00
6202dd1644 chore(main): release 12.26.2 (#3946)
🤖 I have created a release *beep* *boop*
---


##
[12.26.2](https://github.com/LazyVim/LazyVim/compare/v12.26.1...v12.26.2)
(2024-07-07)


### Bug Fixes

* **lualine:** check that trouble is installed
([d108169](d108169e95))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-07 09:24:59 +02:00
304729b23a chore(build): auto-generate docs 2024-07-07 06:48:54 +00:00
d108169e95 fix(lualine): check that trouble is installed 2024-07-07 08:47:57 +02:00
4035768195 ci: update 2024-07-06 23:45:22 +02:00
21470b49d9 ci: update 2024-07-06 23:19:41 +02:00
5e1216867b ci: update 2024-07-06 23:18:20 +02:00
427b641eb8 chore(update): update repository (#3940)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: folke <292349+folke@users.noreply.github.com>
2024-07-06 18:05:06 +02:00
d8958d78b5 chore(update): update repository (#3938)
Automated changes by
[create-pull-request](https://github.com/peter-evans/create-pull-request)
GitHub action

Co-authored-by: folke <292349+folke@users.noreply.github.com>
2024-07-06 15:00:04 +02:00
e9857446ce chore(main): release 12.26.1 (#3930)
🤖 I have created a release *beep* *boop*
---


##
[12.26.1](https://github.com/LazyVim/LazyVim/compare/v12.26.0...v12.26.1)
(2024-07-06)


### Bug Fixes

* **lualine:** use the new ministarter file type to disable in
mini.starter ([#3929](https://github.com/LazyVim/LazyVim/issues/3929))
([330d2e4](330d2e470b))
* **mini.starter:** lazyvim startuptime in mini.starter
([#3935](https://github.com/LazyVim/LazyVim/issues/3935))
([5f952bb](5f952bb9d6))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-06 12:12:32 +02:00
ab2ff2e436 ci: update 2024-07-06 11:45:21 +02:00
3d410407be chore(build): auto-generate docs 2024-07-06 07:56:55 +00:00
5f952bb9d6 fix(mini.starter): lazyvim startuptime in mini.starter (#3935)
## What is this PR for?

In a fresh install of lazyvim (with` neovim nightly or stable), the
startup time is not shown in the mini.starter extra. This fixes it.
The filetype name has changed in mini.starter

394994b2be

## Does this PR fix an existing issue?

Did not find an issue for it.

## Checklist

- [ ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-06 09:56:19 +02:00
330d2e470b fix(lualine): use the new ministarter file type to disable in mini.starter (#3929)
## What is this PR for?

`mini.starter` recently had a breaking change to set the file type to
`ministarter` instead of the old `starter`; so, `lualine` is enabled in
the dashboard because it's using the old file type.

## Does this PR fix an existing issue?

No.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-05 19:34:44 +02:00
a915a5d7e1 ci: fix urls 2024-07-05 19:08:52 +02:00
bb4d4cbd5c ci: update 2024-07-05 18:58:27 +02:00
0471ca14ca chore(main): release 12.26.0 (#3920)
🤖 I have created a release *beep* *boop*
---


##
[12.26.0](https://github.com/LazyVim/LazyVim/compare/v12.25.0...v12.26.0)
(2024-07-05)


### Features

* **dial:** yaml support
([f64bbd2](f64bbd29fb))
* **util:** rest-client
([#3915](https://github.com/LazyVim/LazyVim/issues/3915))
([76b41cd](76b41cdec4))
* **vue:** enabled hybrid mode to avoid 2 typescript lsp running at same
time ([#3908](https://github.com/LazyVim/LazyVim/issues/3908))
([4b0f720](4b0f720457))


### Bug Fixes

* **dial:** move date related augends to default group
([#3927](https://github.com/LazyVim/LazyVim/issues/3927))
([4192d95](4192d9578d))
* **outline:** use the correct symbols and filter config format
([#3924](https://github.com/LazyVim/LazyVim/issues/3924))
([502dac1](502dac1d9a))
* **project:** properly close window after changing directory
([#3919](https://github.com/LazyVim/LazyVim/issues/3919))
([51e99df](51e99dfba1))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-05 16:13:20 +02:00
4b0f720457 feat(vue): enabled hybrid mode to avoid 2 typescript lsp running at same time (#3908)
## What is this PR for?

At the moment, the config for vue set hybrid mode to `false` which volar
will run a typescript server under the hook. ( hybrid mode false is the
takeover mode in v1, was introduced in `2.0.7` see more information
here: https://github.com/vuejs/language-tools/pull/4119 ).

However, another vtsls with vue language plugin also attached to vue
files, this will cause two typescript server running at the same time.
It can be very easily observed with tools like `htop` volar and vtsls
will have similar memory usage which is abnormal because volar should be
very light by itself. This will introduce issues like duplicate
diagnostics, see
https://github.com/vuejs/language-tools/issues/4159#issuecomment-2208101079

In this pull request, I set the hybrid mode to true as default because
the hybrid mode is the "correct" way moving forward, thus it would be
more stable. Let me know if you feel it should stay as `false` to be
default.

## Does this PR fix an existing issue?

No existing issue.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-05 16:12:04 +02:00
502dac1d9a fix(outline): use the correct symbols and filter config format (#3924)
## What is this PR for?

The symbols-outline extra was removed in favor of outline.nvim in #2535
(thanks!), but the configuration for symbols in outline.nvim [is not
backwards-compatible](https://github.com/hedyhli/outline.nvim/issues/12).

This fixes the configuration for the symbols icons and filter to be
usable by outline.nvim.

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?

<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

It doesn't seem like anyone has encountered this issue, but I can
confirm that the config currently used by LazyVim is incorrect. The
symbols table is at `symbols` for symbols-outline.nvim, but it's now at
`symbols.icons` for outline.nvim.

There is no such `symbols_blacklist` key. Instead, `symbols.filter` is
used, which is a kind of "whitelist".

Coincidentally, outline.nvim fully supports the LazyVim `kind_filter`
config table structure. It can either be a list of strings (kinds), or a
list of strings for each filetype key. Setting to nil or false makes it
so all symbols are included, just like in LazyVim.

See [the docs on the
`symbols.filter`](https://github.com/hedyhli/outline.nvim?tab=readme-ov-file#symbols-table)
structure.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-05 16:10:46 +02:00
4192d9578d fix(dial): move date related augends to default group (#3927)
## What is this PR for?

Move augends `ordinal_numbers`, `weekdays` and `months` to the default
group, making them available to all filetypes. I don't think there is a
concrete reason to restrict them to specific filetypes.

## Does this PR fix an existing issue?

N/A.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-05 16:08:52 +02:00
d715456401 chore(build): auto-generate docs 2024-07-05 13:32:45 +00:00
6eb8cacd0f ci: update 2024-07-05 15:31:26 +02:00
f64bbd29fb feat(dial): yaml support 2024-07-05 14:56:51 +02:00
76b41cdec4 feat(util): rest-client (#3915)
## What is this PR for?

Kulala is a minimal REST-client implementation that allows you to make
HTTP requests from within Neovim

## Does this PR fix an existing issue?

No but simplifies life

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-05 09:20:18 +02:00
51e99dfba1 fix(project): properly close window after changing directory (#3919)
## What is this PR for?

In project extra, when using `<c-w>` in the project selection menu to
change directory, the window used to show the command's exit code would
not close. This fixes it.

## Does this PR fix an existing issue?

N/A.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-05 09:15:57 +02:00
fb59a9feb0 chore(build): auto-generate vimdoc 2024-07-05 06:23:43 +00:00
8f74db318c refactor(trouble): move options in keymaps for lsp and symbols to opts (#3917)
## What is this PR for?

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->
A user won't also have to override the keymaps if they set options for
`Trouble lsp` or `symbols` in `opts` (assuming they want the mode to
always open with certain options).

## Does this PR fix an existing issue?
No.

<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [ x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

----

The default for `Trouble symbols` already seems to be on the right, and
neither lsp/symbols auto-focuses, so I left these out.
2024-07-05 08:22:38 +02:00
d35a3914bf chore(main): release 12.25.0 (#3905)
🤖 I have created a release *beep* *boop*
---


##
[12.25.0](https://github.com/LazyVim/LazyVim/compare/v12.24.0...v12.25.0)
(2024-07-04)


### Features

* **erlang:** add Erlang language
([#3911](https://github.com/LazyVim/LazyVim/issues/3911))
([9c7d3dc](9c7d3dc75e))
* **fzf-lua:** preview keymaps for git
([#3904](https://github.com/LazyVim/LazyVim/issues/3904))
([d5f3d39](d5f3d395f4))
* **ui:** use `mini.icons` instead of `nvim-wev-devicons`
([#3899](https://github.com/LazyVim/LazyVim/issues/3899))
([045faec](045faec035))


### Bug Fixes

* **fzf:** make sure `vim.ui.select` works when fzf is not loaded yet
([9acadc7](9acadc7ec2))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-04 21:02:19 +02:00
9c7d3dc75e feat(erlang): add Erlang language (#3911)
I usually work with Elixir codebases, but sometimes I want to browse and
code with Erlang codebases, so here is the config I've been using for
Erlang.
2024-07-04 20:47:33 +02:00
045faec035 feat(ui): use mini.icons instead of nvim-wev-devicons (#3899)
## What is this PR for?

Replace the icon support with the new mini library

## Blockers

- [ ]
https://github.com/echasnovski/mini.nvim/issues/1007#issuecomment-2206553024
2024-07-04 18:18:10 +02:00
1bf8050bc4 ci: new minit 2024-07-04 18:16:47 +02:00
c848cfddef chore(build): auto-generate vimdoc 2024-07-04 13:22:14 +00:00
9acadc7ec2 fix(fzf): make sure vim.ui.select works when fzf is not loaded yet 2024-07-04 15:21:02 +02:00
d5f3d395f4 feat(fzf-lua): preview keymaps for git (#3904)
## What is this PR for?
It seems that the preview keymaps set right now only support the builtin
previewer.

From searching through `fzf-lua` docs, I found
[here](3b91c1a471/README.md (L634-L638))
that additional mappings should be set for the other previewers such as
`git` (otherwise the defaults `<shift-down/up>` could be used).

I chose to use the same mappings for the `fzf` preview keymaps as they
serve the same functionality. Please feel free to change if not to your
liking.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Not an issue but a discussion #3895
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-03 21:49:21 +02:00
8ddc6f9e16 chore(main): release 12.24.0 (#3900)
🤖 I have created a release *beep* *boop*
---


##
[12.24.0](https://github.com/LazyVim/LazyVim/compare/v12.23.0...v12.24.0)
(2024-07-03)


### Features

* **options:** jumpoptions=view
([fe3d0da](fe3d0da508))


### Bug Fixes

* **dials:** dials.nvim stopped working after making changes to plugin
files
([455557c](455557c1f6))


### Performance Improvements

* **fzf:** lazy-load fzf-lua
([b9a8a4a](b9a8a4ad7f))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-03 21:12:38 +02:00
455557c1f6 fix(dials): dials.nvim stopped working after making changes to plugin files 2024-07-03 19:06:43 +02:00
b9a8a4ad7f perf(fzf): lazy-load fzf-lua 2024-07-03 18:00:58 +02:00
fe3d0da508 feat(options): jumpoptions=view 2024-07-03 17:12:26 +02:00
1f603f9074 chore(main): release 12.23.0 (#3872)
🤖 I have created a release *beep* *boop*
---


##
[12.23.0](https://github.com/LazyVim/LazyVim/compare/v12.22.1...v12.23.0)
(2024-07-03)


### Features

* **cmp:** attempt for dynamic width and trimming between fields
([#3873](https://github.com/LazyVim/LazyVim/issues/3873))
([78cf6ee](78cf6ee024))


### Bug Fixes

* **chezmoi:** missing support for fzf file picker
([#3888](https://github.com/LazyVim/LazyVim/issues/3888))
([2114a66](2114a6610f))
* **neo-tree:** remove `branch`, since it obstructs updating to latest
version ([#3871](https://github.com/LazyVim/LazyVim/issues/3871))
([d23731c](d23731c50d))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-07-03 07:55:45 +02:00
cb9cbd3a37 chore(build): auto-generate vimdoc 2024-07-03 05:52:05 +00:00
2114a6610f fix(chezmoi): missing support for fzf file picker (#3888)
## What is this PR for?

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->
  
This fixes an issue with the chezmoi extra that won't work if the
LazyVim picker is fzf-lua instead of Telescope. Fx if you have the
`editor.fzf` and `util.chezmoi` extras enabled at the same time, trying
to open the config from the dashboard will result in the following error
because Telescope has been replaced with fzf:
```
E5108: Error executing lua: vim/_editor.lua:0: nvim_exec2(): Vim:E492: Not an editor command: Telescope chezmoi find_files
stack traceback:
	[C]: in function 'nvim_exec2'
	vim/_editor.lua: in function 'cmd'
	...re/nvim/lazy/dashboard-nvim/lua/dashboard/theme/doom.lua:24: in function <...re/nvim/lazy/dashboard-nvim/lua/dashboard/theme/doom.lua:20>

```
This PR fixes the issue by checking which LazyVim picker is in use. 

Before: 


https://github.com/LazyVim/LazyVim/assets/53434466/31cade36-1655-438f-9aa8-c3de8fec881f

After: 


https://github.com/LazyVim/LazyVim/assets/53434466/55f7d0c7-9632-4d52-8a6e-dfba17b14ed4


## Does this PR fix an existing issue?

<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-07-03 07:51:13 +02:00
78cf6ee024 feat(cmp): attempt for dynamic width and trimming between fields (#3873)
## What is this PR for?
Attempt for dynamic width and trimming between fields.
Testing was done on my 15.6 laptop screen so maybe values could be
raised in dynamic calculation? Also provides a `vim.g.cmp_fixed_width`
for the users to be able to define a fixed width in their personal
configuration if they'd like to.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Attempts to rectify a concern raised in #3858
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## 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>
2024-06-30 23:14:00 +02:00
d23731c50d fix(neo-tree): remove branch, since it obstructs updating to latest version (#3871)
## What is this PR for?
`branch` was obstructing from being able to update to latest HEAD like
in other plugins. This was necessary when the initial development was
being done on this branch and `main` was used for the old stable
release, but this is not necessary any more. Also, @folke now you can
use `always_show_by_pattern`, which you might find useful to show the
git tracked hidden files like you wanted but couldn't do before.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
No
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-30 19:15:23 +02:00
00f53315b5 chore(main): release 12.22.1 (#3866)
🤖 I have created a release *beep* *boop*
---


##
[12.22.1](https://github.com/LazyVim/LazyVim/compare/v12.22.0...v12.22.1)
(2024-06-30)


### Performance Improvements

* **markdown:** only run markdownlint-cli2 formatter when there are
markdownlint diagnostics for the buffer
([8a6875a](8a6875ab3b))


### Reverts

* feat(neo-tree): more sane defaults for gitignore and hidden files
([2bfcd05](2bfcd05c62))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-30 17:32:25 +02:00
2bfcd05c62 revert: feat(neo-tree): more sane defaults for gitignore and hidden files
This reverts commit 85405d65348cac72343d081a81addfb5c8d43743.
2024-06-30 17:29:36 +02:00
8a6875ab3b perf(markdown): only run markdownlint-cli2 formatter when there are markdownlint diagnostics for the buffer 2024-06-30 11:16:10 +02:00
06d2749308 ci: fix 2024-06-30 08:47:28 +02:00
19a8e5089c ci: fix 2024-06-30 08:46:10 +02:00
47c0e3bb9b chore(main): release 12.22.0 (#3861)
🤖 I have created a release *beep* *boop*
---


##
[12.22.0](https://github.com/LazyVim/LazyVim/compare/v12.21.1...v12.22.0)
(2024-06-30)


### Features

* allow a custom path for `lazyvim.json`. Fixes
[#3856](https://github.com/LazyVim/LazyVim/issues/3856)
([131187c](131187c092))
* **cmp:** disable `item.menu` for Rust filetypes
([#3858](https://github.com/LazyVim/LazyVim/issues/3858))
([ee44b21](ee44b21898))
* **neo-tree:** more sane defaults for gitignore and hidden files
([85405d6](85405d6534))


### Bug Fixes

* **lsp:** prevent setting up mason-lspconfig more than once when
setting mslp opts
([8c900f9](8c900f92e7))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-30 08:23:02 +02:00
9a69f27484 chore(build): auto-generate vimdoc 2024-06-30 06:20:45 +00:00
85405d6534 feat(neo-tree): more sane defaults for gitignore and hidden files 2024-06-30 08:19:40 +02:00
131187c092 feat: allow a custom path for lazyvim.json. Fixes #3856 2024-06-29 21:19:15 +02:00
ee44b21898 feat(cmp): disable item.menu for Rust filetypes (#3858)
## What is this PR for?
Tries to improve aesthetics for `nvim-cmp` in Rust by disabling
`item.menu` since it contains the `return` types that take up too much
space.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Fixes #3855
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-29 21:04:40 +02:00
8c900f92e7 fix(lsp): prevent setting up mason-lspconfig more than once when setting mslp opts 2024-06-29 21:01:42 +02:00
72547b809f chore(main): release 12.21.1 (#3854)
🤖 I have created a release *beep* *boop*
---


##
[12.21.1](https://github.com/LazyVim/LazyVim/compare/v12.21.0...v12.21.1)
(2024-06-29)


### Bug Fixes

* **git:** use current dir when git not found to get a meaningful error
message
([b43ace1](b43ace1ecf))


### Performance Improvements

* **markdown:** don't format with markdown-toc when no toc in the doc
([73e72ee](73e72ee21d))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-29 17:01:51 +02:00
73e72ee21d perf(markdown): don't format with markdown-toc when no toc in the doc 2024-06-29 15:37:51 +02:00
b43ace1ecf fix(git): use current dir when git not found to get a meaningful error message 2024-06-29 15:37:51 +02:00
501ff40768 chore(main): release 12.21.0 (#3827)
🤖 I have created a release *beep* *boop*
---


##
[12.21.0](https://github.com/LazyVim/LazyVim/compare/v12.20.1...v12.21.0)
(2024-06-29)


### Features

* **extras:** add `overseer.nvim` plugin extra
([#2421](https://github.com/LazyVim/LazyVim/issues/2421))
([683bf52](683bf52c02))
* **extras:** add chezmoi extra
([#2859](https://github.com/LazyVim/LazyVim/issues/2859))
([88f2541](88f25410e0))
* **extras:** switch to markdownlint-cli2
([#3843](https://github.com/LazyVim/LazyVim/issues/3843))
([f47d105](f47d105b80))
* **java:** enable Lombok support in jdtls
([#3852](https://github.com/LazyVim/LazyVim/issues/3852))
([0fede40](0fede4040b))


### Bug Fixes

* **bufremove:** fix `Cancel`
([#3834](https://github.com/LazyVim/LazyVim/issues/3834))
([87fe403](87fe403df6))
* **edgy:** improve edgy.lua bufferline offset logic
([#3794](https://github.com/LazyVim/LazyVim/issues/3794))
([566753b](566753b888))
* **extras:** don't load pkgs when parsing specs for LazyExtras
([3764735](3764735fb2))
* **gitsigns:** fix inconsistent signs
([#3830](https://github.com/LazyVim/LazyVim/issues/3830))
([44ed11c](44ed11c4f8))
* **lazygit:** fix browsing private git hostings
([#3833](https://github.com/LazyVim/LazyVim/issues/3833))
([b292a72](b292a721bf))
* **lint:** make prepend_args opt work when default args is empty
([#3828](https://github.com/LazyVim/LazyVim/issues/3828))
([ff1b44e](ff1b44e676))
* **neotest:** support adapter key on adapter for playwright
([#3824](https://github.com/LazyVim/LazyVim/issues/3824))
([e5e8d7a](e5e8d7a805))
* **pick:** set recurse_submodules to false when using `auto` picker.
Fixes [#3831](https://github.com/LazyVim/LazyVim/issues/3831), Closes
[#3835](https://github.com/LazyVim/LazyVim/issues/3835)
([d6429a5](d6429a5c8a))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-29 12:19:44 +02:00
0fede4040b feat(java): enable Lombok support in jdtls (#3852)
jdtls needs an argument passed to the JVM to load Lombok as an agent.

Mason downloads `lombok.jar`so we can use that

## What is this PR for?

Configures Lombok support in `jdtls` ; this removes a lot of red
underlines in Java projects that use it.

Changes this

![image](https://github.com/LazyVim/LazyVim/assets/368399/87dbe37a-7d2c-4410-a600-c702e3097f63)

To this

![image](https://github.com/LazyVim/LazyVim/assets/368399/db6ada27-82f3-4052-a0c8-1e62882aaffc)


- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

Co-authored-by: Adrian Wilkins <adrian.wilkins.contractor@dvla.gov.uk>
2024-06-29 11:45:53 +02:00
566753b888 fix(edgy): improve edgy.lua bufferline offset logic (#3794)
## What is this PR for?
Use already defined Bufferline offsets or use Edgy offset if none are
found.

Also properly set offset separator position depending on offset/pane
location.

## Does this PR fix an existing issue?
No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-29 10:47:39 +02:00
b292a721bf fix(lazygit): fix browsing private git hostings (#3833)
## What is this PR for?

Current implementation of `Git Browse` doesn't work with onprem gitlab
(and any other git hosting except gitlab, github and bitbucket).
With this little fix, it should work with any git hosting.

## Does this PR fix an existing issue?

No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-29 10:42:46 +02:00
f47d105b80 feat(extras): switch to markdownlint-cli2 (#3843)
## What is this PR for?
This PR switches makrdownlint-cli to markdownlint-cli2.
markdownlint-cli2 should be a bit faster than markdownlint-cli and has a
more flexible configuration through files in the whole directory tree.
The cli is maintained by David Anson who also wrote the markdown style
checker itself which is used by the "old" cli and cli2.

Blog post from David Anson regarding the new cli itself:
https://dlaa.me/blog/post/markdownlintcli2

## Does this PR fix an existing issue?
 No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-29 10:41:20 +02:00
d6429a5c8a fix(pick): set recurse_submodules to false when using auto picker. Fixes #3831, Closes #3835 2024-06-29 10:33:29 +02:00
88f25410e0 feat(extras): add chezmoi extra (#2859)
It is just a small extra for those that use Chezmoi)

---------

Co-authored-by: Iordanis Petkakis <12776461+dpetka2001@users.noreply.github.com>
2024-06-29 10:21:35 +02:00
3764735fb2 fix(extras): don't load pkgs when parsing specs for LazyExtras 2024-06-29 10:19:01 +02:00
683bf52c02 feat(extras): add overseer.nvim plugin extra (#2421)
Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-29 09:47:03 +02:00
349508cdf4 ci: don't run release/docs on forks with a main branch 2024-06-29 09:45:23 +02:00
9dd2e0d39a chore(build): auto-generate vimdoc 2024-06-29 06:33:57 +00:00
2865253e6e test: simplify tests 2024-06-29 08:33:07 +02:00
35f89fb3a1 ci: use lazy minit for tests 2024-06-29 08:33:07 +02:00
87fe403df6 fix(bufremove): fix Cancel (#3834)
## What is this PR for?
When you hit `Cancel` and a buffer is modified, it should not delete the
buffer.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Fixes #3832
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-27 23:51:57 +02:00
44ed11c4f8 fix(gitsigns): fix inconsistent signs (#3830)
## What is this PR for?

Fixing inconsistency with the `gitsigns` signs.

Since the signs are overridden ...


5e1c474192/lua/lazyvim/plugins/editor.lua (L201-L209)

The staged signs should be overridden too.

> ```
> signs_staged *gitsigns-config-signs_staged*
>       Type: `table[extended]`
>       Default: >
>         {
>           add          = { text = '┃' },
>           change       = { text = '┃' },
>           delete       = { text = '▁' },
>           topdelete    = { text = '▔' },
>           changedelete = { text = '~' },
>         }
> <
>     Configuration for signs of staged hunks.
> 
>     See |gitsigns-config-signs|.
> ```



0595724fa9/doc/gitsigns.txt (L569-L579)

> ``` 
> signs_staged_enable *gitsigns-config-signs_staged_enable*
>       Type: `boolean`, Default: `true`
> 
> 
>     Show signs for staged hunks.
> 
> 
> When enabled the signs defined in |git-config-signs_staged|` are used.
> ``` 


0595724fa9/doc/gitsigns.txt (L584-L589)

## Does this PR fix an existing issue?

Nopeskii

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-27 20:03:08 +02:00
ff1b44e676 fix(lint): make prepend_args opt work when default args is empty (#3828)
## What is this PR for?

There's some logic in `linting.lua` to allow for easy setting of linter
args, but it doesn't work when default args is empty. This hopefully
fixes it.

## Does this PR fix an existing issue?

N/A.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-27 17:31:11 +02:00
329f9dda80 refactor(project): use header descriptions without using fzf-lua.actions (#3821)
## What is this PR for?
In #3690 there was a [concern
expressed](https://github.com/LazyVim/LazyVim/pull/3690#issuecomment-2174024517)
about changing `fzf-lua`'s core actions. This PR tries to achieve the
same result by manually setting the headers in `fzf_opts["--header"]`
and constructing it without use of `fzf-lua.actions`.

Feel free to disregard if you think there's no change necessary in the
current code, as this is simply a refactor attempt and does not provide
any new functionality.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
No
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-27 16:05:47 +02:00
e5e8d7a805 fix(neotest): support adapter key on adapter for playwright (#3824)
## What is this PR for?

Similar to https://github.com/LazyVim/LazyVim/issues/847 , only this
adapter adds a setup function into the 'adapter' key in the plugin table
([source](f61463f5c7/lua/neotest-playwright/init.lua (L31-L33))).

It is somewhat annoying that neotest does not provide a recommended way
for adapters to define their configuration function (at least not
explicitly)...

Perhaps we should work around it temporarily, but reach out to either
neotest or neotest-playwright authors?

## Does this PR fix an existing issue?

I didn't see anyone complaining about playwright adapter in issues or
discussions :/

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-27 16:04:26 +02:00
5b44e1040e chore(build): auto-generate vimdoc 2024-06-27 11:29:14 +00:00
e864713163 chore(main): release 12.20.1 (#3819)
🤖 I have created a release *beep* *boop*
---


##
[12.20.1](https://github.com/LazyVim/LazyVim/compare/v12.20.0...v12.20.1)
(2024-06-26)


### Bug Fixes

* **autocmds:** check that buf exists
([135ce0d](135ce0d7ed))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-27 13:28:27 +02:00
5e1c474192 test: use busted for tests 2024-06-26 18:57:04 +02:00
46e5bdd6f1 chore(build): auto-generate vimdoc 2024-06-26 15:10:18 +00:00
135ce0d7ed fix(autocmds): check that buf exists 2024-06-26 17:09:37 +02:00
53f4595b4e chore(main): release 12.20.0 (#3804)
🤖 I have created a release *beep* *boop*
---


##
[12.20.0](https://github.com/LazyVim/LazyVim/compare/v12.19.1...v12.20.0)
(2024-06-25)


### Features

* **autocmds:** added proper bigfile support
([938a671](938a6718c6))


### Bug Fixes

* **dashboard:** load dashboard when closing lazy if needed
([fa2fc64](fa2fc64031))
* **elixir:** fix credo detection for elixir linters.
([#3809](https://github.com/LazyVim/LazyVim/issues/3809))
([c132158](c13215814c))
* **fzf:** disable `preview` for `vtsls`
([#3798](https://github.com/LazyVim/LazyVim/issues/3798))
([b5945c2](b5945c2fc8))
* **noice:** dont show old messages when installing plugins
([faee8ce](faee8ce581))
* **util.terminal:** fix the shellredir and shellpipe options for
powershell ([#3803](https://github.com/LazyVim/LazyVim/issues/3803))
([a33eabd](a33eabddd9))


### Performance Improvements

* **markdown:** add filetype in VeryLazy
([3513362](351336244c))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-25 22:09:47 +02:00
c6b29713a0 docs(extra.sql): add sql options docs (#3765)
## What is this PR for?

A small contribution to enhance the documentation and make it easier to
use.

While vim-dadbod and vim-dadbod-ui recommend using dotenv.vim for env
file injection, we aim to provide a simpler method. Instead of
implementing file parsing or relying on an external plugin (dotenv.vim),
just try directly using a Lua table.

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?

none!

<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-25 22:01:04 +02:00
c13215814c fix(elixir): fix credo detection for elixir linters. (#3809)
## What is this PR for?
Fix detection of elixir `credo` linter. 

`vim.fn.executable("credo") == 0` will never succeed because `credo` is
not binary/executable. It is a `mix` package and only available via `mix
credo` command.

Instead, the plugins(both `none-ls` and `nvim-lint`) will check for the
presence of the `.credo.exs` file.

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Fixes #3808 
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist
- [x] Both linters display credo warnings if `credo` is installed and
the `.credo.exs` config exists in a project.
- [x] There are no errors if the `.credo.exs` file does not exist in the
project.
- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-25 21:04:32 +02:00
938a6718c6 feat(autocmds): added proper bigfile support 2024-06-25 20:30:57 +02:00
a33eabddd9 fix(util.terminal): fix the shellredir and shellpipe options for powershell (#3803)
## What is this PR for?
fix(util.terminal) recorrect the shellredir and shellpip options for
powershell.
                                                          
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?

<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [ ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-25 06:38:11 +02:00
d87c7702bf chore(build): auto-generate vimdoc 2024-06-25 04:36:54 +00:00
f1c5329dca test: disable packages for tests 2024-06-25 06:36:16 +02:00
fa2fc64031 fix(dashboard): load dashboard when closing lazy if needed 2024-06-25 00:24:59 +02:00
faee8ce581 fix(noice): dont show old messages when installing plugins 2024-06-25 00:24:38 +02:00
351336244c perf(markdown): add filetype in VeryLazy 2024-06-24 22:11:59 +02:00
b5945c2fc8 fix(fzf): disable preview for vtsls (#3798)
## What is this PR for?
Disable `preview` in `fzf-lua` Extra for `vtsls`. I tested it with
Python and Typescript Extras and in Typescript pressing `<leader>ca`
shows without previewer, while in Python the same shows with previewer.

Kindly check also that this is correct and I didn't miss out anything
else.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Fixes #3773
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-24 22:11:32 +02:00
2a7ba6d09c chore(main): release 12.19.1 (#3775)
🤖 I have created a release *beep* *boop*
---


##
[12.19.1](https://github.com/LazyVim/LazyVim/compare/v12.19.0...v12.19.1)
(2024-06-23)


### Bug Fixes

* **dap:** only load `mason-nvim-dap` when not disabled
([#3784](https://github.com/LazyVim/LazyVim/issues/3784))
([b55c773](b55c7734df))
* **extras.astro:** support `astro.config.ts` root
([#3786](https://github.com/LazyVim/LazyVim/issues/3786))
([8be66bb](8be66bb1a6))
* **lazygit:** use `lazy.util.open` on Neovim &lt;= 0.10
([#3778](https://github.com/LazyVim/LazyVim/issues/3778))
([8ea3f69](8ea3f690e6))
* **markdown:** added support for mdx files
([abec8fb](abec8fbb03))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-23 22:24:44 +02:00
8be66bb1a6 fix(extras.astro): support astro.config.ts root (#3786)
## What is this PR for?

Support
[`astro.config.ts`](https://docs.astro.build/en/guides/configuring-astro/#supported-config-file-types)
as a root file for the Astro extra.

## Does this PR fix an existing issue?

N/A

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-23 22:19:47 +02:00
b55c7734df fix(dap): only load mason-nvim-dap when not disabled (#3784)
## What is this PR for?
Only `require("mason-nvim-dap")` when it's not disabled
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Fixes #3783
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-23 20:04:51 +02:00
8ea3f690e6 fix(lazygit): use lazy.util.open on Neovim <= 0.10 (#3778)
## What is this PR for?
Use `lazy.util.open` on Neovim <=0.10
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Closes #3776
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-23 15:38:27 +02:00
abec8fbb03 fix(markdown): added support for mdx files 2024-06-23 08:56:15 +02:00
002ce62413 chore(main): release 12.19.0 (#3760)
🤖 I have created a release *beep* *boop*
---


##
[12.19.0](https://github.com/LazyVim/LazyVim/compare/v12.18.0...v12.19.0)
(2024-06-23)


### Features

* **gitsigns:** navigate diff changes as well as git hunks with [h/]h
([#3736](https://github.com/LazyVim/LazyVim/issues/3736))
([1f42393](1f423930e0))
* **gitsigns:** new keymap for `Gitsigns blame`
([#3758](https://github.com/LazyVim/LazyVim/issues/3758))
([b22831b](b22831b7e2))
* **go:** switch to neotest-golang
([#3749](https://github.com/LazyVim/LazyVim/issues/3749))
([55464b7](55464b77c6))


### Bug Fixes

* **neo-tree:** don't enable document symbols by default
([52d4616](52d46166b1))
* **refactoring:** use `pick` for both Telescope and fzf-lua
([#3769](https://github.com/LazyVim/LazyVim/issues/3769))
([b45d4ed](b45d4ed62c))
* **statuscolumn:** fix `folds_open = true`
([#3756](https://github.com/LazyVim/LazyVim/issues/3756))
([b47c65f](b47c65f408))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-23 07:38:34 +02:00
1f423930e0 feat(gitsigns): navigate diff changes as well as git hunks with [h/]h (#3736)
## What is this PR for?

I'm used to jumping from git hunks with `[h` so I'd like to use the same
mapping when navigating diffs.

## Does this PR fix an existing issue?

No

## Checklist

- [X] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-23 07:13:51 +02:00
52d46166b1 fix(neo-tree): don't enable document symbols by default 2024-06-23 07:11:55 +02:00
19e366277b refactor(extras.ui): simplify neo-tree related logic in edgy extra (#3738)
Refactor neo-tree related logic

## What is this PR for?
Simplification of `neo-tree` related logic in `edgy.lua`

## Does this PR fix an existing issue?
No, but it may prevent future issues with `edgy` if `neo-tree` source
configuration changes.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-23 07:08:41 +02:00
b45d4ed62c fix(refactoring): use pick for both Telescope and fzf-lua (#3769)
## What is this PR for?
Provide a `pick` function to `refactoring.nvim` similar to
`project.nvim`
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Fixes #3762
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-23 07:01:58 +02:00
55464b77c6 feat(go): switch to neotest-golang (#3749)
## What is this PR for?

This PR switches
[nvim-neotest/neotest-go](https://github.com/nvim-neotest/neotest-go)
for
[fredrikaverpil/neotest-golang](https://github.com/fredrikaverpil/neotest-golang).

## Does this PR fix an existing issue?

Neotest-go comes with some problems which are mitigated in
neotest-golang. A full description/background is available in the
project README, but here are some highlights:

### Neotest-go issues mitigated in neotest-golang

- Test Output in JSON, making it difficult to read:
[neotest-go#52](https://github.com/nvim-neotest/neotest-go/issues/52)
- "Run nearest" runs all tests:
[neotest-go#83](https://github.com/nvim-neotest/neotest-go/issues/83)
- Running test suite doesn't work:
[neotest-go#89](https://github.com/nvim-neotest/neotest-go/issues/89)
- Diagnostics for table tests on the line of failure:
[neotest-go#75](https://github.com/nvim-neotest/neotest-go/issues/75)
- Support for Nested Subtests:
[neotest-go#74](https://github.com/nvim-neotest/neotest-go/issues/74)
- DAP support:
[neotest-go#12](https://github.com/nvim-neotest/neotest-go/issues/12)

### Features

- Supports all [Neotest
usage](https://github.com/nvim-neotest/neotest#usage).
- Integrates with [nvim-dap-go](https://github.com/leoluz/nvim-dap-go)
for debugging of tests using delve.
- Inline diagnostics.
- Works great with
[andythigpen/nvim-coverage](https://github.com/andythigpen/nvim-coverage)
for displaying coverage in the sign column (per-Go package, or per-test
basis).
- Monorepo support (detect, run and debug tests in sub-projects).
- Supports table tests (relies on treesitter AST detection).
- Supports nested test functions.

## Notes

- I'm the author of
[fredrikaverpil/neotest-golang](https://github.com/fredrikaverpil/neotest-golang).


## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-23 07:01:22 +02:00
3dfc2c0fd8 ci(release): fix version bumping in extra-file (#3772)
## What is this PR for?

Fix release-please CI so the version in the `extra-file` is bumped.

## Does this PR fix an existing issue?

No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

ref: folke/lazy.nvim#1534

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-06-23 07:00:07 +02:00
b47c65f408 fix(statuscolumn): fix folds_open = true (#3756)
After some recent changes in https://github.com/neovim/neovim/pull/28709
I was getting an error when the user had `folds_open = true` in his
personal configuration whenever he pressed `o/O`. This is an attempt to
fix that.

## What is this PR for?

I was getting an error with `folds_open = true` in the user
configuration whenever pressing `o/O` or pressing `Enter` for a new
line.
The error was `Error executing lua:
...e/jrn23/projects/plugins/LazyVim/lua/lazyvim/util/ui.lua:127: attempt
to index a number value`.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
No
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-21 21:15:32 +02:00
b0274a2222 chore(build): auto-generate vimdoc 2024-06-21 19:15:24 +00:00
b22831b7e2 feat(gitsigns): new keymap for Gitsigns blame (#3758)
Also add filetype `gitsigns.blame` to autocmd `lazyvim_close_with_q` and
workaround for `+hunks` group name to show prefix correctly. If you
don't like the workaround for `+hunks` group name feel free to remove
it.

## What is this PR for?
Make use of the new `gitsigns` feature `Gitsigns blame`, which shows in
a vertical buffer split the `blame` history of the whole buffer.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
No.
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-21 21:14:48 +02:00
dde4a9dcdf chore(main): release 12.18.0 (#3722)
🤖 I have created a release *beep* *boop*
---


##
[12.18.0](https://github.com/LazyVim/LazyVim/compare/v12.17.0...v12.18.0)
(2024-06-19)


### Features

* **extra:** add prisma support and config
([#3684](https://github.com/LazyVim/LazyVim/issues/3684))
([1101c3e](1101c3ed24))
* **project:** add fzf-lua keymap descriptions
([#3690](https://github.com/LazyVim/LazyVim/issues/3690))
([07ab681](07ab681b1d))


### Bug Fixes

* **dap:** get the correct debugpy pkg path on windows
([#3716](https://github.com/LazyVim/LazyVim/issues/3716))
([06f13da](06f13daf72))
* **extras.python:** avoid launching extra console with dap on Windows
([#3723](https://github.com/LazyVim/LazyVim/issues/3723))
([67eece6](67eece6d74))
* **root:** also check root_dir. Fixes
[#3732](https://github.com/LazyVim/LazyVim/issues/3732)
([d4991d5](d4991d5aac))
* **statuscolumn:** `%r` deprecated in nightly and `%l` handles
everything ([#3719](https://github.com/LazyVim/LazyVim/issues/3719))
([1a295c5](1a295c5ef8))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-19 22:52:18 +02:00
7afb7a7220 chore(build): auto-generate vimdoc 2024-06-19 16:26:34 +00:00
d4991d5aac fix(root): also check root_dir. Fixes #3732 2024-06-19 18:25:58 +02:00
67eece6d74 fix(extras.python): avoid launching extra console with dap on Windows (#3723)
On Windows, when using dap, python.exe will launch an extra console. If
you target pythonw.exe this avoids that. Explanation source:
https://stackoverflow.com/questions/9705982/pythonw-exe-or-python-exe

## What is this PR for?

Modify which exe is targeted for python + dap on windows. If you use
python.exe an extra console launches (eg, nvim is runnining on Wezterm,
boot up dap, and as a result an external console (usually through
windows terminal or built-in console terminal) will launch (dap still
runs in the original window). This is avoided with pythonw.exe

## Does this PR fix an existing issue?

No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-18 21:31:41 +02:00
1101c3ed24 feat(extra): add prisma support and config (#3684)
## What is this PR for?

Adding support for prisma

## Does this PR fix an existing issue?

No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

---------

Co-authored-by: Ben Puryear <54869170+Ben10164@users.noreply.github.com>
2024-06-18 19:03:19 +02:00
06f13daf72 fix(dap): get the correct debugpy pkg path on windows (#3716)
## What is this PR for?
fix(dap): get the correct debugpy pkg path on windows.

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?

<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [ ] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-18 19:02:41 +02:00
07ab681b1d feat(project): add fzf-lua keymap descriptions (#3690)
![image](https://github.com/LazyVim/LazyVim/assets/29248764/17f36737-8416-4612-a2bf-17a264ca5814)

Co-authored-by: 肖健正 <xiaojianzheng@qq.com>
2024-06-18 18:47:40 +02:00
1a295c5ef8 fix(statuscolumn): %r deprecated in nightly and %l handles everything (#3719)
## What is this PR for?

Fix correctly showing relative numbers in `statuscolumn` after recent
breaking changes on
[nightly](https://github.com/neovim/neovim/pull/29357).

Please feel free to disregard this PR if a better solution is possible.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
Fixes #3721 
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-18 18:42:34 +02:00
8a89c0360e chore(main): release 12.17.0 (#3689)
🤖 I have created a release *beep* *boop*
---


##
[12.17.0](https://github.com/LazyVim/LazyVim/compare/v12.16.0...v12.17.0)
(2024-06-18)


### Features

* **copilot-chat:** ctrl-s now works in both normal and insert mode
([0fcadce](0fcadced89))
* **php:** allow using intelephense instead of phpactor in php extras
([#3691](https://github.com/LazyVim/LazyVim/issues/3691))
([ea3b5cc](ea3b5cc2ab))
* **treesitter-textobjects:** added ]a and [a to move between parameters
([18c7731](18c7731281))


### Bug Fixes

* **cmp:** visible
([57ef349](57ef349910))
* **conform:** `lsp_format` breaking changes
([#3707](https://github.com/LazyVim/LazyVim/issues/3707))
([a69e626](a69e626d7a))
* **edgy:** only enable edgy neo-tree when needed. Fixes
[#3697](https://github.com/LazyVim/LazyVim/issues/3697). Closes
[#3703](https://github.com/LazyVim/LazyVim/issues/3703)
([bdca1e9](bdca1e95ff))
* **git:** removed debug info
([d9caee6](d9caee6100))
* **lazygit:** support monorepo structure and other git providers
([#3701](https://github.com/LazyVim/LazyVim/issues/3701))
([1f034e1](1f034e1600))
* **lsp:** dont highlight document words when cmp is visible
([0d57115](0d57115f01))
* **snippets:** nvim-snippets `&lt;S-Tab&gt;` prev key
([#3712](https://github.com/LazyVim/LazyVim/issues/3712))
([492fa86](492fa86faa))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-18 17:28:50 +02:00
a621743225 chore(build): auto-generate vimdoc 2024-06-18 05:16:00 +00:00
492fa86faa fix(snippets): nvim-snippets <S-Tab> prev key (#3712)
Fix nvim-snippets' <S-Tab> rollback keymap.
2024-06-18 07:15:24 +02:00
bdca1e95ff fix(edgy): only enable edgy neo-tree when needed. Fixes #3697. Closes #3703 2024-06-17 20:06:54 +02:00
d9caee6100 fix(git): removed debug info 2024-06-17 19:53:30 +02:00
1f034e1600 fix(lazygit): support monorepo structure and other git providers (#3701)
## What is this PR for?
- The current implementation doesn't support multi-module/monorepo
project where `<repo>/.git` can be `gitdir` alias to the main `.git`
folder. This PR uses the Git CLI to resolve remote URLs to better
support flexible project structure.
- This PR also adds the support to Bitbucket and GitLab

What's the problem of reading `.git/config`?
- Not all information available there. For instance, some large projects
will split a monorepo into smaller submodules, where `.git` is a file
that contains the `gitdir` alias.
- There's no promise that `.git/config` has to be existed. Git supports
multiple ways to store the git info outside of the default git directory
like using `GIT_DIR` env variable.
- Have to do lot of reading and parsing logic.

Why `git remote -v`?
- Only contains remote info with explicit format. 
- Don't have to filter out other config info. 
- Don't have to deal with lots of weird edge cases.



## Does this PR fix an existing issue?
No.

## Checklist
- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-17 19:52:40 +02:00
a69e626d7a fix(conform): lsp_format breaking changes (#3707)
## What is this PR for?

`conform.nvim` had breaking changes, that renamed `lsp_fallback` to
`lsp_format` as can be seen
[here](9228b2ff4e)

## Does this PR fix an existing issue?

  Fixes #3706

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-17 19:49:30 +02:00
9177c3ad5e chore(build): auto-generate vimdoc 2024-06-17 04:48:26 +00:00
ea3b5cc2ab feat(php): allow using intelephense instead of phpactor in php extras (#3691)
## What is this PR for?

- Allows setting intelephense instead of phpactor for PHP's LSP

## Does this PR fix an existing issue?

No. But I personally use intelephesen myself and when researching on how
to use the PHP extras but swap phpactor (too verbose, imo) for
intelephense, I found this [comment
here](https://github.com/LazyVim/LazyVim/pull/3397#issuecomment-2141950186)
which suggested making it configurable like the Python extras. That's
what I'm doing here.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-17 06:47:47 +02:00
0fcadced89 feat(copilot-chat): ctrl-s now works in both normal and insert mode 2024-06-16 20:17:16 +02:00
18c7731281 feat(treesitter-textobjects): added ]a and [a to move between parameters 2024-06-16 19:18:32 +02:00
05e45e0d35 refactor: LazyVim.config 2024-06-16 15:35:38 +02:00
57ef349910 fix(cmp): visible 2024-06-16 15:30:44 +02:00
e2972f0cca refactor: cmp 2024-06-16 15:17:56 +02:00
0d57115f01 fix(lsp): dont highlight document words when cmp is visible 2024-06-16 15:17:56 +02:00
32b2574c1b chore(main): release 12.16.0 (#3671)
🤖 I have created a release *beep* *boop*
---


##
[12.16.0](https://github.com/LazyVim/LazyVim/compare/v12.15.0...v12.16.0)
(2024-06-16)


### Features

* **fzf:** basic image viewing support
([cda30f2](cda30f2740))
* **mini.pairs:** allow to skip pairs in certain treesitter nodes
([d6bea06](d6bea06a82))
* **mini.pairs:** and now the actual code :)
([540261d](540261d74d))
* **mini.pairs:** enable mini.pairs in the cmdline
([2daca4b](2daca4b510))
* **outline:** free ctrl-k /ctrl+j
([#3686](https://github.com/LazyVim/LazyVim/issues/3686))
([31c2ad7](31c2ad7dac))
* **project:** add some fzf-lua keymap
([#3666](https://github.com/LazyVim/LazyVim/issues/3666))
([f24999f](f24999fd36))


### Bug Fixes

* **edgy:** neo-tree. See
[#3667](https://github.com/LazyVim/LazyVim/issues/3667)
([f22a602](f22a6022c4))
* **egdy:** do not add panes for not enabled neo-tree sources
([#3667](https://github.com/LazyVim/LazyVim/issues/3667))
([67616b9](67616b9520))
* **pick:** remove the unused commands attribute
([#3673](https://github.com/LazyVim/LazyVim/issues/3673))
([eca8692](eca8692451))
* **telescope:** default to follow=true
([b87d18c](b87d18cc17))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-16 11:02:02 +02:00
31c2ad7dac feat(outline): free ctrl-k /ctrl+j (#3686)
Allows to toggle window in outline using Ctrl-k /ctrl+j

Co-authored-by: 肖健正 <xiaojianzheng@qq.com>
2024-06-16 10:48:18 +02:00
2daca4b510 feat(mini.pairs): enable mini.pairs in the cmdline 2024-06-16 10:33:20 +02:00
71390adcbe refactor(util): use available get_plugin() function (#3687)
## What is this PR for?

Small refactor to use the already available `get_plugin()` function.

## Does this PR fix an existing issue?

No.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-16 09:06:53 +02:00
cda30f2740 feat(fzf): basic image viewing support 2024-06-16 09:06:34 +02:00
f24999fd36 feat(project): add some fzf-lua keymap (#3666)
- `ctrl-s` search_in_project_files
- `ctrl-w` change_working_directory
- `ctrl-d` delete_project
- `ctrl-r` recent_project_files

Co-authored-by: 肖健正 <xiaojianzheng@qq.com>
2024-06-16 07:21:30 +02:00
af5a59be90 chore(build): auto-generate vimdoc 2024-06-16 05:14:20 +00:00
b87d18cc17 fix(telescope): default to follow=true 2024-06-16 07:13:40 +02:00
eca8692451 fix(pick): remove the unused commands attribute (#3673)
## What is this PR for?
When we register a picker, such as a Telescope picker or a fzf-lua
picker,

we use commands within their own picker. For example, we use
M.picker.commands instead of M.pick.commands.

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
no

<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-15 18:54:39 +02:00
540261d74d feat(mini.pairs): and now the actual code :) 2024-06-15 18:52:25 +02:00
d6bea06a82 feat(mini.pairs): allow to skip pairs in certain treesitter nodes 2024-06-15 18:52:03 +02:00
f22a6022c4 fix(edgy): neo-tree. See #3667 2024-06-15 15:21:10 +02:00
67616b9520 fix(egdy): do not add panes for not enabled neo-tree sources (#3667)
## What is this PR for?

When the user disables a specific neo-tree source (git_status or
buffers), the panes are still created but throw an error when the user
tries to open them

**NB**: This is currently not functional because `LazyVim.opts` is
returning an empty table instead of the neo-tree opts. I'm hoping
someone can give me a hand with this little problem

## Does this PR fix an existing issue?

<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-15 14:59:54 +02:00
0422dd278a chore(main): release 12.15.0 (#3658)
🤖 I have created a release *beep* *boop*
---


##
[12.15.0](https://github.com/LazyVim/LazyVim/compare/v12.14.1...v12.15.0)
(2024-06-15)


### Features

* **mini.pairs:** added some custom options to make mini.pairs behave
better
([bf809ad](bf809ad2a1))
* **project:** ctrl-t opens project in tab
([f28937b](f28937b0c5))


### Bug Fixes

* **dap:** make sure mason-dap is loaded after initializing dap. See
[#3663](https://github.com/LazyVim/LazyVim/issues/3663)
([e0e1ab0](e0e1ab01af))
* **dap:** make sure mason-nvim-dap loads after nvim-dap
([2b703ac](2b703ac125))
* **elixir:** add missing lspconfig
([#3661](https://github.com/LazyVim/LazyVim/issues/3661))
([06f5ef9](06f5ef928f))
* **fzf:** only add trouble integration when trouble is available
([e1f587a](e1f587a43d))
* **rust:** incorporate latest changes from `rustaceanvim`
([#3655](https://github.com/LazyVim/LazyVim/issues/3655))
([2d68976](2d689763e4))
* **vue:** disable volar hybrid mode since it interferes with tsserver
([#3654](https://github.com/LazyVim/LazyVim/issues/3654))
([5070694](5070694861))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-15 12:23:59 +02:00
f28937b0c5 feat(project): ctrl-t opens project in tab 2024-06-15 12:22:09 +02:00
bf809ad2a1 feat(mini.pairs): added some custom options to make mini.pairs behave better 2024-06-15 12:05:55 +02:00
2b703ac125 fix(dap): make sure mason-nvim-dap loads after nvim-dap 2024-06-15 10:22:41 +02:00
e0e1ab01af fix(dap): make sure mason-dap is loaded after initializing dap. See #3663 2024-06-15 10:19:48 +02:00
6c5be2ea44 chore(build): auto-generate vimdoc 2024-06-15 07:31:11 +00:00
06f5ef928f fix(elixir): add missing lspconfig (#3661)
## What is this PR for?
add missing elixir lspconfig

## Does this PR fix an existing issue?

lspconfig is missing for elixir and since mason was removed in
f8268faa7c,
elixirls is no longer automatically installed.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-15 09:30:39 +02:00
e1f587a43d fix(fzf): only add trouble integration when trouble is available 2024-06-15 00:34:51 +02:00
2d689763e4 fix(rust): incorporate latest changes from rustaceanvim (#3655)
## What is this PR for?

After recent changes in `rustaceanvim` in
https://github.com/mrcjkb/rustaceanvim/pull/403, `checkOnSave` is
supposed to be boolean and the table that we were passing to
`checkOnSave` previously should be passed to `check` instead. I left the
`check` table undefined, because the options that we were passing to
`checkOnSave` before are the default ones being passed to `check`. So,
only if the user wants to change something should he change the values
of the `check` table according to what he wants.

## Does this PR fix an existing issue?

No
## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-14 23:07:42 +02:00
5070694861 fix(vue): disable volar hybrid mode since it interferes with tsserver (#3654)
can not inc-rename when volar is enabled.

After the configuration in commit was added, the inc-rename operation
returned to normal.

I suspect that volar's Hybrid mode affects the rename operation.


https://github.com/vuejs/language-tools?tab=readme-ov-file#none-hybrid-modesimilar-to-takeover-mode-configuration-requires-vuelanguage-server-version-207

Co-authored-by: 肖健正 <xiaojianzheng@qq.com>
2024-06-14 23:06:53 +02:00
034f57377b chore(main): release 12.14.1 (#3639)
🤖 I have created a release *beep* *boop*
---


##
[12.14.1](https://github.com/LazyVim/LazyVim/compare/v12.14.0...v12.14.1)
(2024-06-14)


### Bug Fixes

* **edgy:** only track other neo-tree windows with a source
([6efbdab](6efbdabd1b))
* **extras:** better reasons as to why some extras are included in your
config.
([eeccbbc](eeccbbc407))
* **fzf:** esc and c-j, c-k keymaps with nowait. update fzf-lua as well
([c9380a3](c9380a309d))
* **fzf:** esc and nowait
([7c7703d](7c7703d792))
* **fzf:** floating previewer closed fail
([#3638](https://github.com/LazyVim/LazyVim/issues/3638))
([427e57d](427e57ddf7))
* **issue template:** repro.lua didn't work
([#3628](https://github.com/LazyVim/LazyVim/issues/3628))
([25cccb5](25cccb5db8))
* **pick:** allow configuring pickers without LazyExtras. Fixes
[#3626](https://github.com/LazyVim/LazyVim/issues/3626)
([304e743](304e7439aa))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-14 18:05:12 +02:00
3dbb4bd5f6 docs: add link to LazyVim For Ambitious Developers to README-CN.md (#3644)
Co-authored-by: 肖健正(家和) <jiahe@bigrule.com>
2024-06-14 18:04:53 +02:00
304e7439aa fix(pick): allow configuring pickers without LazyExtras. Fixes #3626 2024-06-14 17:55:43 +02:00
c9380a309d fix(fzf): esc and c-j, c-k keymaps with nowait. update fzf-lua as well 2024-06-14 17:53:44 +02:00
239fb90ce2 style: cleanup trouble 2024-06-14 16:46:35 +02:00
eeccbbc407 fix(extras): better reasons as to why some extras are included in your config. 2024-06-14 11:14:00 +02:00
6efbdabd1b fix(edgy): only track other neo-tree windows with a source 2024-06-14 11:13:59 +02:00
25cccb5db8 fix(issue template): repro.lua didn't work (#3628)
## What is this PR for?

repro.lua didn't work. at least i don't think it's the intended
behaviour.
it installed lazy.vim, lazy.nvim, tokyonight.
but didn't actually load lazyvim, and so none of it's plugins config
etc...

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-14 10:10:54 +02:00
7c7703d792 fix(fzf): esc and nowait 2024-06-14 08:31:58 +02:00
c424f5d5d8 chore(build): auto-generate vimdoc 2024-06-14 06:24:52 +00:00
427e57ddf7 fix(fzf): floating previewer closed fail (#3638)
- floating previewer closed fail.
https://github.com/LazyVim/LazyVim/issues/3582

Co-authored-by: 肖健正 <xiaojianzheng@qq.com>
2024-06-14 08:24:14 +02:00
7bebc40333 chore(main): release 12.14.0 (#3594)
🤖 I have created a release *beep* *boop*
---


##
[12.14.0](https://github.com/LazyVim/LazyVim/compare/v12.13.0...v12.14.0)
(2024-06-13)


### Features

* **fzf:** better default window size/position
([74cf6e4](74cf6e4462))
* **fzf:** better layout for code actions
([e948435](e948435f17))
* **fzf:** disable dressing in favor of noice (vim.ui.input) and fzf-lua
(vim.ui.select)
([5c876b7](5c876b7549))
* **fzf:** use vscode style path names formatter
([14d1ca9](14d1ca93d0))
* **noice:** added support for fzf-lua. Closes
[#3596](https://github.com/LazyVim/LazyVim/issues/3596)
([ec3dba2](ec3dba20af))
* **pick:** move pickers to extras (telescope still the default)
([#3606](https://github.com/LazyVim/LazyVim/issues/3606))
([39a908c](39a908c9fa))
* **yanky:** added fzf-lua support
([82f680e](82f680ee6b))


### Bug Fixes

* **dashboard:** proper fix for dashboard's weird action loading
([1d50c75](1d50c75a4b))
* **lsp:** add file completion to rename file
([52b5728](52b572881b))
* **pick:** ignore registering the same picker
([48a70aa](48a70aa8f5))
* **pick:** move some leftovers from `editor.lua` to `editor.telescope`
([#3620](https://github.com/LazyVim/LazyVim/issues/3620))
([b9f7264](b9f726404f))
* **pick:** use LazyVim.pick instead of M since dashboard
dumps/loadstrings functions. Why though... Fixes
[#3617](https://github.com/LazyVim/LazyVim/issues/3617)
([425e6e0](425e6e0ea3))
* **project:** add fzf-lua integration. Fixes
[#3609](https://github.com/LazyVim/LazyVim/issues/3609)
([4b9e4ed](4b9e4edbb1))
* **project:** telescope name
([d82c11f](d82c11f889))
* **python:** only enable venv-selector when telescope is availble. See
[#3612](https://github.com/LazyVim/LazyVim/issues/3612)
([74c1766](74c1766479))
* **ui:** use `LazyVim.pick` for alpha.nvim and mini.starter extras
([#3611](https://github.com/LazyVim/LazyVim/issues/3611))
([339979d](339979d314))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-13 17:49:40 +02:00
74c1766479 fix(python): only enable venv-selector when telescope is availble. See #3612 2024-06-13 17:02:30 +02:00
48a70aa8f5 fix(pick): ignore registering the same picker 2024-06-13 17:01:19 +02:00
1d50c75a4b fix(dashboard): proper fix for dashboard's weird action loading 2024-06-13 15:01:46 +02:00
b9f726404f fix(pick): move some leftovers from editor.lua to editor.telescope (#3620)
## What is this PR for?

`have_make` and `have_cmake` were left over at
`/lua/plugins/editor.lua`, so move them to `extras.editor.telescope`
instead.

## Does this PR fix an existing issue?

No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-13 13:54:58 +02:00
e948435f17 feat(fzf): better layout for code actions 2024-06-13 13:05:16 +02:00
8346fa7ddc refactor(lsp): remove lsp keymap dependency on telescope 2024-06-13 06:33:10 +02:00
425e6e0ea3 fix(pick): use LazyVim.pick instead of M since dashboard dumps/loadstrings functions. Why though... Fixes #3617 2024-06-13 06:13:39 +02:00
339979d314 fix(ui): use LazyVim.pick for alpha.nvim and mini.starter extras (#3611)
## What is this PR for?

Make other nvim dashboards use LazyVim.pick so they can also make use of
fzf-lua when the extra is enabled. In addition, aligned the sections to
be the same as dashboard.nvim.

**Note**: this is somewhat untested. I haven't tested each dashboard and
their sections to make sure they all work.

## Does this PR fix an existing issue?

<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.

---------

Co-authored-by: Iordanis Petkakis <12776461+dpetka2001@users.noreply.github.com>
2024-06-13 06:09:30 +02:00
caf8f114d9 chore(build): auto-generate vimdoc 2024-06-13 04:07:37 +00:00
39a908c9fa feat(pick): move pickers to extras (telescope still the default) (#3606)
## What is this PR for?

Refactoring of pickers in LazyVim:

- [x] telescope moved to extras
- [x] dressing was moved to the telescope extra. Not needed with fzf-lua
and noice
- [x] when none of the two is enabled, then telescope will be enabled
- [x] when using `:LazyExtras` to enable fzf-lua, the telescope spec
will never be parsed
- [x] when not using `:LazyExras`, the spec will be parsed, but one of
the two will be disabled.
- [x] only one picker extra can be used to prevent issues
- [ ] cleanup lsp keymaps
2024-06-13 06:07:02 +02:00
d82c11f889 fix(project): telescope name 2024-06-12 20:55:51 +02:00
4b9e4edbb1 fix(project): add fzf-lua integration. Fixes #3609 2024-06-12 18:18:17 +02:00
46eb3242d3 refactor: copilot-chat 2024-06-12 11:41:03 +02:00
5c876b7549 feat(fzf): disable dressing in favor of noice (vim.ui.input) and fzf-lua (vim.ui.select) 2024-06-12 11:31:25 +02:00
14d1ca93d0 feat(fzf): use vscode style path names formatter 2024-06-12 11:23:45 +02:00
52b572881b fix(lsp): add file completion to rename file 2024-06-12 10:43:01 +02:00
82f680ee6b feat(yanky): added fzf-lua support 2024-06-12 07:57:07 +02:00
60a1c1979d chore(build): auto-generate vimdoc 2024-06-12 05:45:25 +00:00
ec3dba20af feat(noice): added support for fzf-lua. Closes #3596 2024-06-12 07:44:47 +02:00
74cf6e4462 feat(fzf): better default window size/position 2024-06-12 00:27:23 +02:00
128c3fcfe6 chore(main): release 12.13.0 (#3584)
🤖 I have created a release *beep* *boop*
---


##
[12.13.0](https://github.com/LazyVim/LazyVim/compare/v12.12.0...v12.13.0)
(2024-06-11)


### Features

* **copilot-chat:** use fzf-lua if enabled in extras
([#3590](https://github.com/LazyVim/LazyVim/issues/3590))
([7252474](7252474624))
* **fzf:** added ctrl-u and ctrl+d to scroll in the results list
([9f2a369](9f2a3699a8))
* **fzf:** added ctrl-x to jump with easymotion to a line, similar to
flash telescope
([1c740ce](1c740ce3fd))
* **fzf:** use delta previewer for code actions when available
([1697100](16971006c2))


### Bug Fixes

* **fzf:** action desc
([c6ddb23](c6ddb2328d))
* **fzf:** added action descriptions. (still doesnt work for trouble)
([19a6e2d](19a6e2de15))
* **fzf:** cleanup
([79b7c48](79b7c489fd))
* **fzf:** disable mini.indentscope in fzf-lua buffer
([#3592](https://github.com/LazyVim/LazyVim/issues/3592))
([0ba67c8](0ba67c87e9))
* **fzf:** live document symbols. Fixes
[#3587](https://github.com/LazyVim/LazyVim/issues/3587)
([056042b](056042b221))
* **fzf:** symbols filter
([7e0ac68](7e0ac6850b))
* **vue:** disable inlay hints for vue, since they seem broken
([3233385](3233385ddb))


### Reverts

* "fix(dap): set host to 127.0.0.1 instead of localhost to prevent
issues with ipv6. Fixes
[#3577](https://github.com/LazyVim/LazyVim/issues/3577)"
([a3547e4](a3547e4b3b))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-11 23:50:03 +02:00
16971006c2 feat(fzf): use delta previewer for code actions when available 2024-06-11 23:48:16 +02:00
3233385ddb fix(vue): disable inlay hints for vue, since they seem broken 2024-06-11 23:21:56 +02:00
0ba67c87e9 fix(fzf): disable mini.indentscope in fzf-lua buffer (#3592)
## What is this PR for?

If `fzf-lua` and `mini.indentscope` are enabled together, the indent
line created by `indentscope` makes the fzf window hard and confusing to
work with

<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

PS: also sorted the file list.

## Does this PR fix an existing issue?

I don't think there's an existing issue for this.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-11 21:06:46 +02:00
1c740ce3fd feat(fzf): added ctrl-x to jump with easymotion to a line, similar to flash telescope 2024-06-11 19:38:48 +02:00
9f2a3699a8 feat(fzf): added ctrl-u and ctrl+d to scroll in the results list 2024-06-11 19:38:22 +02:00
a3547e4b3b revert: "fix(dap): set host to 127.0.0.1 instead of localhost to prevent issues with ipv6. Fixes #3577"
This reverts commit 9b8a393edc8b9a12a39f712163f6476c084a7f71.
2024-06-11 19:14:27 +02:00
7252474624 feat(copilot-chat): use fzf-lua if enabled in extras (#3590)
Adds the abiltiy for fzf-lua to be used as a picker for these copilot
chat actions if it was enabled in LazyExtras

## What is this PR for?

This adds keybinds that exist currently for copilot-chat and Telescope
but with the addition of fzf-lua as an extra, I noticed we needed the
ability for the user to take advantage of them with FzfLua.

## Does this PR fix an existing issue?

No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-11 17:45:25 +02:00
7e0ac6850b fix(fzf): symbols filter 2024-06-11 16:11:45 +02:00
056042b221 fix(fzf): live document symbols. Fixes #3587 2024-06-11 16:08:27 +02:00
79b7c489fd fix(fzf): cleanup 2024-06-11 15:47:14 +02:00
c6ddb2328d fix(fzf): action desc 2024-06-11 14:58:35 +02:00
19a6e2de15 fix(fzf): added action descriptions. (still doesnt work for trouble) 2024-06-11 14:49:09 +02:00
26e3e39f2e chore(main): release 12.12.0 (#3574)
🤖 I have created a release *beep* *boop*
---


##
[12.12.0](https://github.com/LazyVim/LazyVim/compare/v12.11.0...v12.12.0)
(2024-06-11)


### Features

* **extras:** added fzf-lua
([#3555](https://github.com/LazyVim/LazyVim/issues/3555))
([6ab4041](6ab404134d))
* **fzf:** better scrollbars
([8bb6538](8bb653876c))
* **fzf:** ignore current line for some lsp pickers
([c481861](c4818616d5))
* **fzf:** prettier document symbols
([ba3aec7](ba3aec7b48))
* **lualine:** show readonly icon
([#3567](https://github.com/LazyVim/LazyVim/issues/3567))
([21617a9](21617a9d60))


### Bug Fixes

* **dap:** set host to 127.0.0.1 instead of localhost to prevent issues
with ipv6. Fixes [#3577](https://github.com/LazyVim/LazyVim/issues/3577)
([9b8a393](9b8a393edc))
* **extras.copilot-chat:** small ui fix for which-key in visual mode
([#3573](https://github.com/LazyVim/LazyVim/issues/3573))
([43afed1](43afed1211))
* **fzf:** lowercase symbols
([d1d24fa](d1d24fa077))
* **neo-tree:** use last window for preview
([#3560](https://github.com/LazyVim/LazyVim/issues/3560))
([caaa6c4](caaa6c440d))
* **php:** formatting and linting
([#3540](https://github.com/LazyVim/LazyVim/issues/3540))
([f5dc867](f5dc867ac2))
* **pick:** recent files in cwd. Fixes
[#3580](https://github.com/LazyVim/LazyVim/issues/3580)
([d541069](d541069fdf))
* **sql:** make sure edgebars exist. Fixes
[#3578](https://github.com/LazyVim/LazyVim/issues/3578)
([bd29f45](bd29f45153))
* **util:** ensure unique cache keys in LazyVim.memoize
([#3576](https://github.com/LazyVim/LazyVim/issues/3576))
([3354872](335487282a))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-11 14:35:51 +02:00
d541069fdf fix(pick): recent files in cwd. Fixes #3580 2024-06-11 14:26:46 +02:00
bd29f45153 fix(sql): make sure edgebars exist. Fixes #3578 2024-06-11 09:10:10 +02:00
c4818616d5 feat(fzf): ignore current line for some lsp pickers 2024-06-11 09:05:16 +02:00
8bb653876c feat(fzf): better scrollbars 2024-06-11 09:04:39 +02:00
d1d24fa077 fix(fzf): lowercase symbols 2024-06-11 07:44:32 +02:00
ba3aec7b48 feat(fzf): prettier document symbols 2024-06-11 07:42:21 +02:00
638769d320 test: simple test to make sure I don't keep debug stuff around 2024-06-11 07:27:04 +02:00
9b8a393edc fix(dap): set host to 127.0.0.1 instead of localhost to prevent issues with ipv6. Fixes #3577 2024-06-11 06:55:16 +02:00
14d47f650c refactor: memoize 2024-06-11 06:51:30 +02:00
3b447a8037 chore(build): auto-generate vimdoc 2024-06-11 04:42:12 +00:00
335487282a fix(util): ensure unique cache keys in LazyVim.memoize (#3576)
## What is this PR for?

This PR fixes a bug in the `LazyVim.memoize` function that was causing
unexpected behavior in my configuration. The issue was discovered when
setting `vim.g.lazyvim_prettier_needs_config = true` in my
`lua/config/options.lua`, which did not work as expected.

The root cause was an issue with `LazyVim.memoize` cache key generation,
which led to `M.has_config(ctx)` always returning the same result as
`M.has_parser(ctx)`. This happened because `LazyVim.memoize` generates
cache keys based on the function parameters, and both functions were
being called with identical parameters:


7d30360df2/lua/lazyvim/plugins/extras/formatting/prettier.lua (L77-L81)

By improving the cache key generation to include function information,
we can ensure unique keys for different functions even if their
parameters are identical, thereby fixing the issue.

## Does this PR fix an existing issue?

N/A

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-11 06:41:37 +02:00
7d30360df2 refactor: config = true >> opts = {} 2024-06-11 00:06:56 +02:00
9b5d810c05 docs: added experience to CONTRIBUTING 2024-06-10 23:26:07 +02:00
fe667b53c9 refactor(mini-files): mini-files (#3538)
Incorporate additional boolean logic when setting keymaps to avoid
creating `opts.mappings` table and leave that only from the user
configuration to change mappings.
2024-06-10 22:12:25 +02:00
21617a9d60 feat(lualine): show readonly icon (#3567)
Adds a configurable lock icon when a file is opened as read only. Mimics
`vi -R <file>` status line.
2024-06-10 22:06:09 +02:00
f5dc867ac2 fix(php): formatting and linting (#3540)
Fixed the issue of php formatting not working in extras.lang.php
2024-06-10 22:01:24 +02:00
6ab404134d feat(extras): added fzf-lua (#3555)
New extra with an initial implementation of fzf-lua.

## Todo

- [x] check all places that currently depend on telescope and provide an
alternative or disable
- [x] disable telescope spec completely. (currently only removed its
keymaps)
- [x] trouble integration
- [x] https://github.com/ibhagwan/fzf-lua/issues/1241

---------

Co-authored-by: Iordanis Petkakis <12776461+dpetka2001@users.noreply.github.com>
2024-06-10 21:58:33 +02:00
caaa6c440d fix(neo-tree): use last window for preview (#3560)
Similar to "trouble.nvim" I want the preview to open in the last active
window. Currently the neo-tree preview opens in a floating window, which
(to me) doesn’t look very good.

What do you think about doing preview window the same everywhere
(trouble & neo-tree)?

## Before:


https://github.com/LazyVim/LazyVim/assets/3313023/7d7c21c9-158d-40ef-82f2-62e0dc795555

## After:


https://github.com/LazyVim/LazyVim/assets/3313023/bafc5bae-20cb-4dd1-8e40-1358ada573d9

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-06-10 21:41:45 +02:00
43afed1211 fix(extras.copilot-chat): small ui fix for which-key in visual mode (#3573)
## What is this PR for?
- Just a small fix for which-key in visual mode that the authors forgot
to add.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
- As copilot-chat has just been added to extras so i think this is new.
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-10 20:15:27 +02:00
4b7c389f14 docs: fix link 2024-06-10 15:09:30 +02:00
4b1d397627 chore(build): auto-generate vimdoc 2024-06-10 13:05:24 +00:00
9d78a22252 docs: added contributing 2024-06-10 15:04:43 +02:00
65060ece67 ci: pull request template 2024-06-10 15:04:43 +02:00
d7c7548e09 chore(main): release 12.11.0 (#3536)
🤖 I have created a release *beep* *boop*
---


##
[12.11.0](https://github.com/LazyVim/LazyVim/compare/v12.10.0...v12.11.0)
(2024-06-09)


### Features

* **octo:** re-open octo windows when restoring session + cleanup
([7793942](7793942eba))


### Bug Fixes

* **extra-lang-angular:** add BufNew event to attach angular treesitter
([#3522](https://github.com/LazyVim/LazyVim/issues/3522))
([fbb1276](fbb1276ffd))
* **extras:** +prefix in which-key panel for visual mode
([#3537](https://github.com/LazyVim/LazyVim/issues/3537))
([5185404](51854046db))
* **helm:** missing dependency
([#3546](https://github.com/LazyVim/LazyVim/issues/3546))
([02dd65c](02dd65cdea))
* **lang:** neotest not loading rust tests
([#3544](https://github.com/LazyVim/LazyVim/issues/3544))
([0567b37](0567b37f61))
* **luasnip:** disable nvim-snippets when luasnip is enabled. Fixes
[#3547](https://github.com/LazyVim/LazyVim/issues/3547)
([aa059e0](aa059e0d49))
* **rust:** make neotest optional
([547dc76](547dc76a12))
* **typescript:** clean up configuration of the vscode dap extension
([#3556](https://github.com/LazyVim/LazyVim/issues/3556))
([1c46f54](1c46f54432))
* **typescript:** implemented move to new file. Fixes
[#3534](https://github.com/LazyVim/LazyVim/issues/3534)
([d90930b](d90930b13e))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-09 23:19:28 +02:00
1c46f54432 fix(typescript): clean up configuration of the vscode dap extension (#3556)
`mason-nvim-dap.nvim` adds it's own adapter filetype mappings to the
vscode extension in `nvim-dap` (as of
https://github.com/jay-babu/mason-nvim-dap.nvim/pull/129)

This also moves the type mappings for the `pwa-node` and `node` adapters
to where they are defined in the typescript pack.

Now that the default internal type mappings are configured we can rely
on the automatic loading of the `.vscode/launch.json` that `nvim-dap`
does
2024-06-09 22:48:51 +02:00
7793942eba feat(octo): re-open octo windows when restoring session + cleanup 2024-06-09 11:42:58 +02:00
2848ee492b ci: link to discussions 2024-06-09 11:36:44 +02:00
547dc76a12 fix(rust): make neotest optional 2024-06-09 09:27:29 +02:00
Ian
0567b37f61 fix(lang): neotest not loading rust tests (#3544)
fixes https://github.com/LazyVim/LazyVim/issues/3543
2024-06-09 08:37:08 +02:00
aa059e0d49 fix(luasnip): disable nvim-snippets when luasnip is enabled. Fixes #3547 2024-06-09 07:37:45 +02:00
28426cc31c chore(build): auto-generate vimdoc 2024-06-09 05:34:35 +00:00
02dd65cdea fix(helm): missing dependency (#3546)
according to this comment
ab41ff551b (r142924660)
2024-06-09 07:33:59 +02:00
fbb1276ffd fix(extra-lang-angular): add BufNew event to attach angular treesitter (#3522)
## Problem

Sometimes angular treesitter didn't get started, e.g. when creating a
new file.

## Solution

- Add `BufNew` event to attach angular treesitter.
- Change `BufRead` to `BufReadPost` for better readability.

### Related Neovim docs
- [BufRead / BufReadPost
docs](https://neovim.io/doc/user/autocmd.html#BufRead)
- [BufNew](https://neovim.io/doc/user/autocmd.html#BufNew)
2024-06-08 23:57:45 +02:00
51854046db fix(extras): +prefix in which-key panel for visual mode (#3537) 2024-06-08 10:04:10 +02:00
8f7ee56dab refactor: LazyVim.lsp.on_attach 2024-06-08 08:11:30 +02:00
6098a36d92 chore(build): auto-generate vimdoc 2024-06-08 05:31:47 +00:00
d90930b13e fix(typescript): implemented move to new file. Fixes #3534 2024-06-08 07:30:49 +02:00
1394070aab docs(news): fixed versions 2024-06-08 00:11:24 +02:00
16f3ebb9f1 docs(news): added link to news 2024-06-07 23:59:07 +02:00
a5f8af912d chore(main): release 12.10.0 (#3532)
🤖 I have created a release *beep* *boop*
---


##
[12.10.0](https://github.com/LazyVim/LazyVim/compare/v12.9.0...v12.10.0)
(2024-06-07)


### Features

* **prettier:** prettier is now enabled for all supported filetypes and
no longer requires a config file by default
([7d50bf0](7d50bf0626))
* **prettier:** with the prettier & astro extra, prettier will be
enabled if the prettier-astro-plugin is available
([214f5fc](214f5fccdf))
* **svelte:** with prettier & svelte extra, prettier will be enabled
when prettier-plugin-svelte is available
([945143a](945143a34e))
* **util:** added LazyVim.has_extra
([b714f28](b714f28662))
* **util:** added LazyVim.memoize
([5a11d74](5a11d740e1))


### Bug Fixes

* **clojure:** removed rainbow delimiters and fixed some plugin setups.
Closes [#3530](https://github.com/LazyVim/LazyVim/issues/3530)
([cfa8c9f](cfa8c9fbd4))
* **cmp:** don't enable `snippets` source without `nvim-snippets`
([#3527](https://github.com/LazyVim/LazyVim/issues/3527))
([af80811](af80811be0))
* **extras:** load prettier extra before svelte/astro
([4980574](49805748d4))
* **formatting:** remove deprecation check on some options
([c16fb5d](c16fb5d49b))
* **prettier:** fixup
([ac9217b](ac9217b199))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-07 23:57:13 +02:00
f202f573b4 docs: updated news 2024-06-07 23:54:57 +02:00
ac9217b199 fix(prettier): fixup 2024-06-07 23:24:01 +02:00
af80811be0 fix(cmp): don't enable snippets source without nvim-snippets (#3527)
Make it easier, so if users decide to disable `nvim-snippets`, they
don't have to remove the `snippets` source manually in their config.
2024-06-07 23:12:59 +02:00
cfa8c9fbd4 fix(clojure): removed rainbow delimiters and fixed some plugin setups. Closes #3530 2024-06-07 23:10:40 +02:00
588240ca09 style: better types for vim.api.nvim_create_autocmd 2024-06-07 23:02:47 +02:00
49805748d4 fix(extras): load prettier extra before svelte/astro 2024-06-07 23:02:47 +02:00
945143a34e feat(svelte): with prettier & svelte extra, prettier will be enabled when prettier-plugin-svelte is available 2024-06-07 23:02:47 +02:00
214f5fccdf feat(prettier): with the prettier & astro extra, prettier will be enabled if the prettier-astro-plugin is available 2024-06-07 23:02:47 +02:00
7d50bf0626 feat(prettier): prettier is now enabled for all supported filetypes and no longer requires a config file by default 2024-06-07 23:02:47 +02:00
5a11d740e1 feat(util): added LazyVim.memoize 2024-06-07 23:02:47 +02:00
b714f28662 feat(util): added LazyVim.has_extra 2024-06-07 23:02:47 +02:00
c16fb5d49b fix(formatting): remove deprecation check on some options 2024-06-07 23:02:47 +02:00
140 changed files with 5740 additions and 2828 deletions

7
.editorconfig Normal file
View File

@ -0,0 +1,7 @@
root = true
[*]
insert_final_newline = true
indent_style = space
indent_size = 2
charset = utf-8

3
.github/.release-please-manifest.json vendored Normal file
View File

@ -0,0 +1,3 @@
{
".": "13.9.0"
}

View File

@ -6,7 +6,10 @@ body:
- type: markdown
attributes:
value: |
**Before** reporting an issue, make sure to read the [documentation](https://github.com/folke/LazyVim) and search [existing issues](https://github.com/folke/LazyVim/issues). Usage questions such as ***"How do I...?"*** belong in [Discussions](https://github.com/folke/LazyVim/discussions) and will be closed.
**Before** reporting an issue, make sure to read the [documentation](https://github.com/LazyVim/LazyVim)
and search [existing issues](https://github.com/LazyVim/LazyVim/issues).
Usage questions such as ***"How do I...?"*** belong in [Discussions](https://github.com/LazyVim/LazyVim/discussions) and will be closed.
- type: checkboxes
attributes:
label: Did you check docs and existing issues?
@ -14,6 +17,8 @@ body:
options:
- label: I have read all the LazyVim docs
required: true
- label: I have updated the plugin to the latest version before submitting this issue
required: true
- label: I have searched the existing issues of LazyVim
required: true
- label: I have searched the existing issues of plugins related to this issue
@ -57,33 +62,15 @@ body:
label: Repro
description: Minimal `init.lua` to reproduce this issue. Save as `repro.lua` and run with `nvim -u repro.lua`
value: |
-- DO NOT change the paths and don't remove the colorscheme
local root = vim.fn.fnamemodify("./.repro", ":p")
vim.env.LAZY_STDPATH = ".repro"
load(vim.fn.system("curl -s https://raw.githubusercontent.com/folke/lazy.nvim/main/bootstrap.lua"))()
-- set stdpaths to use .repro
for _, name in ipairs({ "config", "data", "state", "cache" }) do
vim.env[("XDG_%s_HOME"):format(name:upper())] = root .. "/" .. name
end
-- bootstrap lazy
local lazypath = root .. "/plugins/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({ "git", "clone", "--filter=blob:none", "https://github.com/folke/lazy.nvim.git", lazypath, })
end
vim.opt.runtimepath:prepend(lazypath)
-- install plugins
local plugins = {
"folke/tokyonight.nvim",
"folke/LazyVim",
-- add any other plugins here
}
require("lazy").setup(plugins, {
root = root .. "/plugins",
require("lazy.minit").repro({
spec = {
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- add any other plugins here
},
})
vim.cmd.colorscheme("tokyonight")
-- add anything else here
render: Lua
render: lua
validations:
required: false

View File

@ -1 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Ask a question
url: https://github.com/LazyVim/LazyVim/discussions
about: Use Github discussions instead

19
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,19 @@
## Description
<!-- Describe the big picture of your changes to communicate to the maintainers
why we should accept this pull request. -->
## 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
- [ ] I've read the [CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md) guidelines.

View File

@ -1,11 +1,6 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/code-security/dependabot/dependabot-version-updates/configuration-options-for-the-dependabot.yml-file
version: 2
updates:
- package-ecosystem: "github-actions" # See documentation for possible values
directory: "/" # Location of package manifests
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"

9
.github/release-please-config.json vendored Normal file
View File

@ -0,0 +1,9 @@
{
"$schema": "https://raw.githubusercontent.com/googleapis/release-please/main/schemas/config.json",
"packages": {
".": {
"release-type": "simple",
"extra-files": ["lua/lazyvim/config/init.lua"]
}
}
}

View File

@ -1,81 +1,14 @@
name: CI
on:
push:
branches: [main, master]
pull_request:
jobs:
stylua:
name: Stylua Formatting
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- uses: JohnnyMorganz/stylua-action@v4
with:
token: ${{ secrets.GITHUB_TOKEN }}
version: latest
args: --check .
tests:
strategy:
matrix:
# os: [ubuntu-latest, windows-latest]
os: [ubuntu-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v4
- name: Install Neovim
shell: bash
run: |
mkdir -p /tmp/nvim
wget -q https://github.com/neovim/neovim/releases/download/nightly/nvim.appimage -O /tmp/nvim/nvim.appimage
cd /tmp/nvim
chmod a+x ./nvim.appimage
./nvim.appimage --appimage-extract
echo "/tmp/nvim/squashfs-root/usr/bin/" >> $GITHUB_PATH
- name: Run Tests
run: |
nvim --version
[ ! -d tests ] && exit 0
./tests/run
docs:
runs-on: ubuntu-latest
needs: tests
if: ${{ github.ref == 'refs/heads/main' }}
steps:
- uses: actions/checkout@v4
- name: panvimdoc
uses: kdheepak/panvimdoc@main
with:
vimdoc: LazyVim
version: "Neovim >= 0.9.0"
demojify: true
treesitter: true
- name: Push changes
uses: stefanzweifel/git-auto-commit-action@v5
with:
commit_message: "chore(build): auto-generate vimdoc"
commit_user_name: "github-actions[bot]"
commit_user_email: "github-actions[bot]@users.noreply.github.com"
commit_author: "github-actions[bot] <github-actions[bot]@users.noreply.github.com>"
release:
name: release
if: ${{ github.ref == 'refs/heads/main' }}
needs:
- docs
- tests
runs-on: ubuntu-latest
steps:
- uses: googleapis/release-please-action@v4
id: release
with:
release-type: simple
- uses: actions/checkout@v4
- name: tag stable versions
if: ${{ steps.release.outputs.release_created }}
run: |
git config user.name github-actions[bot]
git config user.email github-actions[bot]@users.noreply.github.com
git remote add gh-token "https://${{ secrets.GITHUB_TOKEN }}@github.com/google-github-actions/release-please-action.git"
git tag -d stable || true
git push origin :stable || true
git tag -a stable -m "Last Stable Release"
git push origin stable
ci:
uses: folke/github/.github/workflows/ci.yml@main
secrets: inherit
with:
plugin: LazyVim
repo: LazyVim/LazyVim

View File

@ -1,12 +1,8 @@
name: "Pull Request Labeler"
name: "PR Labeler"
on:
- pull_request_target
jobs:
labeler:
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v5
uses: folke/github/.github/workflows/labeler.yml@main
secrets: inherit

View File

@ -1,4 +1,4 @@
name: "Lint PR"
name: PR Title
on:
pull_request_target:
@ -6,36 +6,13 @@ on:
- opened
- edited
- synchronize
- reopened
- ready_for_review
permissions:
pull-requests: read
jobs:
main:
name: Validate PR title
runs-on: ubuntu-latest
steps:
- uses: amannn/action-semantic-pull-request@v5
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
requireScope: true
subjectPattern: ^(?![A-Z]).+$
scopes: |
.+
types: |
build
chore
ci
docs
feat
fix
merge
perf
refactor
revert
style
test
wip
ignoreLabels: |
autorelease: pending
pr-title:
uses: folke/github/.github/workflows/pr.yml@main
secrets: inherit

View File

@ -1,27 +1,11 @@
name: Close stale issues and PRs
name: Stale Issues & PRs
on:
workflow_dispatch:
schedule:
- cron: "30 1 * * *"
jobs:
stale:
runs-on: ubuntu-latest
steps:
- uses: actions/stale@v9
with:
operations-per-run: 300
# default stale time
days-before-stale: 30
days-before-close: 7
# never stale pull requests
# days-before-pr-stale: -1
days-before-pr-close: -1
# exclude issues with certain labels
exempt-issue-labels: pinned,wip,security,notice
# never stale issues attached to a milestone
# exempt-all-milestones: true
stale-issue-message: "This issue is stale because it has been open 30 days with no activity. Remove stale label or comment or this will be closed in 7 days."
stale-pr-message: "This PR is stale because it has been open 60 days with no activity."
close-issue-message: "This issue was closed because it has been stalled for 7 days with no activity."
if: contains(fromJSON('["folke", "LazyVim"]'), github.repository_owner)
uses: folke/github/.github/workflows/stale.yml@main
secrets: inherit

13
.github/workflows/update.yml vendored Normal file
View File

@ -0,0 +1,13 @@
name: Update Repo
on:
workflow_dispatch:
schedule:
# Run every hour
- cron: "0 * * * *"
jobs:
update:
if: contains(fromJSON('["folke", "LazyVim"]'), github.repository_owner)
uses: folke/github/.github/workflows/update.yml@main
secrets: inherit

15
.gitignore vendored
View File

@ -1,8 +1,9 @@
tt.*
.tests
doc/tags
debug
.repro
foo.*
*.log
data
/.repro
/.tests
/build
/debug
/doc/tags
foo.*
node_modules
tt.*

File diff suppressed because it is too large Load Diff

31
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,31 @@
# Contributing to LazyVim
## General Guidelines
- Avoid using Vim plugins whenever possible.
- If an extra requires a Vim plugin, explain why in the PR description.
- Ensure all configurations are overridable by the user, using Lazy's specs.
- Tag specs as `optional` if they should only be enabled when the user has them installed.
- Implement proper lazy-loading for every plugin added in an extra.
- Understand how Lazy's dependencies work. For Lua dependencies, do not specify
them in the `dependencies` field. Instead, add them as a separate spec with `lazy=true`.
## Contributing an Extra Plugin
- The plugin should be well-known and require significant configuration.
- Simple specs containing just the plugin with some options will not be accepted.
## Contributing an Extra Language
- You should be familiar with the language you are adding.
- You should have experience with the language's ecosystem, including formatters,
linters, and LSP servers.
- The extra should include the setup most widely used by the community.
- Include Tree-sitter parsers that are not yet the default.
- Include the most widely used LSP server setup.
- Avoid the need for LSP wrapper packages whenever possible.
- Only add a formatter if it is typically used by the community instead of the LSP formatter.
- Only add extra linters if the community typically uses them instead of just the LSP linters.
- Every language extra requires a `recommended` section as part of the extra.
Check lspconfig server configurations for the proper filetypes and root directories.
Refer to other extras for creating the `recommended` section.

115
NEWS.md
View File

@ -1,6 +1,103 @@
# What's new?
## 11.x
## 14.x
Big new release with a lot of changes and improvements!
Two new plugins have been added, and a lot of plugins have been replaced.
With these changes, default **LazyVim** is now just `34` plugins.
### Added Plugins
- [fzf-lua](https://github.com/ibhagwan/fzf-lua) as a replacement for [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim)
- to use **telescope.nvim** instead, enable the `ui.telescope` extra
- [blink.cmp](https://github.com/saghm/blink.cmp) as a replacement for [nvim-cmp](https://github.com/hrsh7th/nvim-cmp)
- to use **nvim-cmp** instead, enable the `nvim-cmp` extra
### Removed Plugins
- [dressing.nvim](https://github.com/stevearc/dressing.nvim) (replaced with [fzf-lua](https://github.com/ibhagwan/fzf-lua) and [snacks.input](https://github.com/folke/snacks.nvim))
- [telescope-fzf-native.nvim](https://github.com/nvim-telescope/telescope-fzf-native.nvim) (replaced with [fzf-lua](https://github.com/ibhagwan/fzf-lua))
- [telescope.nvim](https://github.com/nvim-telescope/telescope.nvim) (replaced with [fzf-lua](https://github.com/ibhagwan/fzf-lua))
- [indent-blankline.nvim](https://github.com/lukas-reineke/indent-blankline.nvim) (replaced with [snacks.indent](https://github.com/Folke/snacks.nvim))
- to use **indent-blankline.nvim** instead, enable the `indent-blankline` extra
- [nvim-cmp](https://github.com/hrsh7th/nvim-cmp) (replaced with [blink](https://github.com/Saghen/blink.cmp))
- [nvim-snippets](https://github.com/hrsh7th/vim-vsnip) (replaced with [blink](https://github.com/Saghen/blink.cmp))
- [cmp-buffer](https://github.com/hrsh7th/cmp-buffer) (replaced with [blink](https://github.com/Saghen/blink.cmp))
- [cmp-nvim-lsp](https://github.com/hrsh7th/cmp-nvim-lsp) (replaced with [blink](https://github.com/Saghen/blink.cmp))
- [cmp-path](https://github.com/hrsh7th/cmp-path) (replaced with [blink](https://github.com/Saghen/blink.cmp))
### Changes
- added [`snacks.input`](https://github.com/folke/snacks.nvim/blob/main/docs/input.md)
- added [`snacks.scroll`](https://github.com/folke/snacks.nvim/blob/main/docs/scroll.md)
- added [`snacks.indent`](https://github.com/folke/snacks.nvim/blob/main/docs/indent.md)
- added [`snacks.scope`](https://github.com/folke/snacks.nvim/blob/main/docs/scope.md)
- added [`snacks.dim`](https://github.com/folke/snacks.nvim/blob/main/docs/dim.md)
- added [`snacks.zen`](https://github.com/folke/snacks.nvim/blob/main/docs/zen.md)
- changed default [`which-key`](https://github.com/folke/which-key.nvim) preset to `helix`
- drop `LazyVim.ui.fg` in favor of [`Snacks.util.color`](https://github.com/folke/snacks.nvim/blob/main/docs/util.md)
To disable **all animations**, add the following to your `options.lua`:
```lua
vim.g.snacks_animate = false
```
### Keymaps
- `<leader>z` to toggle [zen mode](https://github.com/folke/snacks.nvim/blob/main/docs/zen.md)
- `<leader>Z` to toggle [zoom mode](https://github.com/folke/snacks.nvim/blob/main/docs/zen.md)
- `<leader>uD` to toggle [dimming](https://github.com/folke/snacks.nvim/blob/main/docs/dim.md)
- `<leader>ua` to toggle [animations](https://github.com/folke/snacks.nvim/blob/main/docs/animate.md)
- `<leader>uS` to toggle [scroll](https://github.com/folke/snacks.nvim/blob/main/docs/scroll.md)
- `<leader>ug` to toggle [indent guides](https://github.com/folke/snacks.nvim/blob/main/docs/indent.md)
- [`snacks.profiler`](https://github.com/folke/snacks.nvim/blob/main/docs/profiler.md) keymaps under `<leader>dp`
---
## 13.x
- **LazyVim** now uses `Snacks.dashboard` as the default dashboard.
Check the [docs](https://github.com/folke/snacks.nvim/blob/main/docs/dashboard.md),
for more information and examples.
- A new [dashboard-nvim](https://github.com/nvimdev/dashboard-nvim) extra
is available for those who prefer the old dashboard.
- Big new release with a lot of changes and improvements!
- The biggest change is the move of a bunch of core features to
[snacks.nvim](https://github.com/folke/snacks.nvim) and fully
integrating it into **LazyVim**.
- I highly suggest having a look at the **snacks.nvim** documentation
to see all the new features and improvements. Most important changes:
- `Snacks.notifier` for notifications instead of `nvim-notify`
- `Snacks.terminal` is similar to `lazyterm`, but has more features
and creates bottom splits by default (similar to the `edgy` integrating)
---
## 12.x
- **Markdown Extra**: [headlines.nvim](https://github.com/lukas-reineke/headlines.nvim) has been removed in favor of [markdown.nvim](https://github.com/MeanderingProgrammer/markdown.nvim)
to spice up your markdown files.
- [nvim-spectre](https://github.com/nvim-pack/nvim-spectre) has been removed in favor of [grug-far.nvim](https://github.com/MagicDuck/grug-far.nvim).
**grug-far.nvim** has a great UI and feels more intuitive to use.
- This **news** is now also available on the website at [https://www.lazyvim.org/news](https://www.lazyvim.org/news)
- **prettier** extra now works for all prettier supported filetypes
and will be enabled for astro/svelte extra if you have a proper
config file with the correct prettier plugin
- **New Language Support:** SQL, Clojure, Thrift, Elm, Gleam, Angular,
NuShell, Svelte, Kotlin, Astro, Toml and PHP
- **New Extras:** `copilot-chat`, `git`, `octo`, `inc-rename` and `neogen`
- The **typescript** extra now uses `vtsls` instead of `tsserver`
- **Neovim >= 0.10** now uses the much faster [lazydev.nvim](https://github.com/folke/lazydev.nvim)
instead of `neodev.nvim`
@ -8,6 +105,20 @@
- moved `neoconf.nvim` to extras. Project specific LSP settings
can be done with a `.lazy.lua` file instead.
---
## 11.x
- **Keymaps:**
- `<leader>gB` to open the current repo in the browser
- `gco` and `gcO` to add a comment below or above the current line
- `<leader>wm` to toggle window maximize
- **lazydev.nvim:** faster alternative to `neodev.nvim`
- **Options:** Added `linebreak=true` to default options.
- `mini.ai` is back as a default plugin! Removing it was a mistake.
It's a great plugin that enhances the native text objects.
@ -55,6 +166,8 @@ Additionally, some core plugins have been moved to extras.
- `mini.indentscope` scopes are now also highlighted with `indent-blankline`
- `nvim-treesitter-context`
---
## 10.x
- added new extra for [mini.diff](https://github.com/echasnovski/mini.nvim/blob/main/readmes/mini-diff.md)

View File

@ -36,9 +36,9 @@
</a>
</div>
LazyVim 是 [💤 lazy.nvim](https://github.com/folke/lazy.nvim) 驱动的一套 Neovim 配置,可以轻松自定义和扩展您的配置
不必在从头开始或使用预制发行版之间做选择,
LazyVim 提供了两全其美的方式 - 根据需要调整配置的灵活性,以及默认配置的便利
LazyVim 是一个基于 [💤 lazy.nvim](https://github.com/folke/lazy.nvim) Neovim 配置方案,让定制和扩展变得简单直观
不必再在“从零配置”和“使用预制发行版之间做选择,LazyVim
提供了一个两全其美的方式——既可以享受默认配置带来的便利,又能根据个人需求来灵活调整各项设置
![image](https://user-images.githubusercontent.com/292349/211285846-0b7bb3bf-0462-4029-b64c-4ee1d037fc1c.png)
@ -46,24 +46,24 @@ LazyVim 提供了两全其美的方式 - 根据需要调整配置的灵活性,
## ✨ 特性
- 🔥 将你的 Neovim 变成一个成熟的 IDE
- 💤 使用 [lazy.nvim](https://github.com/folke/lazy.nvim) 轻松自定义和扩展您的
- 🔥 将你的 Neovim 打造为一个功能完备的 IDE
- 💤 使用 [lazy.nvim](https://github.com/folke/lazy.nvim) 轻松自定义和扩展您的
- 🚀 快如闪电
- 🧹 选项、自动命令和键盘映射的合理预设
- 📦 预配置了大量插件,随时可
- 📦 内置大量精心优化的预配置插件,开箱即
## ⚡️ 要求
## ⚡️ 环境要求
- Neovim >= **0.9.0** (需要用 **LuaJIT** 构建)
- Git >= **2.19.0** (用于部分克隆支持)
- 一个 [Nerd Font](https://www.nerdfonts.com/) 字体 **_(可选)_**
- 一个用于 `nvim-treesitter`**C** 编译器。看 [这里](https://github.com/nvim-treesitter/nvim-treesitter#requirements)
## 🚀 入门
## 🚀 开始使用
您可以在 [此处](https://github.com/LazyVim/starter) 找到 **LazyVim**入门模板
您可以在 [此处](https://github.com/LazyVim/starter) 找到 **LazyVim**初始模板
<details><summary>在 Docker 中尝</summary>
<details><summary>在 Docker 中尝</summary>
```sh
docker run -w /root -it --rm alpine:edge sh -uelic '
@ -91,7 +91,7 @@ docker run -w /root -it --rm alpine:edge sh -uelic '
git clone https://github.com/LazyVim/starter ~/.config/nvim
```
- 删除 `.git` 文件夹,以便稍后将其添加到您自己的存储
- 删除 `.git` 文件夹,以便稍后将其添加到您自己的
```sh
rm -rf ~/.config/nvim/.git
@ -109,18 +109,23 @@ docker run -w /root -it --rm alpine:edge sh -uelic '
---
[@elijahmanor](https://github.com/elijahmanor) 制作了一很棒的视频,其中包含入门演练
[@elijahmanor](https://github.com/elijahmanor) 制作了一很棒的视频,可以带领你快速入门
[![Watch the video](https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg)](https://www.youtube.com/watch?v=N93cTbtLCIM)
[![查看这个视频](https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg)](https://www.youtube.com/watch?v=N93cTbtLCIM)
[@dusty-phillips](https://github.com/dusty-phillips) 为 LazyVim 编写了一本全面的书籍
[《LazyVim for Ambitious Developers》](https://lazyvim-ambitious-devs.phillips.codes)
,可在线上免费阅读。
## 📂 文件结构
config 下的文件会在适当的时候自动加载,所以你不需要手动引入这些文件。
**LazyVim** 带有一组默认配置文件,这些文件将在您的配置**之前**加载。
看[这里](https://github.com/LazyVim/LazyVim/tree/main/lua/lazyvim/config)
config 下的文件会在适当的时候自动加载,所以你不需要手动引入这些文件。
您可以在 `lua/plugins/` 下添加自定义插件配置(specs)
[lazy.nvim](https://github.com/folke/lazy.nvim) 会自动加载这些文件。
**LazyVim** 带有一组默认配置文件,这些文件会在您的配置**之前**被加载
请看[这里](https://github.com/LazyVim/LazyVim/tree/main/lua/lazyvim/config)
您可以在 `lua/plugins/` 下添加自定义插件配置。
[lazy.nvim](https://github.com/folke/lazy.nvim) 会自动加载此目录中的全部文件。
<pre>
~/.config/nvim
@ -137,6 +142,6 @@ config 下的文件会在适当的时候自动加载,所以你不需要手动
└── init.lua
</pre>
## ⚙️ Configuration
## ⚙️ 设置
参考[文档](https://lazyvim.github.io/)
请参阅[官方文档](https://lazyvim.github.io/)

View File

@ -115,7 +115,7 @@ There's a great video created by [@elijahmanor](https://github.com/elijahmanor)
[![Watch the video](https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg)](https://www.youtube.com/watch?v=N93cTbtLCIM)
[@dusty-phillips](https://github.com/dusty-phillips) is working on a book called
[@dusty-phillips](https://github.com/dusty-phillips) wrote a comprehensive book called
[LazyVim for Ambitious Developers](https://lazyvim-ambitious-devs.phillips.codes)
available for free online.

View File

@ -1,4 +1,4 @@
*LazyVim.txt* For Neovim >= 0.9.0 Last change: 2024 June 07
*LazyVim.txt* For Neovim Last change: 2024 December 12
==============================================================================
Table of Contents *LazyVim-table-of-contents*
@ -102,8 +102,8 @@ Theres a great video created by @elijahmanor
<https://www.youtube.com/watch?v=N93cTbtLCIM>
@dusty-phillips <https://github.com/dusty-phillips> is working on a book called
LazyVim for Ambitious Developers
@dusty-phillips <https://github.com/dusty-phillips> wrote a comprehensive book
called LazyVim for Ambitious Developers
<https://lazyvim-ambitious-devs.phillips.codes> available for free online.

View File

@ -18,7 +18,7 @@ vim.api.nvim_create_autocmd({ "FocusGained", "TermClose", "TermLeave" }, {
vim.api.nvim_create_autocmd("TextYankPost", {
group = augroup("highlight_yank"),
callback = function()
vim.highlight.on_yank()
(vim.hl or vim.highlight).on_yank()
end,
})
@ -55,22 +55,33 @@ vim.api.nvim_create_autocmd("FileType", {
group = augroup("close_with_q"),
pattern = {
"PlenaryTestPopup",
"checkhealth",
"dbout",
"gitsigns-blame",
"grug-far",
"help",
"lspinfo",
"neotest-output",
"neotest-output-panel",
"neotest-summary",
"notify",
"qf",
"spectre_panel",
"startuptime",
"tsplayground",
"neotest-output",
"checkhealth",
"neotest-summary",
"neotest-output-panel",
"dbout",
},
callback = function(event)
vim.bo[event.buf].buflisted = false
vim.keymap.set("n", "q", "<cmd>close<cr>", { buffer = event.buf, silent = true })
vim.schedule(function()
vim.keymap.set("n", "q", function()
vim.cmd("close")
pcall(vim.api.nvim_buf_delete, event.buf, { force = true })
end, {
buffer = event.buf,
silent = true,
desc = "Quit buffer",
})
end)
end,
})
@ -86,7 +97,7 @@ vim.api.nvim_create_autocmd("FileType", {
-- wrap and check for spell in text filetypes
vim.api.nvim_create_autocmd("FileType", {
group = augroup("wrap_spell"),
pattern = { "*.txt", "*.tex", "*.typ", "gitcommit", "markdown" },
pattern = { "text", "plaintex", "typst", "gitcommit", "markdown" },
callback = function()
vim.opt_local.wrap = true
vim.opt_local.spell = true

View File

@ -3,7 +3,7 @@ _G.LazyVim = require("lazyvim.util")
---@class LazyVimConfig: LazyVimOptions
local M = {}
M.version = "10.21.1" -- x-release-please-version
M.version = "13.9.0" -- x-release-please-version
LazyVim.config = M
---@class LazyVimOptions
@ -88,6 +88,7 @@ local defaults = {
Snippet = "",
String = "",
Struct = "󰆼 ",
Supermaven = "",
TabNine = "󰏚 ",
Text = "",
TypeParameter = "",
@ -135,7 +136,8 @@ local defaults = {
}
M.json = {
version = 6,
version = 7,
path = vim.g.lazyvim_json or vim.fn.stdpath("config") .. "/lazyvim.json",
data = {
version = nil, ---@type string?
news = {}, ---@type table<string, string>
@ -144,8 +146,7 @@ M.json = {
}
function M.json.load()
local path = vim.fn.stdpath("config") .. "/lazyvim.json"
local f = io.open(path, "r")
local f = io.open(M.json.path, "r")
if f then
local data = f:read("*a")
f:close()
@ -161,6 +162,7 @@ end
---@type LazyVimOptions
local options
local lazy_clipboard
---@param opts? LazyVimOptions
function M.setup(opts)
@ -181,6 +183,9 @@ function M.setup(opts)
M.load("autocmds")
end
M.load("keymaps")
if lazy_clipboard ~= nil then
vim.opt.clipboard = lazy_clipboard
end
LazyVim.format.setup()
LazyVim.news.setup()
@ -248,16 +253,17 @@ function M.load(name)
end, { msg = "Failed loading " .. mod })
end
end
local pattern = "LazyVim" .. name:sub(1, 1):upper() .. name:sub(2)
-- always load lazyvim, then user file
if M.defaults[name] or name == "options" then
_load("lazyvim.config." .. name)
vim.api.nvim_exec_autocmds("User", { pattern = pattern .. "Defaults", modeline = false })
end
_load("config." .. name)
if vim.bo.filetype == "lazy" then
-- HACK: LazyVim may have overwritten options of the Lazy ui, so reset this here
vim.cmd([[do VimResized]])
end
local pattern = "LazyVim" .. name:sub(1, 1):upper() .. name:sub(2)
vim.api.nvim_exec_autocmds("User", { pattern = pattern, modeline = false })
end
@ -284,6 +290,9 @@ function M.init()
-- this is needed to make sure options will be correctly applied
-- after installing missing plugins
M.load("options")
-- defer built-in clipboard handling: "xsel" and "pbcopy" can be slow
lazy_clipboard = vim.opt.clipboard
vim.opt.clipboard = ""
if vim.g.deprecation_warnings == false then
vim.deprecate = function() end

View File

@ -23,12 +23,12 @@ map("n", "<C-Left>", "<cmd>vertical resize -2<cr>", { desc = "Decrease Window Wi
map("n", "<C-Right>", "<cmd>vertical resize +2<cr>", { desc = "Increase Window Width" })
-- Move Lines
map("n", "<A-j>", "<cmd>m .+1<cr>==", { desc = "Move Down" })
map("n", "<A-k>", "<cmd>m .-2<cr>==", { desc = "Move Up" })
map("n", "<A-j>", "<cmd>execute 'move .+' . v:count1<cr>==", { desc = "Move Down" })
map("n", "<A-k>", "<cmd>execute 'move .-' . (v:count1 + 1)<cr>==", { desc = "Move Up" })
map("i", "<A-j>", "<esc><cmd>m .+1<cr>==gi", { desc = "Move Down" })
map("i", "<A-k>", "<esc><cmd>m .-2<cr>==gi", { desc = "Move Up" })
map("v", "<A-j>", ":m '>+1<cr>gv=gv", { desc = "Move Down" })
map("v", "<A-k>", ":m '<-2<cr>gv=gv", { desc = "Move Up" })
map("v", "<A-j>", ":<C-u>execute \"'<,'>move '>+\" . v:count1<cr>gv=gv", { desc = "Move Down" })
map("v", "<A-k>", ":<C-u>execute \"'<,'>move '<-\" . (v:count1 + 1)<cr>gv=gv", { desc = "Move Up" })
-- buffers
map("n", "<S-h>", "<cmd>bprevious<cr>", { desc = "Prev Buffer" })
@ -37,7 +37,12 @@ map("n", "[b", "<cmd>bprevious<cr>", { desc = "Prev Buffer" })
map("n", "]b", "<cmd>bnext<cr>", { desc = "Next Buffer" })
map("n", "<leader>bb", "<cmd>e #<cr>", { desc = "Switch to Other Buffer" })
map("n", "<leader>`", "<cmd>e #<cr>", { desc = "Switch to Other Buffer" })
map("n", "<leader>bd", LazyVim.ui.bufremove, { desc = "Delete Buffer" })
map("n", "<leader>bd", function()
Snacks.bufdelete()
end, { desc = "Delete Buffer" })
map("n", "<leader>bo", function()
Snacks.bufdelete.other()
end, { desc = "Delete Other Buffers" })
map("n", "<leader>bD", "<cmd>:bd<cr>", { desc = "Delete Buffer and Window" })
-- Clear search with <esc>
@ -115,38 +120,41 @@ map("n", "[w", diagnostic_goto(false, "WARN"), { desc = "Prev Warning" })
-- stylua: ignore start
-- toggle options
map("n", "<leader>uf", function() LazyVim.format.toggle() end, { desc = "Toggle Auto Format (Global)" })
map("n", "<leader>uF", function() LazyVim.format.toggle(true) end, { desc = "Toggle Auto Format (Buffer)" })
map("n", "<leader>us", function() LazyVim.toggle("spell") end, { desc = "Toggle Spelling" })
map("n", "<leader>uw", function() LazyVim.toggle("wrap") end, { desc = "Toggle Word Wrap" })
map("n", "<leader>uL", function() LazyVim.toggle("relativenumber") end, { desc = "Toggle Relative Line Numbers" })
map("n", "<leader>ul", function() LazyVim.toggle.number() end, { desc = "Toggle Line Numbers" })
map("n", "<leader>ud", function() LazyVim.toggle.diagnostics() end, { desc = "Toggle Diagnostics" })
local conceallevel = vim.o.conceallevel > 0 and vim.o.conceallevel or 3
map("n", "<leader>uc", function() LazyVim.toggle("conceallevel", false, {0, conceallevel}) end, { desc = "Toggle Conceal" })
if vim.lsp.buf.inlay_hint or vim.lsp.inlay_hint then
map( "n", "<leader>uh", function() LazyVim.toggle.inlay_hints() end, { desc = "Toggle Inlay Hints" })
LazyVim.format.snacks_toggle():map("<leader>uf")
LazyVim.format.snacks_toggle(true):map("<leader>uF")
Snacks.toggle.option("spell", { name = "Spelling"}):map("<leader>us")
Snacks.toggle.option("wrap", {name = "Wrap"}):map("<leader>uw")
Snacks.toggle.option("relativenumber", { name = "Relative Number"}):map("<leader>uL")
Snacks.toggle.diagnostics():map("<leader>ud")
Snacks.toggle.line_number():map("<leader>ul")
Snacks.toggle.option("conceallevel", {off = 0, on = vim.o.conceallevel > 0 and vim.o.conceallevel or 2, name = "Conceal Level"}):map("<leader>uc")
Snacks.toggle.option("showtabline", {off = 0, on = vim.o.showtabline > 0 and vim.o.showtabline or 2, name = "Tabline"}):map("<leader>uA")
Snacks.toggle.treesitter():map("<leader>uT")
Snacks.toggle.option("background", { off = "light", on = "dark" , name = "Dark Background"}):map("<leader>ub")
Snacks.toggle.dim():map("<leader>uD")
Snacks.toggle.animate():map("<leader>ua")
Snacks.toggle.indent():map("<leader>ug")
Snacks.toggle.scroll():map("<leader>uS")
Snacks.toggle.profiler():map("<leader>dpp")
Snacks.toggle.profiler_highlights():map("<leader>dph")
if vim.lsp.inlay_hint then
Snacks.toggle.inlay_hints():map("<leader>uh")
end
map("n", "<leader>uT", function() if vim.b.ts_highlight then vim.treesitter.stop() else vim.treesitter.start() end end, { desc = "Toggle Treesitter Highlight" })
map("n", "<leader>ub", function() LazyVim.toggle("background", false, {"light", "dark"}) end, { desc = "Toggle Background" })
-- lazygit
map("n", "<leader>gg", function() LazyVim.lazygit( { cwd = LazyVim.root.git() }) end, { desc = "Lazygit (Root Dir)" })
map("n", "<leader>gG", function() LazyVim.lazygit() end, { desc = "Lazygit (cwd)" })
map("n", "<leader>gb", LazyVim.lazygit.blame_line, { desc = "Git Blame Line" })
map("n", "<leader>gB", LazyVim.lazygit.browse, { desc = "Git Browse" })
if vim.fn.executable("lazygit") == 1 then
map("n", "<leader>gg", function() Snacks.lazygit( { cwd = LazyVim.root.git() }) end, { desc = "Lazygit (Root Dir)" })
map("n", "<leader>gG", function() Snacks.lazygit() end, { desc = "Lazygit (cwd)" })
map("n", "<leader>gf", function() Snacks.lazygit.log_file() end, { desc = "Lazygit Current File History" })
map("n", "<leader>gl", function() Snacks.lazygit.log({ cwd = LazyVim.root.git() }) end, { desc = "Lazygit Log" })
map("n", "<leader>gL", function() Snacks.lazygit.log() end, { desc = "Lazygit Log (cwd)" })
end
map("n", "<leader>gf", function()
local git_path = vim.api.nvim_buf_get_name(0)
LazyVim.lazygit({args = { "-f", vim.trim(git_path) }})
end, { desc = "Lazygit Current File History" })
map("n", "<leader>gl", function()
LazyVim.lazygit({ args = { "log" }, cwd = LazyVim.root.git() })
end, { desc = "Lazygit Log" })
map("n", "<leader>gL", function()
LazyVim.lazygit({ args = { "log" } })
end, { desc = "Lazygit Log (cwd)" })
map("n", "<leader>gb", function() Snacks.git.blame_line() end, { desc = "Git Blame Line" })
map({ "n", "x" }, "<leader>gB", function() Snacks.gitbrowse() end, { desc = "Git Browse (open)" })
map({"n", "x" }, "<leader>gY", function()
Snacks.gitbrowse({ open = function(url) vim.fn.setreg("+", url) end, notify = false })
end, { desc = "Git Browse (copy)" })
-- quit
map("n", "<leader>qq", "<cmd>qa<cr>", { desc = "Quit All" })
@ -159,29 +167,22 @@ map("n", "<leader>uI", "<cmd>InspectTree<cr>", { desc = "Inspect Tree" })
map("n", "<leader>L", function() LazyVim.news.changelog() end, { desc = "LazyVim Changelog" })
-- floating terminal
local lazyterm = function() LazyVim.terminal(nil, { cwd = LazyVim.root() }) end
map("n", "<leader>ft", lazyterm, { desc = "Terminal (Root Dir)" })
map("n", "<leader>fT", function() LazyVim.terminal() end, { desc = "Terminal (cwd)" })
map("n", "<c-/>", lazyterm, { desc = "Terminal (Root Dir)" })
map("n", "<c-_>", lazyterm, { desc = "which_key_ignore" })
map("n", "<leader>fT", function() Snacks.terminal() end, { desc = "Terminal (cwd)" })
map("n", "<leader>ft", function() Snacks.terminal(nil, { cwd = LazyVim.root() }) end, { desc = "Terminal (Root Dir)" })
map("n", "<c-/>", function() Snacks.terminal(nil, { cwd = LazyVim.root() }) end, { desc = "Terminal (Root Dir)" })
map("n", "<c-_>", function() Snacks.terminal(nil, { cwd = LazyVim.root() }) end, { desc = "which_key_ignore" })
-- Terminal Mappings
map("t", "<esc><esc>", "<c-\\><c-n>", { desc = "Enter Normal Mode" })
map("t", "<C-h>", "<cmd>wincmd h<cr>", { desc = "Go to Left Window" })
map("t", "<C-j>", "<cmd>wincmd j<cr>", { desc = "Go to Lower Window" })
map("t", "<C-k>", "<cmd>wincmd k<cr>", { desc = "Go to Upper Window" })
map("t", "<C-l>", "<cmd>wincmd l<cr>", { desc = "Go to Right Window" })
map("t", "<C-/>", "<cmd>close<cr>", { desc = "Hide Terminal" })
map("t", "<c-_>", "<cmd>close<cr>", { desc = "which_key_ignore" })
-- windows
map("n", "<leader>ww", "<C-W>p", { desc = "Other Window", remap = true })
map("n", "<leader>wd", "<C-W>c", { desc = "Delete Window", remap = true })
map("n", "<leader>w-", "<C-W>s", { desc = "Split Window Below", remap = true })
map("n", "<leader>w|", "<C-W>v", { desc = "Split Window Right", remap = true })
map("n", "<leader>w", "<c-w>", { desc = "Windows", remap = true })
map("n", "<leader>-", "<C-W>s", { desc = "Split Window Below", remap = true })
map("n", "<leader>|", "<C-W>v", { desc = "Split Window Right", remap = true })
map("n", "<leader>wm", function() LazyVim.toggle.maximize() end, { desc = "Maximize Toggle" })
map("n", "<leader>wd", "<C-W>c", { desc = "Delete Window", remap = true })
Snacks.toggle.zoom():map("<leader>wm"):map("<leader>uZ")
Snacks.toggle.zen():map("<leader>uz")
-- tabs
map("n", "<leader><tab>l", "<cmd>tablast<cr>", { desc = "Last Tab" })
@ -191,3 +192,13 @@ map("n", "<leader><tab><tab>", "<cmd>tabnew<cr>", { desc = "New Tab" })
map("n", "<leader><tab>]", "<cmd>tabnext<cr>", { desc = "Next Tab" })
map("n", "<leader><tab>d", "<cmd>tabclose<cr>", { desc = "Close Tab" })
map("n", "<leader><tab>[", "<cmd>tabprevious<cr>", { desc = "Previous Tab" })
-- native snippets. only needed on < 0.11, as 0.11 creates these by default
if vim.fn.has("nvim-0.11") == 0 then
map("s", "<Tab>", function()
return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>"
end, { expr = true, desc = "Jump Next" })
map({ "i", "s" }, "<S-Tab>", function()
return vim.snippet.active({ direction = -1 }) and "<cmd>lua vim.snippet.jump(-1)<cr>" or "<S-Tab>"
end, { expr = true, desc = "Jump Previous" })
end

View File

@ -5,6 +5,26 @@ vim.g.maplocalleader = "\\"
-- LazyVim auto format
vim.g.autoformat = true
-- Snacks animations
-- Set to `false` to globally disable all snacks animations
vim.g.snacks_animate = true
-- LazyVim picker to use.
-- Can be one of: telescope, fzf
-- Leave it to "auto" to automatically use the picker
-- enabled with `:LazyExtras`
vim.g.lazyvim_picker = "auto"
-- LazyVim completion engine to use.
-- Can be one of: nvim-cmp, blink.cmp
-- Leave it to "auto" to automatically use the completion engine
-- enabled with `:LazyExtras`
vim.g.lazyvim_cmp = "auto"
-- if the completion engine supports the AI source,
-- use that instead of inline suggestions
vim.g.ai_cmp = true
-- LazyVim root dir detection
-- Each entry can be:
-- * the name of a detector function like `lsp` or `cwd`
@ -12,29 +32,21 @@ vim.g.autoformat = true
-- * a function with signature `function(buf) -> string|string[]`
vim.g.root_spec = { "lsp", { ".git", "lua" }, "cwd" }
-- LazyVim automatically configures lazygit:
-- * theme, based on the active colorscheme.
-- * editorPreset to nvim-remote
-- * enables nerd font icons
-- Set to false to disable.
vim.g.lazygit_config = true
-- Options for the LazyVim statuscolumn
vim.g.lazyvim_statuscolumn = {
folds_open = false, -- show fold sign when fold is open
folds_githl = false, -- highlight fold sign with git sign color
}
-- Optionally setup the terminal to use
-- This sets `vim.o.shell` and does some additional configuration for:
-- * pwsh
-- * powershell
-- LazyVim.terminal.setup("pwsh")
-- Set LSP servers to be ignored when used with `util.root.detectors.lsp`
-- for detecting the LSP root
vim.g.root_lsp_ignore = { "copilot" }
-- Hide deprecation warnings
vim.g.deprecation_warnings = false
-- Show the current document symbols location from Trouble in lualine
-- You can disable this for a buffer by setting `vim.b.trouble_lualine = false`
vim.g.trouble_lualine = true
local opt = vim.opt
@ -63,6 +75,7 @@ opt.grepformat = "%f:%l:%c:%m"
opt.grepprg = "rg --vimgrep"
opt.ignorecase = true -- Ignore case
opt.inccommand = "nosplit" -- preview incremental substitute
opt.jumpoptions = "view"
opt.laststatus = 3 -- global statusline
opt.linebreak = true -- Wrap lines at convenient points
opt.list = true -- Show some invisible characters (tabs...
@ -71,6 +84,7 @@ opt.number = true -- Print line number
opt.pumblend = 10 -- Popup blend
opt.pumheight = 10 -- Maximum number of entries in a popup
opt.relativenumber = true -- Relative line numbers
opt.ruler = false -- Disable the default ruler
opt.scrolloff = 4 -- Lines of context
opt.sessionoptions = { "buffers", "curdir", "tabpages", "winsize", "help", "globals", "skiprtp", "folds" }
opt.shiftround = true -- Round indent
@ -82,11 +96,10 @@ opt.signcolumn = "yes" -- Always show the signcolumn, otherwise it would shift t
opt.smartcase = true -- Don't ignore case with capitals
opt.smartindent = true -- Insert indents automatically
opt.spelllang = { "en" }
opt.spelloptions:append("noplainbuffer")
opt.splitbelow = true -- Put new windows below current
opt.splitkeep = "screen"
opt.splitright = true -- Put new windows right of current
opt.statuscolumn = [[%!v:lua.require'lazyvim.util'.ui.statuscolumn()]]
opt.statuscolumn = [[%!v:lua.require'snacks.statuscolumn'.get()]]
opt.tabstop = 2 -- Number of spaces tabs count for
opt.termguicolors = true -- True color support
opt.timeoutlen = vim.g.vscode and 1000 or 300 -- Lower than default (1000) to quickly trigger which-key

View File

@ -1,138 +1,15 @@
return {
-- auto completion
{
"hrsh7th/nvim-cmp",
version = false, -- last release is way too old
event = "InsertEnter",
dependencies = {
"hrsh7th/cmp-nvim-lsp",
"hrsh7th/cmp-buffer",
"hrsh7th/cmp-path",
},
-- Not all LSP servers add brackets when completing a function.
-- To better deal with this, LazyVim adds a custom option to cmp,
-- that you can configure. For example:
--
-- ```lua
-- opts = {
-- auto_brackets = { "python" }
-- }
-- ```
opts = function()
vim.api.nvim_set_hl(0, "CmpGhostText", { link = "Comment", default = true })
local cmp = require("cmp")
local defaults = require("cmp.config.default")()
return {
auto_brackets = {}, -- configure any filetype to auto add brackets
completion = {
completeopt = "menu,menuone,noinsert",
},
mapping = cmp.mapping.preset.insert({
["<C-n>"] = cmp.mapping.select_next_item({ behavior = cmp.SelectBehavior.Insert }),
["<C-p>"] = cmp.mapping.select_prev_item({ behavior = cmp.SelectBehavior.Insert }),
["<C-b>"] = cmp.mapping.scroll_docs(-4),
["<C-f>"] = cmp.mapping.scroll_docs(4),
["<C-Space>"] = cmp.mapping.complete(),
["<C-e>"] = cmp.mapping.abort(),
["<CR>"] = LazyVim.cmp.confirm(),
["<S-CR>"] = LazyVim.cmp.confirm({ behavior = cmp.ConfirmBehavior.Replace }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
["<C-CR>"] = function(fallback)
cmp.abort()
fallback()
end,
}),
sources = cmp.config.sources({
{ name = "nvim_lsp" },
{ name = "path" },
}, {
{ name = "buffer" },
}),
formatting = {
format = function(_, item)
local icons = require("lazyvim.config").icons.kinds
if icons[item.kind] then
item.kind = icons[item.kind] .. item.kind
end
return item
end,
},
experimental = {
ghost_text = {
hl_group = "CmpGhostText",
},
},
sorting = defaults.sorting,
}
end,
---@param opts cmp.ConfigSchema | {auto_brackets?: string[]}
config = function(_, opts)
for _, source in ipairs(opts.sources) do
source.group_index = source.group_index or 1
end
local parse = require("cmp.utils.snippet").parse
require("cmp.utils.snippet").parse = function(input)
local ok, ret = pcall(parse, input)
if ok then
return ret
end
return LazyVim.cmp.snippet_preview(input)
end
local cmp = require("cmp")
cmp.setup(opts)
cmp.event:on("confirm_done", function(event)
if vim.tbl_contains(opts.auto_brackets or {}, vim.bo.filetype) then
LazyVim.cmp.auto_brackets(event.entry)
end
end)
cmp.event:on("menu_opened", function(event)
LazyVim.cmp.add_missing_snippet_docs(event.window)
end)
import = "lazyvim.plugins.extras.coding.nvim-cmp",
enabled = function()
return LazyVim.cmp_engine() == "nvim-cmp"
end,
},
-- snippets
{
"nvim-cmp",
dependencies = {
{
"garymjr/nvim-snippets",
opts = {
friendly_snippets = true,
},
dependencies = { "rafamadriz/friendly-snippets" },
},
},
opts = function(_, opts)
opts.snippet = {
expand = function(item)
return LazyVim.cmp.expand(item.body)
end,
}
table.insert(opts.sources, { name = "snippets" })
import = "lazyvim.plugins.extras.coding.blink",
enabled = function()
return LazyVim.cmp_engine() == "blink.cmp"
end,
keys = {
{
"<Tab>",
function()
return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>"
end,
expr = true,
silent = true,
mode = { "i", "s" },
},
{
"<S-Tab>",
function()
return vim.snippet.active({ direction = -1 }) and "<cmd>lua vim.snippet.jump(-1)<cr>" or "<Tab>"
end,
expr = true,
silent = true,
mode = { "i", "s" },
},
},
},
-- auto pairs
@ -140,24 +17,20 @@ return {
"echasnovski/mini.pairs",
event = "VeryLazy",
opts = {
mappings = {
["`"] = { action = "closeopen", pair = "``", neigh_pattern = "[^\\`].", register = { cr = false } },
},
},
keys = {
{
"<leader>up",
function()
vim.g.minipairs_disable = not vim.g.minipairs_disable
if vim.g.minipairs_disable then
LazyVim.warn("Disabled auto pairs", { title = "Option" })
else
LazyVim.info("Enabled auto pairs", { title = "Option" })
end
end,
desc = "Toggle Auto Pairs",
},
modes = { insert = true, command = true, terminal = false },
-- skip autopair when next character is one of these
skip_next = [=[[%w%%%'%[%"%.%`%$]]=],
-- skip autopair when the cursor is inside these treesitter nodes
skip_ts = { "string" },
-- skip autopair when next character is closing pair
-- and there are more closing pairs than opening pairs
skip_unbalanced = true,
-- better deal with markdown code blocks
markdown = true,
},
config = function(_, opts)
LazyVim.mini.pairs(opts)
end,
},
-- comments
@ -172,9 +45,6 @@ return {
"echasnovski/mini.ai",
event = "VeryLazy",
opts = function()
LazyVim.on_load("which-key.nvim", function()
vim.schedule(LazyVim.mini.ai_whichkey)
end)
local ai = require("mini.ai")
return {
n_lines = 500,
@ -191,13 +61,20 @@ return {
{ "%u[%l%d]+%f[^%l%d]", "%f[%S][%l%d]+%f[^%l%d]", "%f[%P][%l%d]+%f[^%l%d]", "^[%l%d]+%f[^%l%d]" },
"^().*()$",
},
i = LazyVim.mini.ai_indent, -- indent
g = LazyVim.mini.ai_buffer, -- buffer
u = ai.gen_spec.function_call(), -- u for "Usage"
U = ai.gen_spec.function_call({ name_pattern = "[%w_]" }), -- without dot in function name
},
}
end,
config = function(_, opts)
require("mini.ai").setup(opts)
LazyVim.on_load("which-key.nvim", function()
vim.schedule(function()
LazyVim.mini.ai_whichkey(opts)
end)
end)
end,
},
{
@ -206,19 +83,11 @@ return {
cmd = "LazyDev",
opts = {
library = {
{ path = "luvit-meta/library", words = { "vim%.uv" } },
{ path = "${3rd}/luv/library", words = { "vim%.uv" } },
{ path = "LazyVim", words = { "LazyVim" } },
{ path = "snacks.nvim", words = { "Snacks" } },
{ path = "lazy.nvim", words = { "LazyVim" } },
},
},
},
-- Manage libuv types with lazy. Plugin will never be loaded
{ "Bilal2453/luvit-meta", lazy = true },
-- Add lazydev source to cmp
{
"hrsh7th/nvim-cmp",
opts = function(_, opts)
table.insert(opts.sources, { name = "lazydev", group_index = 0 })
end,
},
}

View File

@ -19,6 +19,7 @@ return {
cmp = true,
dashboard = true,
flash = true,
grug_far = true,
gitsigns = true,
headlines = true,
illuminate = true,
@ -43,11 +44,23 @@ return {
noice = true,
notify = true,
semantic_tokens = true,
snacks = true,
telescope = true,
treesitter = true,
treesitter_context = true,
which_key = true,
},
},
specs = {
{
"akinsho/bufferline.nvim",
optional = true,
opts = function(_, opts)
if (vim.g.colors_name or ""):find("catppuccin") then
opts.highlights = require("catppuccin.groups.integrations.bufferline").get()
end
end,
},
},
},
}

View File

@ -4,6 +4,9 @@ return {
{ "garymjr/nvim-snippets", enabled = false },
{ import = "lazyvim.plugins.extras.coding.luasnip" },
-- Use nvim-cmp instead of blink.cmp
{ import = "lazyvim.plugins.extras.coding.nvim-cmp" },
-- Use mini.comment instead of ts-comments
{ "folke/ts-comments.nvim", enabled = false },
{ import = "lazyvim.plugins.extras.coding.mini-comment" },
@ -26,4 +29,13 @@ return {
"neovim/nvim-lspconfig",
dependencies = {},
},
-- dummy import to save core imports
{
import = "foobar",
enabled = function()
LazyVim.plugin.save_core()
return false
end,
},
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,69 @@
return {
-- codeium
{
"Exafunction/codeium.nvim",
cmd = "Codeium",
build = ":Codeium Auth",
opts = {
enable_cmp_source = vim.g.ai_cmp,
virtual_text = {
enabled = not vim.g.ai_cmp,
key_bindings = {
accept = false, -- handled by nvim-cmp / blink.cmp
next = "<M-]>",
prev = "<M-[>",
},
},
},
},
-- add ai_accept action
{
"Exafunction/codeium.nvim",
opts = function()
LazyVim.cmp.actions.ai_accept = function()
if require("codeium.virtual_text").get_current_completion_item() then
LazyVim.create_undo()
vim.api.nvim_input(require("codeium.virtual_text").accept())
return true
end
end
end,
},
-- codeium cmp source
{
"nvim-cmp",
optional = true,
dependencies = { "codeium.nvim" },
opts = function(_, opts)
table.insert(opts.sources, 1, {
name = "codeium",
group_index = 1,
priority = 100,
})
end,
},
{
"nvim-lualine/lualine.nvim",
optional = true,
event = "VeryLazy",
opts = function(_, opts)
table.insert(opts.sections.lualine_x, 2, LazyVim.lualine.cmp_source("codeium"))
end,
},
vim.g.ai_cmp and {
"saghen/blink.cmp",
optional = true,
dependencies = { "codeium.nvim", "saghen/blink.compat" },
opts = {
sources = {
compat = { "codeium" },
providers = { codeium = { kind = "Codeium" } },
},
},
} or nil,
}

View File

@ -1,28 +1,39 @@
local M = {}
---@param kind string
function M.pick(kind)
return function()
local actions = require("CopilotChat.actions")
local items = actions[kind .. "_actions"]()
if not items then
LazyVim.warn("No " .. kind .. " found on the current line")
return
end
local ok = pcall(require, "fzf-lua")
require("CopilotChat.integrations." .. (ok and "fzflua" or "telescope")).pick(items)
end
end
return {
{
"CopilotC-Nvim/CopilotChat.nvim",
branch = "canary",
branch = "main",
cmd = "CopilotChat",
opts = function()
local user = vim.env.USER or "User"
user = user:sub(1, 1):upper() .. user:sub(2)
return {
model = "gpt-4",
auto_insert_mode = true,
show_help = true,
question_header = "" .. user .. " ",
answer_header = " Copilot ",
window = {
width = 0.4,
},
selection = function(source)
local select = require("CopilotChat.select")
return select.visual(source) or select.buffer(source)
end,
}
end,
keys = {
{ "<leader>a", "", desc = "+ai" },
{ "<c-s>", "<CR>", ft = "copilot-chat", desc = "Submit Prompt", remap = true },
{ "<leader>a", "", desc = "+ai", mode = { "n", "v" } },
{
"<leader>aa",
function()
@ -50,10 +61,11 @@ return {
desc = "Quick Chat (CopilotChat)",
mode = { "n", "v" },
},
-- Show prompts actions with telescope
{ "<leader>ap", M.pick("prompt"), desc = "Prompt Actions (CopilotChat)", mode = { "n", "v" } },
},
config = function(_, opts)
local chat = require("CopilotChat")
require("CopilotChat.integrations.cmp").setup()
vim.api.nvim_create_autocmd("BufEnter", {
pattern = "copilot-chat",
@ -67,39 +79,6 @@ return {
end,
},
-- Telescope integration
{
"nvim-telescope/telescope.nvim",
optional = true,
keys = {
-- Show help actions with telescope
{
"<leader>ad",
function()
local actions = require("CopilotChat.actions")
local help = actions.help_actions()
if not help then
LazyVim.warn("No diagnostics found on the current line")
return
end
require("CopilotChat.integrations.telescope").pick(help)
end,
desc = "Diagnostic Help (CopilotChat)",
mode = { "n", "v" },
},
-- Show prompts actions with telescope
{
"<leader>ap",
function()
local actions = require("CopilotChat.actions")
require("CopilotChat.integrations.telescope").pick(actions.prompt_actions())
end,
desc = "Prompt Actions (CopilotChat)",
mode = { "n", "v" },
},
},
},
-- Edgy integration
{
"folke/edgy.nvim",

View File

@ -0,0 +1,116 @@
return {
recommended = true,
-- copilot
{
"zbirenbaum/copilot.lua",
cmd = "Copilot",
build = ":Copilot auth",
event = "InsertEnter",
opts = {
suggestion = {
enabled = not vim.g.ai_cmp,
auto_trigger = true,
keymap = {
accept = false, -- handled by nvim-cmp / blink.cmp
next = "<M-]>",
prev = "<M-[>",
},
},
panel = { enabled = false },
filetypes = {
markdown = true,
help = true,
},
},
},
-- add ai_accept action
{
"zbirenbaum/copilot.lua",
opts = function()
LazyVim.cmp.actions.ai_accept = function()
if require("copilot.suggestion").is_visible() then
LazyVim.create_undo()
require("copilot.suggestion").accept()
return true
end
end
end,
},
-- lualine
{
"nvim-lualine/lualine.nvim",
optional = true,
event = "VeryLazy",
opts = function(_, opts)
table.insert(
opts.sections.lualine_x,
2,
LazyVim.lualine.status(LazyVim.config.icons.kinds.Copilot, function()
local clients = package.loaded["copilot"] and LazyVim.lsp.get_clients({ name = "copilot", bufnr = 0 }) or {}
if #clients > 0 then
local status = require("copilot.api").status.data.status
return (status == "InProgress" and "pending") or (status == "Warning" and "error") or "ok"
end
end)
)
end,
},
vim.g.ai_cmp
and {
-- copilot cmp source
{
"nvim-cmp",
optional = true,
dependencies = { -- this will only be evaluated if nvim-cmp is enabled
{
"zbirenbaum/copilot-cmp",
opts = {},
config = function(_, opts)
local copilot_cmp = require("copilot_cmp")
copilot_cmp.setup(opts)
-- attach cmp source whenever copilot attaches
-- fixes lazy-loading issues with the copilot cmp source
LazyVim.lsp.on_attach(function()
copilot_cmp._on_insert_enter({})
end, "copilot")
end,
specs = {
{
"nvim-cmp",
optional = true,
---@param opts cmp.ConfigSchema
opts = function(_, opts)
table.insert(opts.sources, 1, {
name = "copilot",
group_index = 1,
priority = 100,
})
end,
},
},
},
},
},
{
"saghen/blink.cmp",
optional = true,
dependencies = { "giuxtaposition/blink-cmp-copilot" },
opts = {
sources = {
default = { "copilot" },
providers = {
copilot = {
name = "copilot",
module = "blink-cmp-copilot",
kind = "Copilot",
},
},
},
},
},
}
or nil,
}

Some files were not shown because too many files have changed in this diff Show More