Compare commits

..

151 Commits

Author SHA1 Message Date
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
77 changed files with 1271 additions and 508 deletions

3
.github/.release-please-manifest.json vendored Normal file
View File

@ -0,0 +1,3 @@
{
".": "12.26.2"
}

View File

@ -6,7 +6,7 @@ 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?

View File

@ -1,5 +1,5 @@
blank_issues_enabled: false
contact_links:
- name: Ask a question or start a discussion
- name: Ask a question
url: https://github.com/LazyVim/LazyVim/discussions
about: Use Github discussions instead

View File

@ -1,15 +1,19 @@
## What is this PR for?
## Description
<!-- 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?
## Related Issue(s)
<!--
If this PR fixes any issues, please link to the issue here.
Fixes #<issue_number>
- 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,10 @@
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."
ci:
uses: folke/github/.github/workflows/stale.yml@main
secrets: inherit

12
.github/workflows/update.yml vendored Normal file
View File

@ -0,0 +1,12 @@
name: Update Repo
on:
workflow_dispatch:
schedule:
# Run every hour
- cron: "0 * * * *"
jobs:
ci:
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.*

View File

@ -1,5 +1,268 @@
# Changelog
## [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](https://github.com/LazyVim/LazyVim/commit/d108169e951fff8c65ed8dea89b058717cc48da5))
## [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](https://github.com/LazyVim/LazyVim/commit/330d2e470b79eb31f884685b331d5d255776de90))
* **mini.starter:** lazyvim startuptime in mini.starter ([#3935](https://github.com/LazyVim/LazyVim/issues/3935)) ([5f952bb](https://github.com/LazyVim/LazyVim/commit/5f952bb9d6927bdc6a4411dc6b1002fa47b3371d))
## [12.26.0](https://github.com/LazyVim/LazyVim/compare/v12.25.0...v12.26.0) (2024-07-05)
### Features
* **dial:** yaml support ([f64bbd2](https://github.com/LazyVim/LazyVim/commit/f64bbd29fb279ba672ce1fc9a79b06ecc4237c87))
* **util:** rest-client ([#3915](https://github.com/LazyVim/LazyVim/issues/3915)) ([76b41cd](https://github.com/LazyVim/LazyVim/commit/76b41cdec421668dd8078e43184674c783554044))
* **vue:** enabled hybrid mode to avoid 2 typescript lsp running at same time ([#3908](https://github.com/LazyVim/LazyVim/issues/3908)) ([4b0f720](https://github.com/LazyVim/LazyVim/commit/4b0f720457fbbf624406a540b42e9ad7f2e50a77))
### Bug Fixes
* **dial:** move date related augends to default group ([#3927](https://github.com/LazyVim/LazyVim/issues/3927)) ([4192d95](https://github.com/LazyVim/LazyVim/commit/4192d9578d1946deba76efd1a0ec36e4ba0e1bbf))
* **outline:** use the correct symbols and filter config format ([#3924](https://github.com/LazyVim/LazyVim/issues/3924)) ([502dac1](https://github.com/LazyVim/LazyVim/commit/502dac1d9aed71aaa9be8c08a4312622742d47f3))
* **project:** properly close window after changing directory ([#3919](https://github.com/LazyVim/LazyVim/issues/3919)) ([51e99df](https://github.com/LazyVim/LazyVim/commit/51e99dfba104af54947dcb960f277d739db4280c))
## [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](https://github.com/LazyVim/LazyVim/commit/9c7d3dc75e4ecafe8a6dd6ee8fef0bd7711550ac))
* **fzf-lua:** preview keymaps for git ([#3904](https://github.com/LazyVim/LazyVim/issues/3904)) ([d5f3d39](https://github.com/LazyVim/LazyVim/commit/d5f3d395f490a252125044d0918267eb18298532))
* **ui:** use `mini.icons` instead of `nvim-wev-devicons` ([#3899](https://github.com/LazyVim/LazyVim/issues/3899)) ([045faec](https://github.com/LazyVim/LazyVim/commit/045faec0351ff9a38fda1af9b06bd7f948e84d28))
### Bug Fixes
* **fzf:** make sure `vim.ui.select` works when fzf is not loaded yet ([9acadc7](https://github.com/LazyVim/LazyVim/commit/9acadc7ec289966cf8f4f6c37c348f286ed73ffe))
## [12.24.0](https://github.com/LazyVim/LazyVim/compare/v12.23.0...v12.24.0) (2024-07-03)
### Features
* **options:** jumpoptions=view ([fe3d0da](https://github.com/LazyVim/LazyVim/commit/fe3d0da5087ecadfee8922fa363d3e84c0ba3461))
### Bug Fixes
* **dials:** dials.nvim stopped working after making changes to plugin files ([455557c](https://github.com/LazyVim/LazyVim/commit/455557c1f693c6ced946de2322beceb555161417))
### Performance Improvements
* **fzf:** lazy-load fzf-lua ([b9a8a4a](https://github.com/LazyVim/LazyVim/commit/b9a8a4ad7f39c8ed3f4febb25dabc9ae24110f98))
## [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](https://github.com/LazyVim/LazyVim/commit/78cf6ee024cbf6a17dc8406555eb131994cd8b63))
### Bug Fixes
* **chezmoi:** missing support for fzf file picker ([#3888](https://github.com/LazyVim/LazyVim/issues/3888)) ([2114a66](https://github.com/LazyVim/LazyVim/commit/2114a6610f6fc6dea2e4937171429252641bd27d))
* **neo-tree:** remove `branch`, since it obstructs updating to latest version ([#3871](https://github.com/LazyVim/LazyVim/issues/3871)) ([d23731c](https://github.com/LazyVim/LazyVim/commit/d23731c50d149769799d90ae8ec4969a79db3628))
## [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](https://github.com/LazyVim/LazyVim/commit/8a6875ab3bc79d5890cf0a65e3ef602c1567fa90))
### Reverts
* feat(neo-tree): more sane defaults for gitignore and hidden files ([2bfcd05](https://github.com/LazyVim/LazyVim/commit/2bfcd05c621f74b4d735b14b43804a901f17d416))
## [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](https://github.com/LazyVim/LazyVim/commit/131187c092cc42768e0a48a3668e91d009a213a0))
* **cmp:** disable `item.menu` for Rust filetypes ([#3858](https://github.com/LazyVim/LazyVim/issues/3858)) ([ee44b21](https://github.com/LazyVim/LazyVim/commit/ee44b2189827e6a34530ad8b55f214a0a809c045))
* **neo-tree:** more sane defaults for gitignore and hidden files ([85405d6](https://github.com/LazyVim/LazyVim/commit/85405d65348cac72343d081a81addfb5c8d43743))
### Bug Fixes
* **lsp:** prevent setting up mason-lspconfig more than once when setting mslp opts ([8c900f9](https://github.com/LazyVim/LazyVim/commit/8c900f92e735e9c7e9af24b97de740390383a137))
## [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](https://github.com/LazyVim/LazyVim/commit/b43ace1ecfbeb87626fbde8973a2717247471b2e))
### Performance Improvements
* **markdown:** don't format with markdown-toc when no toc in the doc ([73e72ee](https://github.com/LazyVim/LazyVim/commit/73e72ee21d7673e4040bb99f4de834410219d6cb))
## [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](https://github.com/LazyVim/LazyVim/commit/683bf52c024306f9c0fccc2b02348692c3f09bfa))
* **extras:** add chezmoi extra ([#2859](https://github.com/LazyVim/LazyVim/issues/2859)) ([88f2541](https://github.com/LazyVim/LazyVim/commit/88f25410e020fe64fe42a94d71f0be3db1b918b4))
* **extras:** switch to markdownlint-cli2 ([#3843](https://github.com/LazyVim/LazyVim/issues/3843)) ([f47d105](https://github.com/LazyVim/LazyVim/commit/f47d105b80dce615a572a13351a137653444d548))
* **java:** enable Lombok support in jdtls ([#3852](https://github.com/LazyVim/LazyVim/issues/3852)) ([0fede40](https://github.com/LazyVim/LazyVim/commit/0fede4040b15da7e74c6a741132ff3d48634c1ad))
### Bug Fixes
* **bufremove:** fix `Cancel` ([#3834](https://github.com/LazyVim/LazyVim/issues/3834)) ([87fe403](https://github.com/LazyVim/LazyVim/commit/87fe403df62fd8b89b886920c4f562da8e162cbe))
* **edgy:** improve edgy.lua bufferline offset logic ([#3794](https://github.com/LazyVim/LazyVim/issues/3794)) ([566753b](https://github.com/LazyVim/LazyVim/commit/566753b8889a6132f2e667606a6a002fdd8847b1))
* **extras:** don't load pkgs when parsing specs for LazyExtras ([3764735](https://github.com/LazyVim/LazyVim/commit/3764735fb20596dfc9cd0707d2830a40004c7f0e))
* **gitsigns:** fix inconsistent signs ([#3830](https://github.com/LazyVim/LazyVim/issues/3830)) ([44ed11c](https://github.com/LazyVim/LazyVim/commit/44ed11c4f8867cdc887fdcba6a22938125a403ee))
* **lazygit:** fix browsing private git hostings ([#3833](https://github.com/LazyVim/LazyVim/issues/3833)) ([b292a72](https://github.com/LazyVim/LazyVim/commit/b292a721bfce1b079428a3a42aa9ea3454c5692d))
* **lint:** make prepend_args opt work when default args is empty ([#3828](https://github.com/LazyVim/LazyVim/issues/3828)) ([ff1b44e](https://github.com/LazyVim/LazyVim/commit/ff1b44e67606080b8b40d066943c55c92856e3c6))
* **neotest:** support adapter key on adapter for playwright ([#3824](https://github.com/LazyVim/LazyVim/issues/3824)) ([e5e8d7a](https://github.com/LazyVim/LazyVim/commit/e5e8d7a8056a8c80456751385e73a4b184bcd436))
* **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](https://github.com/LazyVim/LazyVim/commit/d6429a5c8ad317057cb852d3cd67ce52e9c30727))
## [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](https://github.com/LazyVim/LazyVim/commit/135ce0d7edb64958b2c8f636a9ba624ec0721eb3))
## [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](https://github.com/LazyVim/LazyVim/commit/938a6718c6f0d5c6716a34bd3383758907820c52))
### Bug Fixes
* **dashboard:** load dashboard when closing lazy if needed ([fa2fc64](https://github.com/LazyVim/LazyVim/commit/fa2fc6403185faabc47741b3aa2809192870b92e))
* **elixir:** fix credo detection for elixir linters. ([#3809](https://github.com/LazyVim/LazyVim/issues/3809)) ([c132158](https://github.com/LazyVim/LazyVim/commit/c13215814cd5dc3821625e9f3b55860ba880ebdb))
* **fzf:** disable `preview` for `vtsls` ([#3798](https://github.com/LazyVim/LazyVim/issues/3798)) ([b5945c2](https://github.com/LazyVim/LazyVim/commit/b5945c2fc8cbb531983c7ec27d283ad8abf1acec))
* **noice:** dont show old messages when installing plugins ([faee8ce](https://github.com/LazyVim/LazyVim/commit/faee8ce5819c40852f574aafad55701e2492ffae))
* **util.terminal:** fix the shellredir and shellpipe options for powershell ([#3803](https://github.com/LazyVim/LazyVim/issues/3803)) ([a33eabd](https://github.com/LazyVim/LazyVim/commit/a33eabddd9f3786421652d07894516d946c88647))
### Performance Improvements
* **markdown:** add filetype in VeryLazy ([3513362](https://github.com/LazyVim/LazyVim/commit/351336244c0a68d4ebed7f687e27e6eab8e5da09))
## [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](https://github.com/LazyVim/LazyVim/commit/b55c7734df72ff06659c16f5f9ed27b6b7199d44))
* **extras.astro:** support `astro.config.ts` root ([#3786](https://github.com/LazyVim/LazyVim/issues/3786)) ([8be66bb](https://github.com/LazyVim/LazyVim/commit/8be66bb1a62aae97552032926fdcc101867b2028))
* **lazygit:** use `lazy.util.open` on Neovim &lt;= 0.10 ([#3778](https://github.com/LazyVim/LazyVim/issues/3778)) ([8ea3f69](https://github.com/LazyVim/LazyVim/commit/8ea3f690e6017ba37022060a62f1d69fbf3aeaf7))
* **markdown:** added support for mdx files ([abec8fb](https://github.com/LazyVim/LazyVim/commit/abec8fbb03bdbe881c35401274083f315025a1ed))
## [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](https://github.com/LazyVim/LazyVim/commit/1f423930e03078eb1a2786356a46287c8a466c91))
* **gitsigns:** new keymap for `Gitsigns blame` ([#3758](https://github.com/LazyVim/LazyVim/issues/3758)) ([b22831b](https://github.com/LazyVim/LazyVim/commit/b22831b7e25a4681df171da30204d4d4f7e9abfa))
* **go:** switch to neotest-golang ([#3749](https://github.com/LazyVim/LazyVim/issues/3749)) ([55464b7](https://github.com/LazyVim/LazyVim/commit/55464b77c6ae8f14306ce743bcb3c5c465af3d4f))
### Bug Fixes
* **neo-tree:** don't enable document symbols by default ([52d4616](https://github.com/LazyVim/LazyVim/commit/52d46166b14a9e99509c509482d9a0979fa00809))
* **refactoring:** use `pick` for both Telescope and fzf-lua ([#3769](https://github.com/LazyVim/LazyVim/issues/3769)) ([b45d4ed](https://github.com/LazyVim/LazyVim/commit/b45d4ed62c613a4c47dd9183cf51985f2b153b21))
* **statuscolumn:** fix `folds_open = true` ([#3756](https://github.com/LazyVim/LazyVim/issues/3756)) ([b47c65f](https://github.com/LazyVim/LazyVim/commit/b47c65f4087c4d82720ab7439f395aba5d6b5f40))
## [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](https://github.com/LazyVim/LazyVim/commit/1101c3ed24709feec85371a951ea0feed6bd50fa))
* **project:** add fzf-lua keymap descriptions ([#3690](https://github.com/LazyVim/LazyVim/issues/3690)) ([07ab681](https://github.com/LazyVim/LazyVim/commit/07ab681b1d6f0223e6b265f3eb6aaafbd12e5c0e))
### Bug Fixes
* **dap:** get the correct debugpy pkg path on windows ([#3716](https://github.com/LazyVim/LazyVim/issues/3716)) ([06f13da](https://github.com/LazyVim/LazyVim/commit/06f13daf7261377ecfa6b4ac845d742f446df719))
* **extras.python:** avoid launching extra console with dap on Windows ([#3723](https://github.com/LazyVim/LazyVim/issues/3723)) ([67eece6](https://github.com/LazyVim/LazyVim/commit/67eece6d74f071035ca7b934a753d71d1677dd9b))
* **root:** also check root_dir. Fixes [#3732](https://github.com/LazyVim/LazyVim/issues/3732) ([d4991d5](https://github.com/LazyVim/LazyVim/commit/d4991d5aac3c4ab5865e65d73fb8957b3d61bdc3))
* **statuscolumn:** `%r` deprecated in nightly and `%l` handles everything ([#3719](https://github.com/LazyVim/LazyVim/issues/3719)) ([1a295c5](https://github.com/LazyVim/LazyVim/commit/1a295c5ef8cab02c6054067c35ca805a3e4ccf72))
## [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](https://github.com/LazyVim/LazyVim/commit/0fcadced89f96f59a9f9cb0c85ee73990df1219f))
* **php:** allow using intelephense instead of phpactor in php extras ([#3691](https://github.com/LazyVim/LazyVim/issues/3691)) ([ea3b5cc](https://github.com/LazyVim/LazyVim/commit/ea3b5cc2ab4ff7d70163ab66ea7fa0acc0e88566))
* **treesitter-textobjects:** added ]a and [a to move between parameters ([18c7731](https://github.com/LazyVim/LazyVim/commit/18c7731281f7a9886ae98d9c034661fa85340fb2))
### Bug Fixes
* **cmp:** visible ([57ef349](https://github.com/LazyVim/LazyVim/commit/57ef349910ec40c7024f3b50a549aabefa1ebbf0))
* **conform:** `lsp_format` breaking changes ([#3707](https://github.com/LazyVim/LazyVim/issues/3707)) ([a69e626](https://github.com/LazyVim/LazyVim/commit/a69e626d7a3a027df124bae7b2672658a4fb5b0f))
* **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](https://github.com/LazyVim/LazyVim/commit/bdca1e95ff97348501a715bd6aa5977422a27969))
* **git:** removed debug info ([d9caee6](https://github.com/LazyVim/LazyVim/commit/d9caee610038548a4b79f2b6eb126180ec8ba6b6))
* **lazygit:** support monorepo structure and other git providers ([#3701](https://github.com/LazyVim/LazyVim/issues/3701)) ([1f034e1](https://github.com/LazyVim/LazyVim/commit/1f034e16000692d1d0ec8e02110d37cf2089bd4c))
* **lsp:** dont highlight document words when cmp is visible ([0d57115](https://github.com/LazyVim/LazyVim/commit/0d57115f01b4094f68e426942e14892f204ec664))
* **snippets:** nvim-snippets `&lt;S-Tab&gt;` prev key ([#3712](https://github.com/LazyVim/LazyVim/issues/3712)) ([492fa86](https://github.com/LazyVim/LazyVim/commit/492fa86faa29f2987f662ad0cdb796b5c1c49ef3))
## [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](https://github.com/LazyVim/LazyVim/commit/cda30f2740f0479098e93a546a741aeefad535cc))
* **mini.pairs:** allow to skip pairs in certain treesitter nodes ([d6bea06](https://github.com/LazyVim/LazyVim/commit/d6bea06a82912e324ec86438708e619aaa3adce0))
* **mini.pairs:** and now the actual code :) ([540261d](https://github.com/LazyVim/LazyVim/commit/540261d74d2a743f3bff7eb9749cddeea1d29b19))
* **mini.pairs:** enable mini.pairs in the cmdline ([2daca4b](https://github.com/LazyVim/LazyVim/commit/2daca4b51014a1a14ce8a5ccdd9fdf08a51db3db))
* **outline:** free ctrl-k /ctrl+j ([#3686](https://github.com/LazyVim/LazyVim/issues/3686)) ([31c2ad7](https://github.com/LazyVim/LazyVim/commit/31c2ad7dac2e711018b3e1393c5b995515b2ef5e))
* **project:** add some fzf-lua keymap ([#3666](https://github.com/LazyVim/LazyVim/issues/3666)) ([f24999f](https://github.com/LazyVim/LazyVim/commit/f24999fd3645756a338137278ccc4fa3e1240a90))
### Bug Fixes
* **edgy:** neo-tree. See [#3667](https://github.com/LazyVim/LazyVim/issues/3667) ([f22a602](https://github.com/LazyVim/LazyVim/commit/f22a6022c4e97bc8dc6060479fe4188e1a953c1e))
* **egdy:** do not add panes for not enabled neo-tree sources ([#3667](https://github.com/LazyVim/LazyVim/issues/3667)) ([67616b9](https://github.com/LazyVim/LazyVim/commit/67616b9520a5309d2e3565ff880b37ceef662179))
* **pick:** remove the unused commands attribute ([#3673](https://github.com/LazyVim/LazyVim/issues/3673)) ([eca8692](https://github.com/LazyVim/LazyVim/commit/eca86924510676667a3868efc512588749f6594e))
* **telescope:** default to follow=true ([b87d18c](https://github.com/LazyVim/LazyVim/commit/b87d18cc17300c49bf8bec4b81a3416024a39a21))
## [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](https://github.com/LazyVim/LazyVim/commit/bf809ad2a1f6cd8f74451feacdd79af68d201d6e))
* **project:** ctrl-t opens project in tab ([f28937b](https://github.com/LazyVim/LazyVim/commit/f28937b0c53195a90fb450d0f07bacd3321a0cfd))
### Bug Fixes
* **dap:** make sure mason-dap is loaded after initializing dap. See [#3663](https://github.com/LazyVim/LazyVim/issues/3663) ([e0e1ab0](https://github.com/LazyVim/LazyVim/commit/e0e1ab01af01f393d4c96f943faddcc62f6eda16))
* **dap:** make sure mason-nvim-dap loads after nvim-dap ([2b703ac](https://github.com/LazyVim/LazyVim/commit/2b703ac125a21b48bb207d86cddbb461189d025b))
* **elixir:** add missing lspconfig ([#3661](https://github.com/LazyVim/LazyVim/issues/3661)) ([06f5ef9](https://github.com/LazyVim/LazyVim/commit/06f5ef928f61dbb64ee0555cddf556bc01cc62f4))
* **fzf:** only add trouble integration when trouble is available ([e1f587a](https://github.com/LazyVim/LazyVim/commit/e1f587a43dce83c652db5c6742cf516d983152a3))
* **rust:** incorporate latest changes from `rustaceanvim` ([#3655](https://github.com/LazyVim/LazyVim/issues/3655)) ([2d68976](https://github.com/LazyVim/LazyVim/commit/2d689763e43f9c744f4893a6d68fcb8308502053))
* **vue:** disable volar hybrid mode since it interferes with tsserver ([#3654](https://github.com/LazyVim/LazyVim/issues/3654)) ([5070694](https://github.com/LazyVim/LazyVim/commit/5070694861f91ac258fbf851ed771294cafafb8f))
## [12.14.1](https://github.com/LazyVim/LazyVim/compare/v12.14.0...v12.14.1) (2024-06-14)

View File

@ -1,4 +1,4 @@
*LazyVim.txt* For Neovim >= 0.9.0 Last change: 2024 June 14
*LazyVim.txt* For Neovim Last change: 2024 July 07
==============================================================================
Table of Contents *LazyVim-table-of-contents*

View File

@ -67,6 +67,7 @@ vim.api.nvim_create_autocmd("FileType", {
"neotest-summary",
"neotest-output-panel",
"dbout",
"gitsigns.blame",
},
callback = function(event)
vim.bo[event.buf].buflisted = false
@ -113,3 +114,29 @@ vim.api.nvim_create_autocmd({ "BufWritePre" }, {
vim.fn.mkdir(vim.fn.fnamemodify(file, ":p:h"), "p")
end,
})
vim.filetype.add({
pattern = {
[".*"] = {
function(path, buf)
return vim.bo[buf]
and vim.bo[buf].filetype ~= "bigfile"
and path
and vim.fn.getfsize(path) > vim.g.bigfile_size
and "bigfile"
or nil
end,
},
},
})
vim.api.nvim_create_autocmd({ "FileType" }, {
group = augroup("bigfile"),
pattern = "bigfile",
callback = function(ev)
vim.b.minianimate_disable = true
vim.schedule(function()
vim.bo[ev.buf].syntax = vim.filetype.match({ buf = ev.buf }) or ""
end)
end,
})

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 = "12.26.2" -- x-release-please-version
LazyVim.config = M
---@class LazyVimOptions
@ -136,6 +136,7 @@ local defaults = {
M.json = {
version = 6,
path = vim.g.lazyvim_json or vim.fn.stdpath("config") .. "/lazyvim.json",
data = {
version = nil, ---@type string?
news = {}, ---@type table<string, string>
@ -144,8 +145,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()

View File

@ -40,6 +40,12 @@ vim.g.lazyvim_statuscolumn = {
-- Hide deprecation warnings
vim.g.deprecation_warnings = false
-- Set filetype to `bigfile` for files larger than 1.5 MB
-- Only vim syntax will be enabled (with the correct filetype)
-- LSP, treesitter and other ft plugins will be disabled.
-- mini.animate will also be disabled.
vim.g.bigfile_size = 1024 * 1024 * 1.5 -- 1.5 MB
-- Show the current document symbols location from Trouble in lualine
vim.g.trouble_lualine = true
@ -69,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...

View File

@ -23,19 +23,19 @@ return {
vim.api.nvim_set_hl(0, "CmpGhostText", { link = "Comment", default = true })
local cmp = require("cmp")
local defaults = require("cmp.config.default")()
local auto_select = true
return {
auto_brackets = {}, -- configure any filetype to auto add brackets
completion = {
completeopt = "menu,menuone,noinsert",
completeopt = "menu,menuone,noinsert" .. (auto_select and "" or ",noselect"),
},
preselect = auto_select and cmp.PreselectMode.Item or cmp.PreselectMode.None,
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(),
["<CR>"] = LazyVim.cmp.confirm({ select = auto_select }),
["<C-y>"] = LazyVim.cmp.confirm({ select = true }),
["<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()
@ -49,11 +49,23 @@ return {
{ name = "buffer" },
}),
formatting = {
format = function(_, item)
local icons = require("lazyvim.config").icons.kinds
format = function(entry, item)
local icons = LazyVim.config.icons.kinds
if icons[item.kind] then
item.kind = icons[item.kind] .. item.kind
end
local widths = {
abbr = vim.g.cmp_widths and vim.g.cmp_widths.abbr or 40,
menu = vim.g.cmp_widths and vim.g.cmp_widths.menu or 30,
}
for key, width in pairs(widths) do
if item[key] and vim.fn.strdisplaywidth(item[key]) > width then
item[key] = vim.fn.strcharpart(item[key], 0, width - 1) .. ""
end
end
return item
end,
},
@ -65,32 +77,7 @@ return {
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)
end,
main = "lazyvim.util.cmp",
},
-- snippets
@ -128,7 +115,7 @@ return {
{
"<S-Tab>",
function()
return vim.snippet.active({ direction = -1 }) and "<cmd>lua vim.snippet.jump(-1)<cr>" or "<Tab>"
return vim.snippet.active({ direction = -1 }) and "<cmd>lua vim.snippet.jump(-1)<cr>" or "<S-Tab>"
end,
expr = true,
silent = true,
@ -142,9 +129,16 @@ return {
"echasnovski/mini.pairs",
event = "VeryLazy",
opts = {
mappings = {
["`"] = { action = "closeopen", pair = "``", neigh_pattern = "[^\\`].", register = { cr = false } },
},
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,
},
keys = {
{
@ -160,6 +154,9 @@ return {
desc = "Toggle Auto Pairs",
},
},
config = function(_, opts)
LazyVim.mini.pairs(opts)
end,
},
-- comments

View File

@ -3,7 +3,6 @@ return {
-- file explorer
{
"nvim-neo-tree/neo-tree.nvim",
branch = "v3.x",
cmd = "Neotree",
keys = {
{
@ -60,7 +59,7 @@ return {
})
end,
opts = {
sources = { "filesystem", "buffers", "git_status", "document_symbols" },
sources = { "filesystem", "buffers", "git_status" },
open_files_do_not_replace_types = { "terminal", "Trouble", "trouble", "qf", "Outline" },
filesystem = {
bind_to_cwd = false,
@ -177,7 +176,7 @@ return {
["<leader>c"] = { name = "+code" },
["<leader>f"] = { name = "+file/find" },
["<leader>g"] = { name = "+git" },
["<leader>gh"] = { name = "+hunks" },
["<leader>gh"] = { name = "+hunks", ["_"] = "which_key_ignore" },
["<leader>q"] = { name = "+quit/session" },
["<leader>s"] = { name = "+search" },
["<leader>u"] = { name = "+ui" },
@ -207,6 +206,13 @@ return {
changedelete = { text = "" },
untracked = { text = "" },
},
signs_staged = {
add = { text = "" },
change = { text = "" },
delete = { text = "" },
topdelete = { text = "" },
changedelete = { text = "" },
},
on_attach = function(buffer)
local gs = package.loaded.gitsigns
@ -215,8 +221,20 @@ return {
end
-- stylua: ignore start
map("n", "]h", function() gs.nav_hunk("next") end, "Next Hunk")
map("n", "[h", function() gs.nav_hunk("prev") end, "Prev Hunk")
map("n", "]h", function()
if vim.wo.diff then
vim.cmd.normal({ "]c", bang = true })
else
gs.nav_hunk("next")
end
end, "Next Hunk")
map("n", "[h", function()
if vim.wo.diff then
vim.cmd.normal({ "[c", bang = true })
else
gs.nav_hunk("prev")
end
end, "Prev Hunk")
map("n", "]H", function() gs.nav_hunk("last") end, "Last Hunk")
map("n", "[H", function() gs.nav_hunk("first") end, "First Hunk")
map({ "n", "v" }, "<leader>ghs", ":Gitsigns stage_hunk<CR>", "Stage Hunk")
@ -226,6 +244,7 @@ return {
map("n", "<leader>ghR", gs.reset_buffer, "Reset Buffer")
map("n", "<leader>ghp", gs.preview_hunk_inline, "Preview Hunk Inline")
map("n", "<leader>ghb", function() gs.blame_line({ full = true }) end, "Blame Line")
map("n", "<leader>ghB", function() gs.blame() end, "Blame Buffer")
map("n", "<leader>ghd", gs.diffthis, "Diff This")
map("n", "<leader>ghD", function() gs.diffthis("~") end, "Diff This ~")
map({ "o", "x" }, "ih", ":<C-U>Gitsigns select_hunk<CR>", "GitSigns Select Hunk")
@ -237,16 +256,18 @@ return {
{
"folke/trouble.nvim",
cmd = { "Trouble" },
opts = {},
opts = {
modes = {
lsp = {
win = { position = "right" },
},
},
},
keys = {
{ "<leader>xx", "<cmd>Trouble diagnostics toggle<cr>", desc = "Diagnostics (Trouble)" },
{ "<leader>xX", "<cmd>Trouble diagnostics toggle filter.buf=0<cr>", desc = "Buffer Diagnostics (Trouble)" },
{ "<leader>cs", "<cmd>Trouble symbols toggle focus=false<cr>", desc = "Symbols (Trouble)" },
{
"<leader>cS",
"<cmd>Trouble lsp toggle focus=false win.position=right<cr>",
desc = "LSP references/definitions/... (Trouble)",
},
{ "<leader>cs", "<cmd>Trouble symbols toggle<cr>", desc = "Symbols (Trouble)" },
{ "<leader>cS", "<cmd>Trouble lsp toggle<cr>", desc = "LSP references/definitions/... (Trouble)" },
{ "<leader>xL", "<cmd>Trouble loclist toggle<cr>", desc = "Location List (Trouble)" },
{ "<leader>xQ", "<cmd>Trouble qflist toggle<cr>", desc = "Quickfix List (Trouble)" },
{

View File

@ -38,6 +38,7 @@ return {
}
end,
keys = {
{ "<c-s>", "<CR>", ft = "copilot-chat", desc = "Submit Prompt", remap = true },
{ "<leader>a", "", desc = "+ai", mode = { "n", "v" } },
{
"<leader>aa",

View File

@ -27,7 +27,7 @@ return {
}
table.insert(opts.sections.lualine_x, 2, {
function()
local icon = require("lazyvim.config").icons.kinds.Copilot
local icon = LazyVim.config.icons.kinds.Copilot
local status = require("copilot.api").status.data
return icon .. (status.message or "")
end,

View File

@ -42,7 +42,7 @@ return {
optional = true,
event = "VeryLazy",
opts = function(_, opts)
local icon = require("lazyvim.config").icons.kinds.TabNine
local icon = LazyVim.config.icons.kinds.TabNine
table.insert(opts.sections.lualine_x, 2, LazyVim.lualine.cmp_source("cmp_tabnine", icon))
end,
},

View File

@ -17,33 +17,7 @@ return {
desc = "Debugging support. Requires language specific adapters to be configured. (see lang extras)",
dependencies = {
-- fancy UI for the debugger
{
"rcarriga/nvim-dap-ui",
dependencies = { "nvim-neotest/nvim-nio" },
-- stylua: ignore
keys = {
{ "<leader>du", function() require("dapui").toggle({ }) end, desc = "Dap UI" },
{ "<leader>de", function() require("dapui").eval() end, desc = "Eval", mode = {"n", "v"} },
},
opts = {},
config = function(_, opts)
local dap = require("dap")
local dapui = require("dapui")
dapui.setup(opts)
dap.listeners.after.event_initialized["dapui_config"] = function()
dapui.open({})
end
dap.listeners.before.event_terminated["dapui_config"] = function()
dapui.close({})
end
dap.listeners.before.event_exited["dapui_config"] = function()
dapui.close({})
end
end,
},
"rcarriga/nvim-dap-ui",
-- virtual text for the debugger
{
"theHamsta/nvim-dap-virtual-text",
@ -74,10 +48,14 @@ return {
},
config = function()
local Config = require("lazyvim.config")
-- load mason-nvim-dap here, after all adapters have been setup
if LazyVim.has("mason-nvim-dap.nvim") then
require("mason-nvim-dap").setup(LazyVim.opts("mason-nvim-dap.nvim"))
end
vim.api.nvim_set_hl(0, "DapStoppedLine", { default = true, link = "Visual" })
for name, sign in pairs(Config.icons.dap) do
for name, sign in pairs(LazyVim.config.icons.dap) do
sign = type(sign) == "table" and sign or { sign }
vim.fn.sign_define(
"Dap" .. name,
@ -94,6 +72,32 @@ return {
end,
},
-- fancy UI for the debugger
{
"rcarriga/nvim-dap-ui",
dependencies = { "nvim-neotest/nvim-nio" },
-- stylua: ignore
keys = {
{ "<leader>du", function() require("dapui").toggle({ }) end, desc = "Dap UI" },
{ "<leader>de", function() require("dapui").eval() end, desc = "Eval", mode = {"n", "v"} },
},
opts = {},
config = function(_, opts)
local dap = require("dap")
local dapui = require("dapui")
dapui.setup(opts)
dap.listeners.after.event_initialized["dapui_config"] = function()
dapui.open({})
end
dap.listeners.before.event_terminated["dapui_config"] = function()
dapui.close({})
end
dap.listeners.before.event_exited["dapui_config"] = function()
dapui.close({})
end
end,
},
-- mason.nvim integration
{
"jay-babu/mason-nvim-dap.nvim",
@ -114,5 +118,7 @@ return {
-- Update this to ensure that you have the debuggers for the langs you want
},
},
-- mason-nvim-dap is loaded when nvim-dap loads
config = function() end,
},
}

View File

@ -1,12 +1,10 @@
local Config = require("lazyvim.config")
return {
desc = "Aerial Symbol Browser",
{
"stevearc/aerial.nvim",
event = "LazyFile",
opts = function()
local icons = vim.deepcopy(Config.icons.kinds)
local icons = vim.deepcopy(LazyVim.config.icons.kinds)
-- HACK: fix lua's weird choice for `Package` for control
-- structures like if/else/for/etc.
@ -14,8 +12,8 @@ return {
---@type table<string, string[]>|false
local filter_kind = false
if Config.kind_filter then
filter_kind = assert(vim.deepcopy(Config.kind_filter))
if LazyVim.config.kind_filter then
filter_kind = assert(vim.deepcopy(LazyVim.config.kind_filter))
filter_kind._ = filter_kind.default
filter_kind.default = nil
end

View File

@ -1,6 +1,4 @@
local M = {}
---@type table<string, table<string, string[]>>
M.dials_by_ft = {}
---@param increment boolean
---@param g? boolean
@ -9,7 +7,7 @@ function M.dial(increment, g)
-- Use visual commands for VISUAL 'v', VISUAL LINE 'V' and VISUAL BLOCK '\22'
local is_visual = mode == "v" or mode == "V" or mode == "\22"
local func = (increment and "inc" or "dec") .. (g and "_g" or "_") .. (is_visual and "visual" or "normal")
local group = M.dials_by_ft[vim.bo.filetype] or "default"
local group = vim.g.dials_by_ft[vim.bo.filetype] or "default"
return require("dial.map")[func](group)
end
@ -110,21 +108,26 @@ return {
scss = "css",
typescript = "typescript",
typescriptreact = "typescript",
yaml = "yaml",
},
groups = {
default = {
augend.integer.alias.decimal, -- nonnegative decimal number (0, 1, 2, 3, ...)
augend.integer.alias.hex, -- nonnegative hex number (0x01, 0x1a1f, etc.)
augend.date.alias["%Y/%m/%d"], -- date (2022/02/19, etc.)
ordinal_numbers,
weekdays,
months,
},
typescript = {
augend.integer.alias.decimal, -- nonnegative and negative decimal number
augend.constant.alias.bool, -- boolean value (true <-> false)
logical_alias,
augend.constant.new({ elements = { "let", "const" } }),
ordinal_numbers,
weekdays,
months,
},
yaml = {
augend.integer.alias.decimal, -- nonnegative and negative decimal number
augend.constant.alias.bool, -- boolean value (true <-> false)
},
css = {
augend.integer.alias.decimal, -- nonnegative and negative decimal number
@ -137,9 +140,6 @@ return {
},
markdown = {
augend.misc.alias.markdown_header,
ordinal_numbers,
weekdays,
months,
},
json = {
augend.integer.alias.decimal, -- nonnegative and negative decimal number
@ -153,23 +153,17 @@ return {
word = true, -- if false, "sand" is incremented into "sor", "doctor" into "doctand", etc.
cyclic = true, -- "or" is incremented into "and".
}),
ordinal_numbers,
weekdays,
months,
},
python = {
augend.integer.alias.decimal, -- nonnegative and negative decimal number
capitalized_boolean,
logical_alias,
ordinal_numbers,
weekdays,
months,
},
},
}
end,
config = function(_, opts)
require("dial.config").augends:register_group(opts.groups)
M.dials_by_ft = opts.dials_by_ft
vim.g.dials_by_ft = opts.dials_by_ft
end,
}

View File

@ -30,7 +30,7 @@ end
local function symbols_filter(entry, ctx)
if ctx.symbols_filter == nil then
ctx.symbols_filter = require("lazyvim.config").get_kind_filter(ctx.bufnr) or false
ctx.symbols_filter = LazyVim.config.get_kind_filter(ctx.bufnr) or false
end
if ctx.symbols_filter == false then
return true
@ -43,7 +43,7 @@ return {
recommended = true,
{
"ibhagwan/fzf-lua",
event = "VeryLazy",
cmd = "FzfLua",
opts = function(_, opts)
local config = require("fzf-lua.config")
local actions = require("fzf-lua.actions")
@ -53,11 +53,15 @@ return {
config.defaults.keymap.fzf["ctrl-u"] = "half-page-up"
config.defaults.keymap.fzf["ctrl-d"] = "half-page-down"
config.defaults.keymap.fzf["ctrl-x"] = "jump"
config.defaults.keymap.fzf["ctrl-f"] = "preview-page-down"
config.defaults.keymap.fzf["ctrl-b"] = "preview-page-up"
config.defaults.keymap.builtin["<c-f>"] = "preview-page-down"
config.defaults.keymap.builtin["<c-b>"] = "preview-page-up"
-- Trouble
config.defaults.actions.files["ctrl-t"] = require("trouble.sources.fzf").actions.open
if LazyVim.has("trouble.nvim") then
config.defaults.actions.files["ctrl-t"] = require("trouble.sources.fzf").actions.open
end
-- Toggle root dir / cwd
config.defaults.actions.files["ctrl-r"] = function(_, ctx)
@ -82,6 +86,18 @@ return {
end
fix(defaults)
local img_previewer ---@type string[]?
for _, v in ipairs({
{ cmd = "ueberzug", args = {} },
{ cmd = "chafa", args = { "{file}", "--format=symbols" } },
{ cmd = "viu", args = { "-b" } },
}) do
if vim.fn.executable(v.cmd) == 1 then
img_previewer = vim.list_extend({ v.cmd }, v.args)
break
end
end
return vim.tbl_deep_extend("force", defaults, {
fzf_colors = true,
fzf_opts = {
@ -91,6 +107,18 @@ return {
-- formatter = "path.filename_first",
formatter = "path.dirname_first",
},
previewers = {
builtin = {
extensions = {
["png"] = img_previewer,
["jpg"] = img_previewer,
["jpeg"] = img_previewer,
["gif"] = img_previewer,
["webp"] = img_previewer,
},
ueberzug_scaler = "fit_contain",
},
},
-- Custom LazyVim option to configure vim.ui.select
ui_select = function(fzf_opts, items)
return vim.tbl_deep_extend("force", fzf_opts, {
@ -105,7 +133,11 @@ return {
-- height is number of items minus 15 lines for the preview, with a max of 80% screen height
height = math.floor(math.min(vim.o.lines * 0.8 - 16, #items + 2) + 0.5) + 16,
width = 0.5,
preview = {
preview = not vim.tbl_isempty(LazyVim.lsp.get_clients({ bufnr = 0, name = "vtsls" })) and {
layout = "vertical",
vertical = "down:15,border-top",
hidden = "hidden",
} or {
layout = "vertical",
vertical = "down:15,border-top",
},
@ -160,6 +192,14 @@ return {
require("fzf-lua").setup(opts)
require("fzf-lua").register_ui_select(opts.ui_select or nil)
end,
init = function()
LazyVim.on_very_lazy(function()
vim.ui.select = function(...)
require("fzf-lua")
return vim.ui.select(...)
end
end)
end,
keys = {
{ "<c-j>", "<c-j>", ft = "fzf", mode = "t", nowait = true },
{ "<c-k>", "<c-k>", ft = "fzf", mode = "t", nowait = true },

View File

@ -18,7 +18,7 @@ return {
separator = " ",
highlight = true,
depth_limit = 5,
icons = require("lazyvim.config").icons.kinds,
icons = LazyVim.config.icons.kinds,
lazy_update_context = true,
}
end,

View File

@ -12,27 +12,23 @@ return {
keys = { { "<leader>cs", "<cmd>Outline<cr>", desc = "Toggle Outline" } },
cmd = "Outline",
opts = function()
local Config = require("lazyvim.config")
local defaults = require("outline.config").defaults
local opts = {
symbols = {},
symbol_blacklist = {},
symbols = {
icons = {},
filter = LazyVim.config.kind_filter,
},
keymaps = {
up_and_jump = "<up>",
down_and_jump = "<down>",
},
}
local filter = Config.kind_filter
if type(filter) == "table" then
filter = filter.default
if type(filter) == "table" then
for kind, symbol in pairs(defaults.symbols) do
opts.symbols[kind] = {
icon = Config.icons.kinds[kind] or symbol.icon,
hl = symbol.hl,
}
if not vim.tbl_contains(filter, kind) then
table.insert(opts.symbol_blacklist, kind)
end
end
end
for kind, symbol in pairs(defaults.symbols.icons) do
opts.symbols.icons[kind] = {
icon = LazyVim.config.icons.kinds[kind] or symbol.icon,
hl = symbol.hl,
}
end
return opts
end,

View File

@ -0,0 +1,100 @@
return {
{
"catppuccin",
optional = true,
opts = {
integrations = { overseer = true },
},
},
{
"stevearc/overseer.nvim",
cmd = {
"OverseerOpen",
"OverseerClose",
"OverseerToggle",
"OverseerSaveBundle",
"OverseerLoadBundle",
"OverseerDeleteBundle",
"OverseerRunCmd",
"OverseerRun",
"OverseerInfo",
"OverseerBuild",
"OverseerQuickAction",
"OverseerTaskAction",
"OverseerClearCache",
},
opts = {
dap = false,
task_list = {
bindings = {
["<C-h>"] = false,
["<C-j>"] = false,
["<C-k>"] = false,
["<C-l>"] = false,
},
},
form = {
win_opts = {
winblend = 0,
},
},
confirm = {
win_opts = {
winblend = 0,
},
},
task_win = {
win_opts = {
winblend = 0,
},
},
},
-- stylua: ignore
keys = {
{ "<leader>ow", "<cmd>OverseerToggle<cr>", desc = "Task list" },
{ "<leader>oo", "<cmd>OverseerRun<cr>", desc = "Run task" },
{ "<leader>oq", "<cmd>OverseerQuickAction<cr>", desc = "Action recent task" },
{ "<leader>oi", "<cmd>OverseerInfo<cr>", desc = "Overseer Info" },
{ "<leader>ob", "<cmd>OverseerBuild<cr>", desc = "Task builder" },
{ "<leader>ot", "<cmd>OverseerTaskAction<cr>", desc = "Task action" },
{ "<leader>oc", "<cmd>OverseerClearCache<cr>", desc = "Clear cache" },
},
},
{
"folke/which-key.nvim",
optional = true,
opts = {
defaults = { ["<leader>o"] = { name = "+overseer" } },
},
},
{
"folke/edgy.nvim",
optional = true,
opts = function(_, opts)
opts.right = opts.right or {}
table.insert(opts.right, {
title = "Overseer",
ft = "OverseerList",
open = function()
require("overseer").open()
end,
})
end,
},
{
"nvim-neotest/neotest",
optional = true,
opts = function(_, opts)
opts = opts or {}
opts.consumers = opts.consumers or {}
opts.consumers.overseer = require("neotest.consumers.overseer")
end,
},
{
"mfussenegger/nvim-dap",
optional = true,
opts = function()
require("overseer").enable_dap()
end,
},
}

View File

@ -1,3 +1,24 @@
local pick = function()
if LazyVim.pick.picker.name == "telescope" then
return require("telescope").extensions.refactoring.refactors()
elseif LazyVim.pick.picker.name == "fzf" then
local fzf_lua = require("fzf-lua")
local results = require("refactoring").get_refactors()
local refactoring = require("refactoring")
local opts = {
fzf_opts = {},
fzf_colors = true,
actions = {
["default"] = function(selected)
refactoring.refactor(selected[1])
end,
},
}
fzf_lua.fzf_exec(results, opts)
end
end
return {
{
"ThePrimeagen/refactoring.nvim",
@ -10,9 +31,7 @@ return {
{ "<leader>r", "", desc = "+refactor", mode = { "n", "v" } },
{
"<leader>rs",
function()
require("telescope").extensions.refactoring.refactors()
end,
pick,
mode = "v",
desc = "Refactor",
},

Some files were not shown because too many files have changed in this diff Show More