Compare commits

..

448 Commits

Author SHA1 Message Date
00f53315b5 chore(main): release 12.22.1 (#3866)
🤖 I have created a release *beep* *boop*
---


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


### Performance Improvements

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


### Reverts

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

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

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


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


### Features

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


### Bug Fixes

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

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

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

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

## Checklist

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


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


### Bug Fixes

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


### Performance Improvements

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

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

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


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


### Features

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


### Bug Fixes

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

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

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

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

## What is this PR for?

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

Changes this

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

To this

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


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

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

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

## Does this PR fix an existing issue?
No

## Checklist

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

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

## Does this PR fix an existing issue?

No

## Checklist

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

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

## Does this PR fix an existing issue?
 No

## Checklist

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

---------

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

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

## Checklist

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

Fixing inconsistency with the `gitsigns` signs.

Since the signs are overridden ...


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

The staged signs should be overridden too.

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



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

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


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

## Does this PR fix an existing issue?

Nopeskii

## Checklist

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

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

## Does this PR fix an existing issue?

N/A.

## Checklist

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

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

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

## Checklist

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

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

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

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

## Does this PR fix an existing issue?

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

## Checklist

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


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


### Bug Fixes

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

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

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


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


### Features

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


### Bug Fixes

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


### Performance Improvements

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

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

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

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

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

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

## Does this PR fix an existing issue?

none!

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

## Checklist

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

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

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

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

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

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

## Does this PR fix an existing issue?

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

## Checklist

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

---------

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

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

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

## Checklist

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


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


### Bug Fixes

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

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

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

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

## Does this PR fix an existing issue?

N/A

## Checklist

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

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

## Checklist

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

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

## Checklist

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


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


### Features

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


### Bug Fixes

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

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

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

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

## Does this PR fix an existing issue?

No

## Checklist

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

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

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

## Checklist

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

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

## Checklist

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

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

## Does this PR fix an existing issue?

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

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

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

### Features

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

## Notes

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


## Checklist

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

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

## Does this PR fix an existing issue?

No

## Checklist

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

ref: folke/lazy.nvim#1534

---------

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

## What is this PR for?

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

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

## Checklist

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

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

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

## Checklist

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


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


### Features

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


### Bug Fixes

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

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

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

## What is this PR for?

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

## Does this PR fix an existing issue?

No

## Checklist

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

Adding support for prisma

## Does this PR fix an existing issue?

No

## Checklist

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

---------

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

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

## Does this PR fix an existing issue?

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

## Checklist

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

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

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

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

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

## Checklist

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


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


### Features

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


### Bug Fixes

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

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

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

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

Why `git remote -v`?
- Only contains remote info with explicit format. 
- Don't have to filter out other config info. 
- Don't have to deal with lots of weird edge cases.



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

## Checklist
- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-17 19:52:40 +02:00
a69e626d7a fix(conform): lsp_format breaking changes (#3707)
## What is this PR for?

`conform.nvim` had breaking changes, that renamed `lsp_fallback` to
`lsp_format` as can be seen
[here](9228b2ff4e)

## Does this PR fix an existing issue?

  Fixes #3706

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-17 19:49:30 +02:00
9177c3ad5e chore(build): auto-generate vimdoc 2024-06-17 04:48:26 +00:00
ea3b5cc2ab feat(php): allow using intelephense instead of phpactor in php extras (#3691)
## What is this PR for?

- Allows setting intelephense instead of phpactor for PHP's LSP

## Does this PR fix an existing issue?

No. But I personally use intelephesen myself and when researching on how
to use the PHP extras but swap phpactor (too verbose, imo) for
intelephense, I found this [comment
here](https://github.com/LazyVim/LazyVim/pull/3397#issuecomment-2141950186)
which suggested making it configurable like the Python extras. That's
what I'm doing here.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-17 06:47:47 +02:00
0fcadced89 feat(copilot-chat): ctrl-s now works in both normal and insert mode 2024-06-16 20:17:16 +02:00
18c7731281 feat(treesitter-textobjects): added ]a and [a to move between parameters 2024-06-16 19:18:32 +02:00
05e45e0d35 refactor: LazyVim.config 2024-06-16 15:35:38 +02:00
57ef349910 fix(cmp): visible 2024-06-16 15:30:44 +02:00
e2972f0cca refactor: cmp 2024-06-16 15:17:56 +02:00
0d57115f01 fix(lsp): dont highlight document words when cmp is visible 2024-06-16 15:17:56 +02:00
32b2574c1b chore(main): release 12.16.0 (#3671)
🤖 I have created a release *beep* *boop*
---


##
[12.16.0](https://github.com/LazyVim/LazyVim/compare/v12.15.0...v12.16.0)
(2024-06-16)


### Features

* **fzf:** basic image viewing support
([cda30f2](cda30f2740))
* **mini.pairs:** allow to skip pairs in certain treesitter nodes
([d6bea06](d6bea06a82))
* **mini.pairs:** and now the actual code :)
([540261d](540261d74d))
* **mini.pairs:** enable mini.pairs in the cmdline
([2daca4b](2daca4b510))
* **outline:** free ctrl-k /ctrl+j
([#3686](https://github.com/LazyVim/LazyVim/issues/3686))
([31c2ad7](31c2ad7dac))
* **project:** add some fzf-lua keymap
([#3666](https://github.com/LazyVim/LazyVim/issues/3666))
([f24999f](f24999fd36))


### Bug Fixes

* **edgy:** neo-tree. See
[#3667](https://github.com/LazyVim/LazyVim/issues/3667)
([f22a602](f22a6022c4))
* **egdy:** do not add panes for not enabled neo-tree sources
([#3667](https://github.com/LazyVim/LazyVim/issues/3667))
([67616b9](67616b9520))
* **pick:** remove the unused commands attribute
([#3673](https://github.com/LazyVim/LazyVim/issues/3673))
([eca8692](eca8692451))
* **telescope:** default to follow=true
([b87d18c](b87d18cc17))

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-16 11:02:02 +02:00
31c2ad7dac feat(outline): free ctrl-k /ctrl+j (#3686)
Allows to toggle window in outline using Ctrl-k /ctrl+j

Co-authored-by: 肖健正 <xiaojianzheng@qq.com>
2024-06-16 10:48:18 +02:00
2daca4b510 feat(mini.pairs): enable mini.pairs in the cmdline 2024-06-16 10:33:20 +02:00
71390adcbe refactor(util): use available get_plugin() function (#3687)
## What is this PR for?

Small refactor to use the already available `get_plugin()` function.

## Does this PR fix an existing issue?

No.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-16 09:06:53 +02:00
cda30f2740 feat(fzf): basic image viewing support 2024-06-16 09:06:34 +02:00
f24999fd36 feat(project): add some fzf-lua keymap (#3666)
- `ctrl-s` search_in_project_files
- `ctrl-w` change_working_directory
- `ctrl-d` delete_project
- `ctrl-r` recent_project_files

Co-authored-by: 肖健正 <xiaojianzheng@qq.com>
2024-06-16 07:21:30 +02:00
af5a59be90 chore(build): auto-generate vimdoc 2024-06-16 05:14:20 +00:00
b87d18cc17 fix(telescope): default to follow=true 2024-06-16 07:13:40 +02:00
eca8692451 fix(pick): remove the unused commands attribute (#3673)
## What is this PR for?
When we register a picker, such as a Telescope picker or a fzf-lua
picker,

we use commands within their own picker. For example, we use
M.picker.commands instead of M.pick.commands.

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

## Does this PR fix an existing issue?
no

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

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-15 18:54:39 +02:00
540261d74d feat(mini.pairs): and now the actual code :) 2024-06-15 18:52:25 +02:00
d6bea06a82 feat(mini.pairs): allow to skip pairs in certain treesitter nodes 2024-06-15 18:52:03 +02:00
f22a6022c4 fix(edgy): neo-tree. See #3667 2024-06-15 15:21:10 +02:00
67616b9520 fix(egdy): do not add panes for not enabled neo-tree sources (#3667)
## What is this PR for?

When the user disables a specific neo-tree source (git_status or
buffers), the panes are still created but throw an error when the user
tries to open them

**NB**: This is currently not functional because `LazyVim.opts` is
returning an empty table instead of the neo-tree opts. I'm hoping
someone can give me a hand with this little problem

## Does this PR fix an existing issue?

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

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-15 14:59:54 +02:00
0422dd278a chore(main): release 12.15.0 (#3658)
🤖 I have created a release *beep* *boop*
---


##
[12.15.0](https://github.com/LazyVim/LazyVim/compare/v12.14.1...v12.15.0)
(2024-06-15)


### Features

* **mini.pairs:** added some custom options to make mini.pairs behave
better
([bf809ad](bf809ad2a1))
* **project:** ctrl-t opens project in tab
([f28937b](f28937b0c5))


### Bug Fixes

* **dap:** make sure mason-dap is loaded after initializing dap. See
[#3663](https://github.com/LazyVim/LazyVim/issues/3663)
([e0e1ab0](e0e1ab01af))
* **dap:** make sure mason-nvim-dap loads after nvim-dap
([2b703ac](2b703ac125))
* **elixir:** add missing lspconfig
([#3661](https://github.com/LazyVim/LazyVim/issues/3661))
([06f5ef9](06f5ef928f))
* **fzf:** only add trouble integration when trouble is available
([e1f587a](e1f587a43d))
* **rust:** incorporate latest changes from `rustaceanvim`
([#3655](https://github.com/LazyVim/LazyVim/issues/3655))
([2d68976](2d689763e4))
* **vue:** disable volar hybrid mode since it interferes with tsserver
([#3654](https://github.com/LazyVim/LazyVim/issues/3654))
([5070694](5070694861))

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-15 12:23:59 +02:00
f28937b0c5 feat(project): ctrl-t opens project in tab 2024-06-15 12:22:09 +02:00
bf809ad2a1 feat(mini.pairs): added some custom options to make mini.pairs behave better 2024-06-15 12:05:55 +02:00
2b703ac125 fix(dap): make sure mason-nvim-dap loads after nvim-dap 2024-06-15 10:22:41 +02:00
e0e1ab01af fix(dap): make sure mason-dap is loaded after initializing dap. See #3663 2024-06-15 10:19:48 +02:00
6c5be2ea44 chore(build): auto-generate vimdoc 2024-06-15 07:31:11 +00:00
06f5ef928f fix(elixir): add missing lspconfig (#3661)
## What is this PR for?
add missing elixir lspconfig

## Does this PR fix an existing issue?

lspconfig is missing for elixir and since mason was removed in
f8268faa7c,
elixirls is no longer automatically installed.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-15 09:30:39 +02:00
e1f587a43d fix(fzf): only add trouble integration when trouble is available 2024-06-15 00:34:51 +02:00
2d689763e4 fix(rust): incorporate latest changes from rustaceanvim (#3655)
## What is this PR for?

After recent changes in `rustaceanvim` in
https://github.com/mrcjkb/rustaceanvim/pull/403, `checkOnSave` is
supposed to be boolean and the table that we were passing to
`checkOnSave` previously should be passed to `check` instead. I left the
`check` table undefined, because the options that we were passing to
`checkOnSave` before are the default ones being passed to `check`. So,
only if the user wants to change something should he change the values
of the `check` table according to what he wants.

## Does this PR fix an existing issue?

No
## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-14 23:07:42 +02:00
5070694861 fix(vue): disable volar hybrid mode since it interferes with tsserver (#3654)
can not inc-rename when volar is enabled.

After the configuration in commit was added, the inc-rename operation
returned to normal.

I suspect that volar's Hybrid mode affects the rename operation.


https://github.com/vuejs/language-tools?tab=readme-ov-file#none-hybrid-modesimilar-to-takeover-mode-configuration-requires-vuelanguage-server-version-207

Co-authored-by: 肖健正 <xiaojianzheng@qq.com>
2024-06-14 23:06:53 +02:00
034f57377b chore(main): release 12.14.1 (#3639)
🤖 I have created a release *beep* *boop*
---


##
[12.14.1](https://github.com/LazyVim/LazyVim/compare/v12.14.0...v12.14.1)
(2024-06-14)


### Bug Fixes

* **edgy:** only track other neo-tree windows with a source
([6efbdab](6efbdabd1b))
* **extras:** better reasons as to why some extras are included in your
config.
([eeccbbc](eeccbbc407))
* **fzf:** esc and c-j, c-k keymaps with nowait. update fzf-lua as well
([c9380a3](c9380a309d))
* **fzf:** esc and nowait
([7c7703d](7c7703d792))
* **fzf:** floating previewer closed fail
([#3638](https://github.com/LazyVim/LazyVim/issues/3638))
([427e57d](427e57ddf7))
* **issue template:** repro.lua didn't work
([#3628](https://github.com/LazyVim/LazyVim/issues/3628))
([25cccb5](25cccb5db8))
* **pick:** allow configuring pickers without LazyExtras. Fixes
[#3626](https://github.com/LazyVim/LazyVim/issues/3626)
([304e743](304e7439aa))

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-14 18:05:12 +02:00
3dbb4bd5f6 docs: add link to LazyVim For Ambitious Developers to README-CN.md (#3644)
Co-authored-by: 肖健正(家和) <jiahe@bigrule.com>
2024-06-14 18:04:53 +02:00
304e7439aa fix(pick): allow configuring pickers without LazyExtras. Fixes #3626 2024-06-14 17:55:43 +02:00
c9380a309d fix(fzf): esc and c-j, c-k keymaps with nowait. update fzf-lua as well 2024-06-14 17:53:44 +02:00
239fb90ce2 style: cleanup trouble 2024-06-14 16:46:35 +02:00
eeccbbc407 fix(extras): better reasons as to why some extras are included in your config. 2024-06-14 11:14:00 +02:00
6efbdabd1b fix(edgy): only track other neo-tree windows with a source 2024-06-14 11:13:59 +02:00
25cccb5db8 fix(issue template): repro.lua didn't work (#3628)
## What is this PR for?

repro.lua didn't work. at least i don't think it's the intended
behaviour.
it installed lazy.vim, lazy.nvim, tokyonight.
but didn't actually load lazyvim, and so none of it's plugins config
etc...

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-14 10:10:54 +02:00
7c7703d792 fix(fzf): esc and nowait 2024-06-14 08:31:58 +02:00
c424f5d5d8 chore(build): auto-generate vimdoc 2024-06-14 06:24:52 +00:00
427e57ddf7 fix(fzf): floating previewer closed fail (#3638)
- floating previewer closed fail.
https://github.com/LazyVim/LazyVim/issues/3582

Co-authored-by: 肖健正 <xiaojianzheng@qq.com>
2024-06-14 08:24:14 +02:00
7bebc40333 chore(main): release 12.14.0 (#3594)
🤖 I have created a release *beep* *boop*
---


##
[12.14.0](https://github.com/LazyVim/LazyVim/compare/v12.13.0...v12.14.0)
(2024-06-13)


### Features

* **fzf:** better default window size/position
([74cf6e4](74cf6e4462))
* **fzf:** better layout for code actions
([e948435](e948435f17))
* **fzf:** disable dressing in favor of noice (vim.ui.input) and fzf-lua
(vim.ui.select)
([5c876b7](5c876b7549))
* **fzf:** use vscode style path names formatter
([14d1ca9](14d1ca93d0))
* **noice:** added support for fzf-lua. Closes
[#3596](https://github.com/LazyVim/LazyVim/issues/3596)
([ec3dba2](ec3dba20af))
* **pick:** move pickers to extras (telescope still the default)
([#3606](https://github.com/LazyVim/LazyVim/issues/3606))
([39a908c](39a908c9fa))
* **yanky:** added fzf-lua support
([82f680e](82f680ee6b))


### Bug Fixes

* **dashboard:** proper fix for dashboard's weird action loading
([1d50c75](1d50c75a4b))
* **lsp:** add file completion to rename file
([52b5728](52b572881b))
* **pick:** ignore registering the same picker
([48a70aa](48a70aa8f5))
* **pick:** move some leftovers from `editor.lua` to `editor.telescope`
([#3620](https://github.com/LazyVim/LazyVim/issues/3620))
([b9f7264](b9f726404f))
* **pick:** use LazyVim.pick instead of M since dashboard
dumps/loadstrings functions. Why though... Fixes
[#3617](https://github.com/LazyVim/LazyVim/issues/3617)
([425e6e0](425e6e0ea3))
* **project:** add fzf-lua integration. Fixes
[#3609](https://github.com/LazyVim/LazyVim/issues/3609)
([4b9e4ed](4b9e4edbb1))
* **project:** telescope name
([d82c11f](d82c11f889))
* **python:** only enable venv-selector when telescope is availble. See
[#3612](https://github.com/LazyVim/LazyVim/issues/3612)
([74c1766](74c1766479))
* **ui:** use `LazyVim.pick` for alpha.nvim and mini.starter extras
([#3611](https://github.com/LazyVim/LazyVim/issues/3611))
([339979d](339979d314))

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-13 17:49:40 +02:00
74c1766479 fix(python): only enable venv-selector when telescope is availble. See #3612 2024-06-13 17:02:30 +02:00
48a70aa8f5 fix(pick): ignore registering the same picker 2024-06-13 17:01:19 +02:00
1d50c75a4b fix(dashboard): proper fix for dashboard's weird action loading 2024-06-13 15:01:46 +02:00
b9f726404f fix(pick): move some leftovers from editor.lua to editor.telescope (#3620)
## What is this PR for?

`have_make` and `have_cmake` were left over at
`/lua/plugins/editor.lua`, so move them to `extras.editor.telescope`
instead.

## Does this PR fix an existing issue?

No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-13 13:54:58 +02:00
e948435f17 feat(fzf): better layout for code actions 2024-06-13 13:05:16 +02:00
8346fa7ddc refactor(lsp): remove lsp keymap dependency on telescope 2024-06-13 06:33:10 +02:00
425e6e0ea3 fix(pick): use LazyVim.pick instead of M since dashboard dumps/loadstrings functions. Why though... Fixes #3617 2024-06-13 06:13:39 +02:00
339979d314 fix(ui): use LazyVim.pick for alpha.nvim and mini.starter extras (#3611)
## What is this PR for?

Make other nvim dashboards use LazyVim.pick so they can also make use of
fzf-lua when the extra is enabled. In addition, aligned the sections to
be the same as dashboard.nvim.

**Note**: this is somewhat untested. I haven't tested each dashboard and
their sections to make sure they all work.

## Does this PR fix an existing issue?

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

## Checklist

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

---------

Co-authored-by: Iordanis Petkakis <12776461+dpetka2001@users.noreply.github.com>
2024-06-13 06:09:30 +02:00
caf8f114d9 chore(build): auto-generate vimdoc 2024-06-13 04:07:37 +00:00
39a908c9fa feat(pick): move pickers to extras (telescope still the default) (#3606)
## What is this PR for?

Refactoring of pickers in LazyVim:

- [x] telescope moved to extras
- [x] dressing was moved to the telescope extra. Not needed with fzf-lua
and noice
- [x] when none of the two is enabled, then telescope will be enabled
- [x] when using `:LazyExtras` to enable fzf-lua, the telescope spec
will never be parsed
- [x] when not using `:LazyExras`, the spec will be parsed, but one of
the two will be disabled.
- [x] only one picker extra can be used to prevent issues
- [ ] cleanup lsp keymaps
2024-06-13 06:07:02 +02:00
d82c11f889 fix(project): telescope name 2024-06-12 20:55:51 +02:00
4b9e4edbb1 fix(project): add fzf-lua integration. Fixes #3609 2024-06-12 18:18:17 +02:00
46eb3242d3 refactor: copilot-chat 2024-06-12 11:41:03 +02:00
5c876b7549 feat(fzf): disable dressing in favor of noice (vim.ui.input) and fzf-lua (vim.ui.select) 2024-06-12 11:31:25 +02:00
14d1ca93d0 feat(fzf): use vscode style path names formatter 2024-06-12 11:23:45 +02:00
52b572881b fix(lsp): add file completion to rename file 2024-06-12 10:43:01 +02:00
82f680ee6b feat(yanky): added fzf-lua support 2024-06-12 07:57:07 +02:00
60a1c1979d chore(build): auto-generate vimdoc 2024-06-12 05:45:25 +00:00
ec3dba20af feat(noice): added support for fzf-lua. Closes #3596 2024-06-12 07:44:47 +02:00
74cf6e4462 feat(fzf): better default window size/position 2024-06-12 00:27:23 +02:00
128c3fcfe6 chore(main): release 12.13.0 (#3584)
🤖 I have created a release *beep* *boop*
---


##
[12.13.0](https://github.com/LazyVim/LazyVim/compare/v12.12.0...v12.13.0)
(2024-06-11)


### Features

* **copilot-chat:** use fzf-lua if enabled in extras
([#3590](https://github.com/LazyVim/LazyVim/issues/3590))
([7252474](7252474624))
* **fzf:** added ctrl-u and ctrl+d to scroll in the results list
([9f2a369](9f2a3699a8))
* **fzf:** added ctrl-x to jump with easymotion to a line, similar to
flash telescope
([1c740ce](1c740ce3fd))
* **fzf:** use delta previewer for code actions when available
([1697100](16971006c2))


### Bug Fixes

* **fzf:** action desc
([c6ddb23](c6ddb2328d))
* **fzf:** added action descriptions. (still doesnt work for trouble)
([19a6e2d](19a6e2de15))
* **fzf:** cleanup
([79b7c48](79b7c489fd))
* **fzf:** disable mini.indentscope in fzf-lua buffer
([#3592](https://github.com/LazyVim/LazyVim/issues/3592))
([0ba67c8](0ba67c87e9))
* **fzf:** live document symbols. Fixes
[#3587](https://github.com/LazyVim/LazyVim/issues/3587)
([056042b](056042b221))
* **fzf:** symbols filter
([7e0ac68](7e0ac6850b))
* **vue:** disable inlay hints for vue, since they seem broken
([3233385](3233385ddb))


### Reverts

* "fix(dap): set host to 127.0.0.1 instead of localhost to prevent
issues with ipv6. Fixes
[#3577](https://github.com/LazyVim/LazyVim/issues/3577)"
([a3547e4](a3547e4b3b))

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-11 23:50:03 +02:00
16971006c2 feat(fzf): use delta previewer for code actions when available 2024-06-11 23:48:16 +02:00
3233385ddb fix(vue): disable inlay hints for vue, since they seem broken 2024-06-11 23:21:56 +02:00
0ba67c87e9 fix(fzf): disable mini.indentscope in fzf-lua buffer (#3592)
## What is this PR for?

If `fzf-lua` and `mini.indentscope` are enabled together, the indent
line created by `indentscope` makes the fzf window hard and confusing to
work with

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

PS: also sorted the file list.

## Does this PR fix an existing issue?

I don't think there's an existing issue for this.

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-11 21:06:46 +02:00
1c740ce3fd feat(fzf): added ctrl-x to jump with easymotion to a line, similar to flash telescope 2024-06-11 19:38:48 +02:00
9f2a3699a8 feat(fzf): added ctrl-u and ctrl+d to scroll in the results list 2024-06-11 19:38:22 +02:00
a3547e4b3b revert: "fix(dap): set host to 127.0.0.1 instead of localhost to prevent issues with ipv6. Fixes #3577"
This reverts commit 9b8a393edc8b9a12a39f712163f6476c084a7f71.
2024-06-11 19:14:27 +02:00
7252474624 feat(copilot-chat): use fzf-lua if enabled in extras (#3590)
Adds the abiltiy for fzf-lua to be used as a picker for these copilot
chat actions if it was enabled in LazyExtras

## What is this PR for?

This adds keybinds that exist currently for copilot-chat and Telescope
but with the addition of fzf-lua as an extra, I noticed we needed the
ability for the user to take advantage of them with FzfLua.

## Does this PR fix an existing issue?

No

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-11 17:45:25 +02:00
7e0ac6850b fix(fzf): symbols filter 2024-06-11 16:11:45 +02:00
056042b221 fix(fzf): live document symbols. Fixes #3587 2024-06-11 16:08:27 +02:00
79b7c489fd fix(fzf): cleanup 2024-06-11 15:47:14 +02:00
c6ddb2328d fix(fzf): action desc 2024-06-11 14:58:35 +02:00
19a6e2de15 fix(fzf): added action descriptions. (still doesnt work for trouble) 2024-06-11 14:49:09 +02:00
26e3e39f2e chore(main): release 12.12.0 (#3574)
🤖 I have created a release *beep* *boop*
---


##
[12.12.0](https://github.com/LazyVim/LazyVim/compare/v12.11.0...v12.12.0)
(2024-06-11)


### Features

* **extras:** added fzf-lua
([#3555](https://github.com/LazyVim/LazyVim/issues/3555))
([6ab4041](6ab404134d))
* **fzf:** better scrollbars
([8bb6538](8bb653876c))
* **fzf:** ignore current line for some lsp pickers
([c481861](c4818616d5))
* **fzf:** prettier document symbols
([ba3aec7](ba3aec7b48))
* **lualine:** show readonly icon
([#3567](https://github.com/LazyVim/LazyVim/issues/3567))
([21617a9](21617a9d60))


### Bug Fixes

* **dap:** set host to 127.0.0.1 instead of localhost to prevent issues
with ipv6. Fixes [#3577](https://github.com/LazyVim/LazyVim/issues/3577)
([9b8a393](9b8a393edc))
* **extras.copilot-chat:** small ui fix for which-key in visual mode
([#3573](https://github.com/LazyVim/LazyVim/issues/3573))
([43afed1](43afed1211))
* **fzf:** lowercase symbols
([d1d24fa](d1d24fa077))
* **neo-tree:** use last window for preview
([#3560](https://github.com/LazyVim/LazyVim/issues/3560))
([caaa6c4](caaa6c440d))
* **php:** formatting and linting
([#3540](https://github.com/LazyVim/LazyVim/issues/3540))
([f5dc867](f5dc867ac2))
* **pick:** recent files in cwd. Fixes
[#3580](https://github.com/LazyVim/LazyVim/issues/3580)
([d541069](d541069fdf))
* **sql:** make sure edgebars exist. Fixes
[#3578](https://github.com/LazyVim/LazyVim/issues/3578)
([bd29f45](bd29f45153))
* **util:** ensure unique cache keys in LazyVim.memoize
([#3576](https://github.com/LazyVim/LazyVim/issues/3576))
([3354872](335487282a))

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-11 14:35:51 +02:00
d541069fdf fix(pick): recent files in cwd. Fixes #3580 2024-06-11 14:26:46 +02:00
bd29f45153 fix(sql): make sure edgebars exist. Fixes #3578 2024-06-11 09:10:10 +02:00
c4818616d5 feat(fzf): ignore current line for some lsp pickers 2024-06-11 09:05:16 +02:00
8bb653876c feat(fzf): better scrollbars 2024-06-11 09:04:39 +02:00
d1d24fa077 fix(fzf): lowercase symbols 2024-06-11 07:44:32 +02:00
ba3aec7b48 feat(fzf): prettier document symbols 2024-06-11 07:42:21 +02:00
638769d320 test: simple test to make sure I don't keep debug stuff around 2024-06-11 07:27:04 +02:00
9b8a393edc fix(dap): set host to 127.0.0.1 instead of localhost to prevent issues with ipv6. Fixes #3577 2024-06-11 06:55:16 +02:00
14d47f650c refactor: memoize 2024-06-11 06:51:30 +02:00
3b447a8037 chore(build): auto-generate vimdoc 2024-06-11 04:42:12 +00:00
335487282a fix(util): ensure unique cache keys in LazyVim.memoize (#3576)
## What is this PR for?

This PR fixes a bug in the `LazyVim.memoize` function that was causing
unexpected behavior in my configuration. The issue was discovered when
setting `vim.g.lazyvim_prettier_needs_config = true` in my
`lua/config/options.lua`, which did not work as expected.

The root cause was an issue with `LazyVim.memoize` cache key generation,
which led to `M.has_config(ctx)` always returning the same result as
`M.has_parser(ctx)`. This happened because `LazyVim.memoize` generates
cache keys based on the function parameters, and both functions were
being called with identical parameters:


7d30360df2/lua/lazyvim/plugins/extras/formatting/prettier.lua (L77-L81)

By improving the cache key generation to include function information,
we can ensure unique keys for different functions even if their
parameters are identical, thereby fixing the issue.

## Does this PR fix an existing issue?

N/A

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-11 06:41:37 +02:00
7d30360df2 refactor: config = true >> opts = {} 2024-06-11 00:06:56 +02:00
9b5d810c05 docs: added experience to CONTRIBUTING 2024-06-10 23:26:07 +02:00
fe667b53c9 refactor(mini-files): mini-files (#3538)
Incorporate additional boolean logic when setting keymaps to avoid
creating `opts.mappings` table and leave that only from the user
configuration to change mappings.
2024-06-10 22:12:25 +02:00
21617a9d60 feat(lualine): show readonly icon (#3567)
Adds a configurable lock icon when a file is opened as read only. Mimics
`vi -R <file>` status line.
2024-06-10 22:06:09 +02:00
f5dc867ac2 fix(php): formatting and linting (#3540)
Fixed the issue of php formatting not working in extras.lang.php
2024-06-10 22:01:24 +02:00
6ab404134d feat(extras): added fzf-lua (#3555)
New extra with an initial implementation of fzf-lua.

## Todo

- [x] check all places that currently depend on telescope and provide an
alternative or disable
- [x] disable telescope spec completely. (currently only removed its
keymaps)
- [x] trouble integration
- [x] https://github.com/ibhagwan/fzf-lua/issues/1241

---------

Co-authored-by: Iordanis Petkakis <12776461+dpetka2001@users.noreply.github.com>
2024-06-10 21:58:33 +02:00
caaa6c440d fix(neo-tree): use last window for preview (#3560)
Similar to "trouble.nvim" I want the preview to open in the last active
window. Currently the neo-tree preview opens in a floating window, which
(to me) doesn’t look very good.

What do you think about doing preview window the same everywhere
(trouble & neo-tree)?

## Before:


https://github.com/LazyVim/LazyVim/assets/3313023/7d7c21c9-158d-40ef-82f2-62e0dc795555

## After:


https://github.com/LazyVim/LazyVim/assets/3313023/bafc5bae-20cb-4dd1-8e40-1358ada573d9

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-06-10 21:41:45 +02:00
43afed1211 fix(extras.copilot-chat): small ui fix for which-key in visual mode (#3573)
## What is this PR for?
- Just a small fix for which-key in visual mode that the authors forgot
to add.
<!-- Describe the big picture of your changes to communicate to the
maintainers
  why we should accept this pull request. -->

## Does this PR fix an existing issue?
- As copilot-chat has just been added to extras so i think this is new.
<!--
  If this PR fixes any issues, please link to the issue here.
  Fixes #<issue_number>
-->

## Checklist

- [x] I've read the
[CONTRIBUTING](https://github.com/LazyVim/LazyVim/blob/main/CONTRIBUTING.md)
guidelines.
2024-06-10 20:15:27 +02:00
4b7c389f14 docs: fix link 2024-06-10 15:09:30 +02:00
4b1d397627 chore(build): auto-generate vimdoc 2024-06-10 13:05:24 +00:00
9d78a22252 docs: added contributing 2024-06-10 15:04:43 +02:00
65060ece67 ci: pull request template 2024-06-10 15:04:43 +02:00
d7c7548e09 chore(main): release 12.11.0 (#3536)
🤖 I have created a release *beep* *boop*
---


##
[12.11.0](https://github.com/LazyVim/LazyVim/compare/v12.10.0...v12.11.0)
(2024-06-09)


### Features

* **octo:** re-open octo windows when restoring session + cleanup
([7793942](7793942eba))


### Bug Fixes

* **extra-lang-angular:** add BufNew event to attach angular treesitter
([#3522](https://github.com/LazyVim/LazyVim/issues/3522))
([fbb1276](fbb1276ffd))
* **extras:** +prefix in which-key panel for visual mode
([#3537](https://github.com/LazyVim/LazyVim/issues/3537))
([5185404](51854046db))
* **helm:** missing dependency
([#3546](https://github.com/LazyVim/LazyVim/issues/3546))
([02dd65c](02dd65cdea))
* **lang:** neotest not loading rust tests
([#3544](https://github.com/LazyVim/LazyVim/issues/3544))
([0567b37](0567b37f61))
* **luasnip:** disable nvim-snippets when luasnip is enabled. Fixes
[#3547](https://github.com/LazyVim/LazyVim/issues/3547)
([aa059e0](aa059e0d49))
* **rust:** make neotest optional
([547dc76](547dc76a12))
* **typescript:** clean up configuration of the vscode dap extension
([#3556](https://github.com/LazyVim/LazyVim/issues/3556))
([1c46f54](1c46f54432))
* **typescript:** implemented move to new file. Fixes
[#3534](https://github.com/LazyVim/LazyVim/issues/3534)
([d90930b](d90930b13e))

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-09 23:19:28 +02:00
1c46f54432 fix(typescript): clean up configuration of the vscode dap extension (#3556)
`mason-nvim-dap.nvim` adds it's own adapter filetype mappings to the
vscode extension in `nvim-dap` (as of
https://github.com/jay-babu/mason-nvim-dap.nvim/pull/129)

This also moves the type mappings for the `pwa-node` and `node` adapters
to where they are defined in the typescript pack.

Now that the default internal type mappings are configured we can rely
on the automatic loading of the `.vscode/launch.json` that `nvim-dap`
does
2024-06-09 22:48:51 +02:00
7793942eba feat(octo): re-open octo windows when restoring session + cleanup 2024-06-09 11:42:58 +02:00
2848ee492b ci: link to discussions 2024-06-09 11:36:44 +02:00
547dc76a12 fix(rust): make neotest optional 2024-06-09 09:27:29 +02:00
Ian
0567b37f61 fix(lang): neotest not loading rust tests (#3544)
fixes https://github.com/LazyVim/LazyVim/issues/3543
2024-06-09 08:37:08 +02:00
aa059e0d49 fix(luasnip): disable nvim-snippets when luasnip is enabled. Fixes #3547 2024-06-09 07:37:45 +02:00
28426cc31c chore(build): auto-generate vimdoc 2024-06-09 05:34:35 +00:00
02dd65cdea fix(helm): missing dependency (#3546)
according to this comment
ab41ff551b (r142924660)
2024-06-09 07:33:59 +02:00
fbb1276ffd fix(extra-lang-angular): add BufNew event to attach angular treesitter (#3522)
## Problem

Sometimes angular treesitter didn't get started, e.g. when creating a
new file.

## Solution

- Add `BufNew` event to attach angular treesitter.
- Change `BufRead` to `BufReadPost` for better readability.

### Related Neovim docs
- [BufRead / BufReadPost
docs](https://neovim.io/doc/user/autocmd.html#BufRead)
- [BufNew](https://neovim.io/doc/user/autocmd.html#BufNew)
2024-06-08 23:57:45 +02:00
51854046db fix(extras): +prefix in which-key panel for visual mode (#3537) 2024-06-08 10:04:10 +02:00
8f7ee56dab refactor: LazyVim.lsp.on_attach 2024-06-08 08:11:30 +02:00
6098a36d92 chore(build): auto-generate vimdoc 2024-06-08 05:31:47 +00:00
d90930b13e fix(typescript): implemented move to new file. Fixes #3534 2024-06-08 07:30:49 +02:00
1394070aab docs(news): fixed versions 2024-06-08 00:11:24 +02:00
16f3ebb9f1 docs(news): added link to news 2024-06-07 23:59:07 +02:00
a5f8af912d chore(main): release 12.10.0 (#3532)
🤖 I have created a release *beep* *boop*
---


##
[12.10.0](https://github.com/LazyVim/LazyVim/compare/v12.9.0...v12.10.0)
(2024-06-07)


### Features

* **prettier:** prettier is now enabled for all supported filetypes and
no longer requires a config file by default
([7d50bf0](7d50bf0626))
* **prettier:** with the prettier & astro extra, prettier will be
enabled if the prettier-astro-plugin is available
([214f5fc](214f5fccdf))
* **svelte:** with prettier & svelte extra, prettier will be enabled
when prettier-plugin-svelte is available
([945143a](945143a34e))
* **util:** added LazyVim.has_extra
([b714f28](b714f28662))
* **util:** added LazyVim.memoize
([5a11d74](5a11d740e1))


### Bug Fixes

* **clojure:** removed rainbow delimiters and fixed some plugin setups.
Closes [#3530](https://github.com/LazyVim/LazyVim/issues/3530)
([cfa8c9f](cfa8c9fbd4))
* **cmp:** don't enable `snippets` source without `nvim-snippets`
([#3527](https://github.com/LazyVim/LazyVim/issues/3527))
([af80811](af80811be0))
* **extras:** load prettier extra before svelte/astro
([4980574](49805748d4))
* **formatting:** remove deprecation check on some options
([c16fb5d](c16fb5d49b))
* **prettier:** fixup
([ac9217b](ac9217b199))

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-07 23:57:13 +02:00
f202f573b4 docs: updated news 2024-06-07 23:54:57 +02:00
ac9217b199 fix(prettier): fixup 2024-06-07 23:24:01 +02:00
af80811be0 fix(cmp): don't enable snippets source without nvim-snippets (#3527)
Make it easier, so if users decide to disable `nvim-snippets`, they
don't have to remove the `snippets` source manually in their config.
2024-06-07 23:12:59 +02:00
cfa8c9fbd4 fix(clojure): removed rainbow delimiters and fixed some plugin setups. Closes #3530 2024-06-07 23:10:40 +02:00
588240ca09 style: better types for vim.api.nvim_create_autocmd 2024-06-07 23:02:47 +02:00
49805748d4 fix(extras): load prettier extra before svelte/astro 2024-06-07 23:02:47 +02:00
945143a34e feat(svelte): with prettier & svelte extra, prettier will be enabled when prettier-plugin-svelte is available 2024-06-07 23:02:47 +02:00
214f5fccdf feat(prettier): with the prettier & astro extra, prettier will be enabled if the prettier-astro-plugin is available 2024-06-07 23:02:47 +02:00
7d50bf0626 feat(prettier): prettier is now enabled for all supported filetypes and no longer requires a config file by default 2024-06-07 23:02:47 +02:00
5a11d740e1 feat(util): added LazyVim.memoize 2024-06-07 23:02:47 +02:00
b714f28662 feat(util): added LazyVim.has_extra 2024-06-07 23:02:47 +02:00
c16fb5d49b fix(formatting): remove deprecation check on some options 2024-06-07 23:02:47 +02:00
789b1b4fd4 chore(main): release 12.9.0 (#3501)
🤖 I have created a release *beep* *boop*
---


##
[12.9.0](https://github.com/LazyVim/LazyVim/compare/v12.8.0...v12.9.0)
(2024-06-07)


### Features

* **autocmd:** enable spell for typst and text file
([#3505](https://github.com/LazyVim/LazyVim/issues/3505))
([8ca7245](8ca7245129))
* **docs:** add link to LazyVim For Ambitious Developers to README
([#3504](https://github.com/LazyVim/LazyVim/issues/3504))
([2a5ab31](2a5ab3109a))
* **lang:** add clojure support
([#2179](https://github.com/LazyVim/LazyVim/issues/2179))
([913902b](913902ba36))
* **neo-tree:** added l:open and h:close_node to neo-tree. Closes
[#3293](https://github.com/LazyVim/LazyVim/issues/3293)
([dbec83d](dbec83d57a))
* **options:** when available use treesitter spell regions for spell
checking
([276b803](276b8032be))
* **sql:** add SQL extra
([#1740](https://github.com/LazyVim/LazyVim/issues/1740))
([59495c1](59495c1871))


### Bug Fixes

* **editor:** telescope init error when trouble.nvim is disabled
([#3518](https://github.com/LazyVim/LazyVim/issues/3518))
([c452fd7](c452fd730c))
* **lualine:** only show one Lualine component for symbols
([#3514](https://github.com/LazyVim/LazyVim/issues/3514))
([827aa53](827aa5380a)),
closes [#3511](https://github.com/LazyVim/LazyVim/issues/3511)
* **mini.files:** fix error about `opts.mappings`
([#3507](https://github.com/LazyVim/LazyVim/issues/3507))
([9210648](92106484ed))
* removed leader-m, since it is leading to too many issues. Still
available at leader-wm
([119dcb9](119dcb949a))

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

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-07 20:44:39 +02:00
913902ba36 feat(lang): add clojure support (#2179)
This adds support to Clojure as an extra _lang_ configuration. 
Closes https://github.com/LazyVim/LazyVim/pull/1484
@folke I read the docs and couldn't find a recommendation on _how_ to
suggest features, so I figured opening a PR should be enought. please
let me know if I should do anything else.

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-07 17:23:23 +02:00
2ac3f0daa1 ci: Create dependabot.yml 2024-06-07 16:27:31 +02:00
94c338765c style: fix spelling in octo keymap description (#3521) 2024-06-07 16:05:59 +02:00
c1cb4467ec style: fix some spells (#3517) 2024-06-07 13:35:25 +02:00
c452fd730c fix(editor): telescope init error when trouble.nvim is disabled (#3518)
I got this error message when opening telescope.

```
Failed to run `config` for telescope.nvim

...l/share/nvim/lazy/LazyVim/lua/lazyvim/plugins/editor.lua:241: module 'trouble.sources.telescope' not found:
^Ino field package.preload['trouble.sources.telescope']
...
```

After investigating it, the reason was I have `trouble.nvim` disabled
but the default base `opts` function is loading it.
I tried wrapping it with a function to lazy load the `trouble.nvim`
module and it worked in my local setup.
2024-06-07 13:23:04 +02:00
827aa5380a fix(lualine): only show one Lualine component for symbols (#3514)
Fixes #3511
2024-06-07 12:12:05 +02:00
119dcb949a fix: removed leader-m, since it is leading to too many issues. Still available at leader-wm 2024-06-07 10:53:56 +02:00
e1c54ac638 chore(build): auto-generate vimdoc 2024-06-07 07:04:47 +00:00
ab41ff551b refactor: use lazy's new opts_extend functionality for treesitter and mason 2024-06-07 09:03:59 +02:00
f70d350085 style: comment 2024-06-07 07:02:51 +02:00
59495c1871 feat(sql): add SQL extra (#1740)
Co-authored-by: Fredrik Averpil <fredrik.averpil@gmail.com>
Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-06 23:27:59 +02:00
8ca7245129 feat(autocmd): enable spell for typst and text file (#3505) 2024-06-06 22:38:24 +02:00
276b8032be feat(options): when available use treesitter spell regions for spell checking 2024-06-06 22:37:47 +02:00
92106484ed fix(mini.files): fix error about opts.mappings (#3507) 2024-06-06 20:52:40 +02:00
1699091d70 chore(build): auto-generate vimdoc 2024-06-06 16:54:37 +00:00
2a5ab3109a feat(docs): add link to LazyVim For Ambitious Developers to README (#3504)
As requested, here's a link to my book from the README. I'll add the
video and this link to the main page of lazyvim.org as well.
2024-06-06 18:54:02 +02:00
dbec83d57a feat(neo-tree): added l:open and h:close_node to neo-tree. Closes #3293 2024-06-06 18:05:11 +02:00
ad092e96f9 chore(main): release 12.8.0 (#3494)
🤖 I have created a release *beep* *boop*
---


##
[12.8.0](https://github.com/LazyVim/LazyVim/compare/v12.7.0...v12.8.0)
(2024-06-06)


### Features

* **options:** added linebreak=true to default options
([1f4c196](1f4c1964fd))


### Bug Fixes

* **markdown:** missing markdown-toc in mason
([#3499](https://github.com/LazyVim/LazyVim/issues/3499))
([a9aea4b](a9aea4b5a1))
* **mason-nvim-dap:** correctly configure to auto-install debug adapters
([#3493](https://github.com/LazyVim/LazyVim/issues/3493))
([86ba1bc](86ba1bc62d))
* **octo:** fixed octo's rendering of comment signs when lines are
wrapped
([81370cf](81370cf714))
* **octo:** load octo on `octo://*` events, so that those buffers work
after session restore
([e6443ad](e6443ad7dc))
* **php:** php gets recommended in every .git repo
([#3496](https://github.com/LazyVim/LazyVim/issues/3496))
([3654098](3654098520))
* **prettier:** fix prettier config detection. Closes
[#3497](https://github.com/LazyVim/LazyVim/issues/3497)
([e51199c](e51199cffa))
* **prettier:** use prettier to check if prettier should run on the file
([0255b8f](0255b8fdb1))

---
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-06 17:44:45 +02:00
0255b8fdb1 fix(prettier): use prettier to check if prettier should run on the file 2024-06-06 17:38:12 +02:00
a9aea4b5a1 fix(markdown): missing markdown-toc in mason (#3499)
missing `markdown-toc` in ensure installed for `extra/markdown`
2024-06-06 16:22:40 +02:00
e51199cffa fix(prettier): fix prettier config detection. Closes #3497 2024-06-06 16:15:39 +02:00
3654098520 fix(php): php gets recommended in every .git repo (#3496) 2024-06-06 16:07:39 +02:00
81370cf714 fix(octo): fixed octo's rendering of comment signs when lines are wrapped 2024-06-06 16:05:55 +02:00
1f4c1964fd feat(options): added linebreak=true to default options 2024-06-06 16:05:23 +02:00
e6443ad7dc fix(octo): load octo on octo://* events, so that those buffers work after session restore 2024-06-06 14:58:44 +02:00
86ba1bc62d fix(mason-nvim-dap): correctly configure to auto-install debug adapters (#3493)
Tested with `php` and `kotlin` Extras. 

`kotlin` Extra doesn't have the debug adapter in Mason
`ensure_installed` and doesn't install automatically on its own.

`php` Extra has the debug adapter defined in Mason `ensure_installed`
and does correctly install automatically. However, this should not be
needed due to `mason-nvim-dap`. If you remove [these
lines](ed93ce9c15/lua/lazyvim/plugins/extras/lang/php.lua (L26-L33)),
then the debug adapter doesn't automatically install, but it should.

With the change introduced in this PR, both Extras automatically install
the debug adapters. `kotlin` Extra doesn't need anything else and in
`php` Extra the lines I mentioned previously can be removed or not. The
point is not to remove previously Mason dependencies with debug
adapters, but to correctly configure `mason-nvim-dap`, so in future
Extras you don't have to define the debug adapter inside a Mason
dependency.
2024-06-06 14:35:59 +02:00
ed93ce9c15 chore(main): release 12.7.0 (#3490)
🤖 I have created a release *beep* *boop*
---


##
[12.7.0](https://github.com/LazyVim/LazyVim/compare/v12.6.0...v12.7.0)
(2024-06-06)


### Features

* **extras:** add thrift lang support
([#2804](https://github.com/LazyVim/LazyVim/issues/2804))
([5a19f6b](5a19f6b5fe))
* **extras:** added extra for neogen. Closes
[#2881](https://github.com/LazyVim/LazyVim/issues/2881)
([6fd2c88](6fd2c88024))
* **extras:** added gleam lang support
([#2802](https://github.com/LazyVim/LazyVim/issues/2802))
([1891b02](1891b02d9d))
* **lang:** add elm
([#3023](https://github.com/LazyVim/LazyVim/issues/3023))
([4742390](4742390960))
* **lang:** added php support
([#1450](https://github.com/LazyVim/LazyVim/issues/1450))
([32ba8ea](32ba8ea3fe))

---
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-06 13:46:20 +02:00
4742390960 feat(lang): add elm (#3023)
Adding https://elm-lang.org support.

- Adds `elm` Treesitter parsers
- Adds `elm-language-server` language server
- Adds `elm-format` formatter

## LSP Configuration

The default
[elm-language-server](https://github.com/elm-tooling/elm-language-server)
configuration matches all [currently supported features for Neovim
LSP](https://github.com/elm-tooling/elm-language-server#editor-support).

## A note on elm-test and elm-review

`elm-test` is not directly supported by [neo-test](../test/neotest) but
it's available via
[neotest-vim-test](https://github.com/nvim-neotest/neotest-vim-test).

However, it is common practice to peruse both
[elm-test](https://github.com/elm-explorations/test/) and
[elm-review](https://github.com/jfmengels/elm-review) directly via the
command line.

---------

Co-authored-by: gacallea <gacallea@users.noreply.github.com>
Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-06 13:36:02 +02:00
5a19f6b5fe feat(extras): add thrift lang support (#2804)
This PR adds support for thriftls, the first line is because thrift is
not among the neovim built-in file types.

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-06 13:30:17 +02:00
32ba8ea3fe feat(lang): added php support (#1450)
Configures tree-sitter, phpactor as LSP server and
xdebug/vscode-php-debug as DAP server.

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-06 13:26:51 +02:00
1891b02d9d feat(extras): added gleam lang support (#2802)
Added [Gleam lang](https://gleam.run/) support.

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-06 13:23:29 +02:00
6fd2c88024 feat(extras): added extra for neogen. Closes #2881 2024-06-06 13:14:04 +02:00
43e4f635d6 chore(main): release 12.6.0 (#3467)
🤖 I have created a release *beep* *boop*
---


##
[12.6.0](https://github.com/LazyVim/LazyVim/compare/v12.5.0...v12.6.0)
(2024-06-06)


### Features

* **bufferline:** allow custom icons for filetypes
([bac4bba](bac4bba016))
* **extras:** added extra for octo.nvim. Make sure to update lazy.nvim,
which-key.nvim and also update tokyonight if you use that theme.
([100c579](100c5793c8))
* **extras:** added new `git` extra with treesitter and issue/pr support
([91a5fc1](91a5fc10e6))
* **extras:** allow recommended to be the args for LazyVim.extras.wants
([502602e](502602e4a2))
* **git:** added leader-gB to browse remotes of the current repo
([c4ccd7c](c4ccd7cbce))
* **keymaps:** add neotest toggle watch keymap
([#3073](https://github.com/LazyVim/LazyVim/issues/3073))
([4d16296](4d1629605b))
* **lang:** add nix language support
([#2956](https://github.com/LazyVim/LazyVim/issues/2956))
([9eae3e0](9eae3e015a))
* **lint:** added support for prepend_args to nvim-lint. Fixes
[#1887](https://github.com/LazyVim/LazyVim/issues/1887)
([4ab123f](4ab123fb31))
* **lsp:** simpler API to deal with code actions
([1bd4d2f](1bd4d2fc72))
* **mini.files:** add cwd and vertical/horizontal keybindings to
mini.files ([#2695](https://github.com/LazyVim/LazyVim/issues/2695))
([393aa44](393aa44e66)),
closes [#2692](https://github.com/LazyVim/LazyVim/issues/2692)
* **nushell:** add minimal support
([#2416](https://github.com/LazyVim/LazyVim/issues/2416))
([4ef42b4](4ef42b4578))
* **prettier:** the prettier extra now needs a prettier config file by
default. See docs to change this.
([8ceccd7](8ceccd71e2))
* **treesitter:** add printf
([#2450](https://github.com/LazyVim/LazyVim/issues/2450))
([0a2f40c](0a2f40c2fb))
* **typescript:** open locations from lsp execute command with trouble
for vtsls
([a636bf2](a636bf2022))


### Bug Fixes

* **angular:** re-fix angular html treesitter
([#3488](https://github.com/LazyVim/LazyVim/issues/3488))
([fd4c38b](fd4c38bc2b))
* **angular:** treesitter not enabled for angular templates
([#3469](https://github.com/LazyVim/LazyVim/issues/3469))
([24af74e](24af74eed6))
* **git:** added recommended
([88db9c5](88db9c5192))
* **kotlin:** kotlin plugin messages and code maintain consistency
([#3291](https://github.com/LazyVim/LazyVim/issues/3291))
([2244af1](2244af1a86))
* **lualine:** don't override user's laststatus setting. See
[#3486](https://github.com/LazyVim/LazyVim/issues/3486)
([4d8d597](4d8d597a3f))
* **svelte:** added organize imports and prettier
([#3466](https://github.com/LazyVim/LazyVim/issues/3466))
([e0a0123](e0a0123b18))
* **svelte:** disable prettier integration for svelte for now. See
[#3466](https://github.com/LazyVim/LazyVim/issues/3466)
([9a11623](9a1162314f))
* **typecript:** remove dependency on `nvim-vtsls`. Not needed anymore
([cae2c22](cae2c226b5))
* **ui:** remove extra space in extras ui
([#3481](https://github.com/LazyVim/LazyVim/issues/3481))
([2c2b6f2](2c2b6f200c))
* **which-key:** use new which-key support for native group keymaps
(nop)
([8010f50](8010f50aa5))

---
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-06 12:50:45 +02:00
0a2f40c2fb feat(treesitter): add printf (#2450)
```c
printf("%s\n", "Finally!");
```
2024-06-06 12:42:09 +02:00
fd4c38bc2b fix(angular): re-fix angular html treesitter (#3488)
This was previously attemped to be fixed by
https://github.com/LazyVim/LazyVim/pull/3469, which caused an issue with
angular LSP.
The PR was reverted as mentioned in
https://github.com/LazyVim/LazyVim/pull/3485.

This PR implements suggestion by @folke, which fixes treesitter without
breaking LSP.
2024-06-06 12:31:25 +02:00
88db9c5192 fix(git): added recommended 2024-06-06 12:29:53 +02:00
100c5793c8 feat(extras): added extra for octo.nvim. Make sure to update lazy.nvim, which-key.nvim and also update tokyonight if you use that theme. 2024-06-06 12:25:11 +02:00
91a5fc10e6 feat(extras): added new git extra with treesitter and issue/pr support 2024-06-06 12:24:00 +02:00
4d8d597a3f fix(lualine): don't override user's laststatus setting. See #3486 2024-06-06 11:16:36 +02:00
2bbc7e179d Revert "fix(angular): treesitter not enabled for angular templates (#3469)"
This reverts commit 24af74eed60bf2f02d963fd730b07e537cdf34dc.
2024-06-06 10:54:43 +02:00
2244af1a86 fix(kotlin): kotlin plugin messages and code maintain consistency (#3291)
### Description
I am the author of this
[PR](https://github.com/LazyVim/LazyVim/pull/2890).

While reviewing my own code and checking the LazyVim official website, I
noticed some inconsistencies 😓 , so I created a small PR to address
them:

### Changes
1.Each optional plugin has a comment message indicating that the plugin
is optional, but DAP does not (as shown in the image). Since the
official website already has an "optional" in title.
**I removed the comment messages regarding "optional" to avoid
confusion**.
<img width="300" alt="Screenshot 2024-05-23 at 10 31 38 PM"
src="https://github.com/LazyVim/LazyVim/assets/82575487/441979fc-20dd-4599-a91d-f27bc0841d79">


---

2. I changed the DAP to use local variables for DAP to maintain
consistency, even though both require statements reference the same
module.
2024-06-06 10:53:58 +02:00
8010f50aa5 fix(which-key): use new which-key support for native group keymaps (nop) 2024-06-06 10:46:56 +02:00
bac4bba016 feat(bufferline): allow custom icons for filetypes 2024-06-06 10:46:56 +02:00
c4ccd7cbce feat(git): added leader-gB to browse remotes of the current repo 2024-06-06 10:46:56 +02:00
86811ad7aa chore(build): auto-generate vimdoc 2024-06-06 04:10:32 +00:00
2c2b6f200c fix(ui): remove extra space in extras ui (#3481)
Remove extra space between icon and text (for source label).

## Before:
<img width="1893" alt="image"
src="https://github.com/LazyVim/LazyVim/assets/3313023/7778e103-729a-4231-bb23-0482ae9d8506">

## After:
<img width="1893" alt="image"
src="https://github.com/LazyVim/LazyVim/assets/3313023/b8e6b4d3-2554-4312-b7d3-7fd5b8c146d4">
2024-06-06 06:09:58 +02:00
24af74eed6 fix(angular): treesitter not enabled for angular templates (#3469)
## Problem
Treesitter was not working in angular html templates after enabling
`lang.angular` extra.

## Solution
Added a change recommeded by angular treesitter developer to enable
treesitter for components and containers.

### Reference to recommendation in treesitter docs
[Reference to the recommendation for this
hack](https://github.com/dlvandenberg/tree-sitter-angular?tab=readme-ov-file#filetype).
2024-06-06 00:01:42 +02:00
4d1629605b feat(keymaps): add neotest toggle watch keymap (#3073) 2024-06-05 23:46:21 +02:00
9eae3e015a feat(lang): add nix language support (#2956)
In the future we can add:
- dap / debugger support, if this is ever possible or needed.
- extend neotest, if this is ever needed, for most people I suspect not
needed.
- linting, if this is ever needed.
- ~~maybe enhance nvim-cmp behavior with nixpkgs, rust lang extension
crates.nvim does smt with nvim-cmp, other language extensions don't.~~

I think its already good to merge this PR, we can add these enhancements
later, if they are ever needed.

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-05 23:44:43 +02:00
4ef42b4578 feat(nushell): add minimal support (#2416)
## Description

This will add minimal support for [Nushell](https://www.nushell.sh/)
include lspconfig and treesitter highlight

## Additional Context

Close #2164

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-05 23:35:46 +02:00
502602e4a2 feat(extras): allow recommended to be the args for LazyVim.extras.wants 2024-06-05 23:35:14 +02:00
393aa44e66 feat(mini.files): add cwd and vertical/horizontal keybindings to mini.files (#2695)
* Makes the toggle_hidden keybinding configurable via mappings
* Adds new mini.files keybindings for opening files in a vertical split,
with both go_in and go_in_plus modes (configurable via mappings)
* Adds new keybinding to change working directory from mini.files
(configurable via mappings)

Closes #2692
2024-06-05 23:22:14 +02:00
d704ca4c1b ci: feature template 2024-06-05 23:11:06 +02:00
4ab123fb31 feat(lint): added support for prepend_args to nvim-lint. Fixes #1887 2024-06-05 23:02:19 +02:00
8ceccd71e2 feat(prettier): the prettier extra now needs a prettier config file by default. See docs to change this. 2024-06-05 22:55:36 +02:00
9a1162314f fix(svelte): disable prettier integration for svelte for now. See #3466 2024-06-05 22:20:35 +02:00
cae2c226b5 fix(typecript): remove dependency on nvim-vtsls. Not needed anymore 2024-06-05 22:19:44 +02:00
a636bf2022 feat(typescript): open locations from lsp execute command with trouble for vtsls 2024-06-05 22:19:19 +02:00
1bd4d2fc72 feat(lsp): simpler API to deal with code actions 2024-06-05 22:18:14 +02:00
e0a0123b18 fix(svelte): added organize imports and prettier (#3466)
* feat(svelte): add key binding for organize imports

* fix(svelte): solves sveltejs/language-tools#2008

* feat(svelte): add formatter for svelte
2024-06-05 20:28:23 +02:00
61689ad543 chore(main): release 12.5.0 (#3444)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-05 19:58:44 +02:00
4cc586a3f1 tests: refactored tests a bit 2024-06-05 19:53:50 +02:00
1d42e45fd2 ci: remove commit linter in favor of PR title linter 2024-06-05 18:24:52 +02:00
73c767c2f3 fix(util): don't print warning message in headless 2024-06-05 18:15:45 +02:00
f8268faa7c fix: cleanup unnecessary treesitter langs and mason lsp servers 2024-06-05 18:07:01 +02:00
368c060b45 tests: check for treesitter langs and mason lsp config 2024-06-05 17:47:46 +02:00
ca0b9ee915 fix(extras): added recommended for helm/haskell 2024-06-05 17:36:02 +02:00
106130f4cd ci: added some tests 2024-06-05 17:31:51 +02:00
373d6b60e1 style: python.lua 2024-06-05 16:42:13 +02:00
1cdb5bdf41 feat(python): switch to regexp branch for a rewrite the venv selector plugin (#3301)
It has eliminated many bugs and allows users to easily add their searches, if the plugin doesn't find them automatically.
2024-06-05 16:33:49 +02:00
1806ea710f feat(bufferline): add keymaps for BufferLineMovePrev / BufferLineMoveNext (#1935)
* Add mappings for BufferLineMovePrev / BufferLineMoveNext

* Change to '[B' and ']B'

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-05 16:11:16 +02:00
de9e337f0d feat(keymaps): add keymap to close all tab pages except the current one (#2975)
* feat(keymaps): add keymap to close all tab pages except the current one

* fix: use o

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-05 16:04:17 +02:00
99c06952a0 ci: stale 2024-06-05 15:53:22 +02:00
90d8ff27d2 ci: fix stale workflow 2024-06-05 15:43:22 +02:00
d6dea2247c ci: enable conventional commit linter on main 2024-06-05 15:41:32 +02:00
7f65b24113 style: r.lua 2024-06-05 15:38:04 +02:00
ff9ca808e0 ci: added stylua / stale / conventional commits 2024-06-05 15:36:56 +02:00
cdadb59ee3 docs(pt): add readme in portuguese (#1958) 2024-06-05 15:23:09 +02:00
ea62195fe5 docs: Added Japanese Translation of the README (#2232)
* add Japanese README file

* fix some typo
2024-06-05 15:22:50 +02:00
a2cf7d9a11 docs: add the Korean version of README (#2495) 2024-06-05 15:22:30 +02:00
7ed5a6c371 ci: remove custom pr-numbers again 2024-06-05 15:20:32 +02:00
71165ac52a ci: label more PRs 2024-06-05 15:19:04 +02:00
39c10b2b81 ci: remove custom pr-numbers 2024-06-05 15:16:39 +02:00
cf2870cce0 ci: fix labels 2024-06-05 15:10:46 +02:00
b764947061 ci: run labeler on existing PRs 2024-06-05 15:08:20 +02:00
75dcce02dc ci: added PR labeler 2024-06-05 15:03:08 +02:00
1faa562964 ci: change the release please action name to new (#3259)
* ci: change the release please action name to new

* Update ci.yml

* Create release-please-config.json

* fix: add release manifest

* fix: release-please

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-05 14:49:33 +02:00
c52242b05b style: format 2024-06-05 13:42:15 +02:00
662e2ffe0f fix(keymaps): use root dir for git log 2024-06-05 13:41:59 +02:00
fa706b320b feat(statuscol): statuscolumn options for open fold indicator and fold hl (#2923)
* feat(statuscol): fold open indicator

* fix: make it configurable

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-05 11:23:19 +02:00
d64d761539 feat: enabled ts-plugin support for astro and svelte 2024-06-05 11:09:12 +02:00
e32d1918ae fix(python): removed the python-semshi extra 2024-06-05 11:01:10 +02:00
HJK
c1f5fcf9c7 fix(extra.lang.scala): Fix the always initializing regardless of file… (#3455)
* fix(extra.lang.scala): Fix the always initializing regardless of filetype

* fix typo
2024-06-05 08:07:13 +02:00
452b70ad15 fix(toggle): slightly better maximize 2024-06-05 07:40:28 +02:00
1c583650e6 fix(toggle): un-maximize when quiting Neovim 2024-06-05 07:02:19 +02:00
90e68edfe7 chore(build): auto-generate vimdoc 2024-06-05 04:55:23 +00:00
8971ea25f9 fix(toggle): Restore width/height values when closing while maximized is toggled on (#3453) 2024-06-05 06:54:52 +02:00
987bd2207f feat(extras): Add extra for angular lspconfig (#2806)
* feat(extras): Add extra for angular lspconfig

Since treesitter has better support for angular parser recently that works for the legacy and the latest version of it,
I am happy to suggest this extra configuration that works for well for me without any issue.
And since lack of references about how to config the angular lsp inside of neovim out there, this will work fine as a starting point.

* feat(extras): Added `angularls` lsp configuration

* feat(extras.lang): update `angularls` configuration

---------

Co-authored-by: Radvil <radvil.linux@gmail.com>
2024-06-04 19:03:16 +02:00
9a635ef8d6 fix(lsp): Enable using deno.enablePaths in denols settings (#3446) 2024-06-04 11:31:29 +02:00
1677b3b84f feat(lazydev): use lazydev with neodev types (not the plugin) on Neovim 0.9.x 2024-06-04 11:14:48 +02:00
c50018b791 feat(editor): added extra for inc-rename.nvim (#3432)
* feat(editor-extra): Add inc-rename

* fix: refactor and moved noice integration

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-06-04 09:51:36 +02:00
ae0d94e048 fix(lazydev): add cmd 2024-06-04 09:39:37 +02:00
3df8af369c fix(tex): remove latex treesitter support since it's not needed with vimtex and it needs treesitter-cli 2024-06-04 09:39:37 +02:00
0c396e298a chore(main): release 12.4.0 (#3422)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-04 08:49:37 +02:00
2c6dbd9b89 chore(build): auto-generate vimdoc 2024-06-04 06:44:06 +00:00
39da8514d3 feat(lazydev): new lazydev config based on trigger words 2024-06-04 08:43:31 +02:00
4d706f1bdc fix(ui): fix incorrect colors on change colorscheme (lualine) (#3431) 2024-06-03 10:30:57 +02:00
d6c59d9a41 feat(hipatterns): added vue/astro 2024-06-03 09:24:19 +02:00
1731e455d4 fix(hipatterns): update mini-hipatterns.lua config to add support for heex, rust and svelte files (#3430)
* Update mini-hipatterns.lua

added support for heex, rust and svelte to hipatterns

* Update mini-hipatterns.lua
2024-06-03 09:22:23 +02:00
40df5896d5 chore(build): auto-generate vimdoc 2024-06-03 07:12:58 +00:00
6c3fd9fedf fix: hack for dashboard.nvim so that it shows errors when exiting 2024-06-03 07:12:17 +02:00
da7b7738eb fix(luasnip): move mappings to cmp spec so that they dont conflict with native snippets 2024-06-02 18:43:44 +02:00
83c0c9405a fix: fixup for nvim-snippets compat on 0.9. Fixes #3426 2024-06-02 17:47:27 +02:00
028d5bcac5 fix(todo-comments): use toggle for Trouble todo commands (#3424) 2024-06-02 14:53:58 +02:00
bb66618f1f fix(lazydev): easier way of defining library plugin paths 2024-06-02 14:24:14 +02:00
6da95ee7d3 fix(todo-comments): use trouble filters for showing only todo/fix/fixmes 2024-06-02 12:30:54 +02:00
b289fea163 chore(main): release 12.3.0 (#3415)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-02 10:03:48 +02:00
6ba62855e2 chore(build): auto-generate vimdoc 2024-06-02 07:35:29 +00:00
5e76948d58 feat(coding): use lazydev.nvim instead of neodev.nvim 2024-06-02 09:33:52 +02:00
596c439db5 feat(util): utility methods for lazy plugins 2024-06-02 09:33:19 +02:00
c14d21ce75 feat: moved neoconf.nvim to extras 2024-06-02 09:05:16 +02:00
8024201e75 refactor: move 0.9 stuff to a compat layer. Cleaner this way 2024-06-01 20:46:58 +02:00
595069d501 R.lua make R output themed by neovim theme (#3416) 2024-06-01 15:05:34 +02:00
b2858a297a feat(extras): show extras imported in other extras 2024-06-01 11:22:17 +02:00
45b92aa381 feat(extras): split enabled in enabled plugins/languages 2024-06-01 11:21:28 +02:00
c69553e194 fix(dot): added dot to recommended 2024-06-01 11:21:03 +02:00
c98fbef3b5 fix(json): added *.json to recommended 2024-06-01 11:20:50 +02:00
c33d6578a8 fix(util): make sure doc gen works 2024-06-01 10:25:10 +02:00
2e9da7f41f chore(main): release 12.2.0 (#3377)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-06-01 09:52:43 +02:00
7598a7503d feat(extras): added extra for svelte. Full support will be enabled once my mason PR gets merged 2024-06-01 09:08:09 +02:00
4e62df4269 fix(health): remove old deprecated module checks 2024-06-01 08:48:44 +02:00
a6df15a63f fix(util): make sure mason is loaded when getting package paths 2024-06-01 08:48:29 +02:00
276b50e389 style: docs for LazyVim.extend 2024-06-01 08:42:00 +02:00
679c76a8f3 chore(build): auto-generate vimdoc 2024-06-01 06:34:09 +00:00
683aaeb75b feat(astro): added support for ts-plugin, but won't work till mason-registry PR is merged. See #3364 2024-06-01 08:33:24 +02:00
9d999fa210 refactor: refactored mason/typescript/vue support 2024-06-01 08:31:10 +02:00
135150307b fix(aerial): disable trouble leader-cs keymap when aerial extra is enabled 2024-05-31 23:47:48 +02:00
146c87cd78 fix(trouble): don't enable symbols keymap when outline.nvim enabled (#3408) 2024-05-31 23:46:30 +02:00
e7430b0776 fix(vue): correctly add plugins. See #3401 2024-05-31 20:53:55 +02:00
07ff12f5eb fix(extras.lang.vue) missing typescript autocomplete in .vue files (#3401)
* Fix missing autocomplete in .vue files

The existing Vue extra was not properly configuring vtsls to use the globalPlugin: '@vue/typescript-plugin'

This commit fixes missing typescript autocomplete in .vue files.

* move @vue/typescript-plugin back to extend function call

* tidy LazyVim.extend() arguments
2024-05-31 20:52:01 +02:00
abc6554e24 fix(ui): remove old alpha.nvim warning 2024-05-31 16:49:47 +02:00
ae381c91a1 Revert "fix(rust): let rustaceans.nvim setup rust_analyzer (#3389)"
This reverts commit 3fadf6af8f4adc1788fb8adec1fd9850d12feaf8.
2024-05-31 14:24:27 +02:00
d02b73d72a fix(ui): allow to disable the trouble lualine component with vim.g.trouble_lualine = false (#3391)
* fix(ui): do not add trouble to lualine when aerial is enabled

* refactor: make trouble lualine an option

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-05-31 14:07:55 +02:00
6678af37ee fix(copilot-chat): no need to schedule which-key keys. just use default 2024-05-31 13:59:53 +02:00
3fadf6af8f fix(rust): let rustaceans.nvim setup rust_analyzer (#3389)
fix this warning
```
   Warn  11:52:45 PM notify.warn nvim-lspconfig.rust_analyzer has been setup.
This will likely lead to conflicts with the rustaceanvim LSP client.
See ':h rustaceanvim.mason'
```
fix taken from https://github.com/mrcjkb/rustaceanvim/blob/master/doc/mason.txt
2024-05-31 13:56:40 +02:00
9f2cc30246 fix(lsp): better way of extending deeply nested lists. Fixes #3398 2024-05-31 13:52:43 +02:00
7782affc90 chore(build): auto-generate vimdoc 2024-05-31 06:22:30 +00:00
a474aea1f9 fix: rename +a which-key group to ai. Fixes #3392 2024-05-31 08:21:50 +02:00
060f56d6d4 fix(extras): underline = false for setting diagnostics (#3379)
Similar to ea7b9c3c3f#
I only noticed this, because in my main config I have some Extras not
managed by `LazyExtras`.
2024-05-30 16:08:34 +02:00
0a9373733f feat(typescript): add keymap for remove unused imports (#3376) 2024-05-30 15:30:20 +02:00
298a8f5c5d chore(main): release 12.1.0 (#3362)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-30 14:55:03 +02:00
95d055dcf7 feat: trouble v3 2024-05-30 14:41:13 +02:00
ae098d67d6 fix(typescript): vtsls server expe settings (#3372)
Based on [vtsls schema](bd2df5a2d4/packages/service/configuration.schema.json (L1092)), experimental setting should be vtsls property not typescript.

```json
"vtsls.experimental.completion.enableServerSideFuzzyMatch": {
      "default": false,
      "type": "boolean",
      "description": "Execute fuzzy match of completion items on server side. Enable this will help filter out useless completion items from tsserver."
    },
```
2024-05-30 11:29:09 +02:00
c2ef09227e fix: remove lazygit log gl keymap when on gitui (#3371) 2024-05-30 11:17:55 +02:00
e7d4b397b2 feat(extras): simple extra for astro 2024-05-30 11:17:24 +02:00
cf6775a959 fix(typescript): allow easier merging of ts plugins 2024-05-30 11:17:23 +02:00
c4b7505969 fix(extras): show recommended languages above enabled plugins 2024-05-30 11:17:23 +02:00
7414e84af9 fix(root): escape glob expressions 2024-05-30 11:17:23 +02:00
b285a46dfc feat(typescript): vtls add select ts version (#3366) 2024-05-30 09:57:10 +02:00
2e5e46d9ff chore(build): auto-generate vimdoc 2024-05-30 05:19:20 +00:00
a224ef2a73 fix(clangd): switch source/header is now leader-ch. Fixes #3363 2024-05-30 07:18:41 +02:00
2a7d163a8a feat(copilot-chat): add cmp integration 2024-05-30 00:27:13 +02:00
80143069ff chore(main): release 12.0.0 (#3357)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-29 22:37:15 +02:00
3ace8277e5 feat(keymaps): new keymap to toggle mazimize of current window leader-m or leader-wm 2024-05-29 22:35:40 +02:00
a13457eea3 fix(trouble_v3): set correct lualine section background color 2024-05-29 21:38:05 +02:00
0975eeb9ad feat(vscode): added ts-comments to allow list for vscode 2024-05-29 18:22:54 +02:00
804756209e fix(lsp): remove duplicate keymap 2024-05-29 16:39:02 +02:00
01e6718e03 fix(lsp): added support for has as array for lsp keymaps 2024-05-29 16:31:16 +02:00
38b8736b81 feat(typescript): added gR to goto file references 2024-05-29 16:02:38 +02:00
4dfd5c2596 fix(lsp): create gr with nowait=true 2024-05-29 16:02:13 +02:00
f6bcf6f12c fix(lsp): fix ts/deno both attaching 2024-05-29 15:39:17 +02:00
fba06ce9f5 feat(typescript)!: the typescript extra now uses vtsls instead of tsserver. You may want to update your lsp settings. 2024-05-29 15:10:57 +02:00
cf46d265ff chore(build): auto-generate vimdoc 2024-05-29 12:46:34 +00:00
b949dba489 feat(lsp): added leader-cR to rename the current file and to lsp rename operations 2024-05-29 14:45:55 +02:00
4bbeb37a18 fix(lsp): fix LazyVim's on_file_rename to work according to the lsp spec 2024-05-29 14:45:55 +02:00
54d687383d style: cleanup 2024-05-29 14:45:55 +02:00
0160851a25 chore(main): release 11.11.0 (#3351)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-28 23:04:16 +02:00
1b86d7b2ad fix(snippets): fix snippets with multiple placeholders for the same tabstop 2024-05-28 19:32:21 +02:00
eb0da3c92f feat(snippets): try to use the snippet parse to get a preview 2024-05-28 19:31:59 +02:00
425dadef72 fix(snippets): show actual error for failed snippet 2024-05-28 19:31:22 +02:00
91493588a8 fix(nvim-snippets): no longer needed to set global_snippets 2024-05-28 17:51:10 +02:00
97bdcc1c52 chore(main): release 11.10.0 (#3339)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-28 16:15:34 +02:00
a6e6d4dabd fix(nvim-snippets): remove extra filetypes since thats no longer needed with merged PR 2024-05-28 16:12:53 +02:00
cf4374867d feat(snippets): re-number tabstops for invalid snippets 2024-05-28 16:12:35 +02:00
025ba33dc3 fix(nvim-snippets): also enable for tsx/jsx files 2024-05-28 15:13:29 +02:00
99f0a1cb40 fix(nvim-snippets): load js snippets for ts. See #3344 2024-05-28 15:11:32 +02:00
de57894158 feat(scala-extra): Use noice for progress and add minimal keybinding (#3348)
* Use fidget for progress and add minimal keybinding

* remove figest, noice works already

* make keybinding only available for scala filetypes
2024-05-28 14:55:11 +02:00
80c9dcaabe feat(lang): add R (#3272)
* Added R extra

* Removed "made by Ben10164"

* Formatted Lua

* Removed hardcoded addition of R-languageserver in MasonLSP

* Improved nvim-lspconfig config for r_language_server

* Added nvim-neotest

* Format

* Removed Lualine

* Rework into opts, modify `pdfviewer` to be os dependent

* refactor: r

* fix: add cmp-r back

* Added quarto whichkey group label

* Set pdfviewer to be an empty string

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-05-28 13:44:38 +02:00
a3011c91d4 chore(build): auto-generate vimdoc 2024-05-28 05:40:04 +00:00
47a8736278 feat(keymaps): add comment above/below current line with gco/gcO 2024-05-28 07:39:26 +02:00
e68ff6897e feat(lsp): config option to exclude certain filetypes from inlay hints. Closes #3202 2024-05-27 21:19:36 +02:00
08481c2c92 fix(copilot-chat): enhanced chat view is now merged upstream, so update your plugins! 2024-05-27 20:57:49 +02:00
505ce3851c chore(main): release 11.9.0 (#3333)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-27 18:24:15 +02:00
0a63734b78 fix(lsp): double check for documentHighlight. See #3246 2024-05-27 18:22:44 +02:00
a23e8c15f5 feat(copilot-chat): enhanced rendering of the chat window 2024-05-27 18:16:35 +02:00
02b240cea5 fix(copilot-chat): clear -> reset 2024-05-27 17:53:38 +02:00
eb1c04bd31 fix(terminal): make gf behave. Fixes #3335 2024-05-27 17:38:51 +02:00
163f7ea303 fix(edgy): load edgy spec early 2024-05-27 17:38:30 +02:00
2695fc7dfc feat(copilot-chat): make keymaps work in visual mode 2024-05-27 16:48:22 +02:00
54d7cea305 fix(typescript): invalid value in inlayHints options (#3331) 2024-05-27 13:48:22 +02:00
91fe7ef568 chore(main): release 11.8.0 (#3326)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-27 09:07:31 +02:00
46785526a6 feat(extras): added extra for CopilotChat.nvim 2024-05-27 08:42:30 +02:00
d3500a4a33 fix(rust): show error when rust-analyzer not found 2024-05-27 08:09:24 +02:00
f48d55a653 fix(lang/rust): Remove rust-analyzer from nvim-lspconfig (#2755)
According to the maintainer of `rustaceanvim` (see his comment [here](https://github.com/LazyVim/LazyVim/pull/2198#issuecomment-1999475044)) he says
> To pick up on this: There's a good reason rustaceanvim doesn't automatically pick up a mason.nvim installation. It will most likely be built with a different toolchain than the one your project uses, often leading to discrepancies and subtle bugs.
It's easy to configure rustaceanvim to use mason.nvim if you really want it, but I generally adhere to the YAGNI principle.

I tried locally and the removal of `rust-analyzer` from `nvim-lspconfig` doesn't
seem to have any effect on how `rustaceanvim` behaves.

I propose to remove all instances of `rust-analyzer` from `nvim-lspconfig` to avoid
any possible issues from users that don't have `rust-analyzer` installed
in their toolchain (in this case it would pick up Mason's $PATH I
believe), since they will think that since `rust-analyzer` is installed
by Mason, there shouldn't be a problem and report issues as bugs.
2024-05-27 08:04:51 +02:00
9ccdbf644c feat(git): Change Commit Log to use Lazygit (#2959)
* feat(git): Change Commit Log to use Lazygit

* fix: use gl

* fix conflicts

---------

Co-authored-by: Folke Lemaitre <folke.lemaitre@gmail.com>
2024-05-27 07:53:49 +02:00
dbed614655 fix(laygit): normalize paths. Fixes #3327 2024-05-27 05:35:47 +02:00
61dc00147b chore(build): auto-generate vimdoc 2024-05-27 05:14:23 +00:00
d23e8572e8 fix(laygit): use correct .git root for git blame 2024-05-27 07:13:43 +02:00
53911748dd fix(snippet): always use top-level snippet session. Fixes #3199 2024-05-26 18:51:14 +02:00
59204df1cb chore(main): release 11.7.0 (#3317)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-26 17:04:15 +02:00
3a30070a4c feat: lazyrc files are now a lazy.nvim feature 2024-05-26 16:49:48 +02:00
7aa37064a2 fix(lspconfig): make opts a function (#3311)
`LazyVim.config` gets evaluated during the parsing phase with `opts`
as a table (thus not taking into account changes made in the user's
personal configuration for the icons), so make `opts` a function to
defer the evaluation until the plugin loads.
2024-05-26 16:06:15 +02:00
b3373f3428 fix(lsp): added a-n, a-p for document highlights and cycling. Closes #3320 2024-05-26 16:03:13 +02:00
c9ab8224f5 fix(illuminate): s/enabed/enabled (#3313) 2024-05-26 10:38:28 +02:00
cdff9de172 fix(lsp): correct previous reference keymap description (#3314) 2024-05-26 10:33:40 +02:00
945ee7e283 chore(build): auto-generate vimdoc 2024-05-26 08:11:46 +00:00
07a137199c fix(lsp): properly get buffer for dynamic capabilities (#3315) 2024-05-26 10:11:12 +02:00
0f6ff53ce3 chore(main): release 11.6.1 (#3292)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-23 17:41:03 +02:00
10ed3082a4 fix(lsp): use proper buffer for dynamic capabilities. Fixes #3246 2024-05-23 17:39:23 +02:00
c6e8c5b450 chore(main): release 11.6.0 (#3269)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-23 07:15:41 +02:00
692aa08da7 chore(build): auto-generate vimdoc 2024-05-23 05:14:55 +00:00
46cf5347b5 fix(lsp): only enableinlay hints for when buffer is an actual file. See #3284 2024-05-23 07:14:17 +02:00
f9b31372ae fix(python): extras.lang.python to enable venv select keys on ft (#3280) 2024-05-22 19:39:16 +02:00
ad6c9bcfab Revert "fix: set markdown for LICENSE file (#3276)"
This reverts commit 1eea51606e1ec1035c440a4ca9b3eab053337a7d.
2024-05-22 19:37:23 +02:00
31f876cc4c chore(build): auto-generate vimdoc 2024-05-22 17:37:04 +00:00
1eea51606e fix: set markdown for LICENSE file (#3276) 2024-05-22 19:36:33 +02:00
ae6d8f1a34 feat(markdown): add formatter for mdx 2024-05-21 23:05:29 +02:00
9eec03d890 feat(markdown): configure conform for markdown files (#2308) 2024-05-21 23:03:43 +02:00
79608fbc4f feat(telescope): add telescope jumplist keymap (#3268) 2024-05-21 22:56:15 +02:00
3ebe30685d chore(main): release 11.5.0 (#3265)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2024-05-21 22:28:15 +02:00
e46dd4e9b2 fix(neo-tree): better icons for git staged/unstaged 2024-05-21 22:06:52 +02:00
ab4e57a4bf feat(telescope): add quickfix and telescope keymaps (#3077) 2024-05-21 20:34:28 +02:00
027d6bc2e8 fix(snippets): my nvim-snippets PR is merged, so remove work-around. That was quick :) 2024-05-21 20:26:30 +02:00
cb1e1b9c82 fix(snippets): fixes custom snippets. use my branch till nvim-snippets PR is merged. Fixes #3240 2024-05-21 20:18:20 +02:00
d73397c4aa fix(snippets): make friendly snippets a dep of nvim-snippets 2024-05-21 19:54:20 +02:00
2bae438570 fix(cmp): fix cmp's broken snippet parsing functionality. Fixes #3266 2024-05-21 19:51:13 +02:00
8ba7c64a7d feat(comments): use ts-comments.nvim instead of nvim-ts-context-commentstring on Neovim 0.10 2024-05-21 19:31:40 +02:00
55b07dee21 fix(nvim-snippets): enable global friendly-snippets. See #3240 2024-05-21 19:22:41 +02:00
8c94842b4a fix(lsp): sometimes lsp client is not fully initialized and doesnt yet have client.supports_method on 0.9.5. Fixes #3263 2024-05-21 18:23:10 +02:00
d19a004136 chore(build): auto-generate vimdoc 2024-05-21 10:01:38 +00:00
133 changed files with 5462 additions and 1705 deletions

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

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

View File

@ -75,7 +75,7 @@ body:
-- install plugins
local plugins = {
"folke/tokyonight.nvim",
"folke/LazyVim",
{ "LazyVim/LazyVim", import = "lazyvim.plugins" },
-- add any other plugins here
}
require("lazy").setup(plugins, {

View File

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

View File

@ -3,6 +3,11 @@ description: Suggest a new feature
title: "feature: "
labels: [enhancement]
body:
- type: markdown
attributes:
value: |
**IMPORTANT:** ideas or requests related to extras, should go in the [Extra Requests](https://github.com/LazyVim/LazyVim/discussions/categories/extra-requests)
discussion forum.
- type: checkboxes
attributes:
label: Did you check the docs?
@ -10,6 +15,8 @@ body:
options:
- label: I have read all the LazyVim docs
required: true
- label: This is not a request for a new or existing extra (see above)
required: true
- type: textarea
validations:
required: true

15
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@ -0,0 +1,15 @@
## What is this PR for?
<!-- 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.

11
.github/dependabot.yml vendored Normal file
View File

@ -0,0 +1,11 @@
# 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
schedule:
interval: "weekly"

19
.github/labeler.yml vendored Normal file
View File

@ -0,0 +1,19 @@
core:
- all:
- changed-files:
- any-glob-to-any-file: "lua/lazyvim/**"
- all-globs-to-all-files: "!lua/lazyvim/plugins/**"
core-plugins:
- all:
- changed-files:
- any-glob-to-any-file: "lua/lazyvim/plugins/**"
- all-globs-to-all-files: "!lua/lazyvim/plugins/extras/**"
extras:
- changed-files:
- any-glob-to-any-file: "lua/lazyvim/plugins/extras/**"
extras-lang:
- changed-files:
- any-glob-to-any-file: "lua/lazyvim/plugins/extras/lang/**"

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

@ -4,12 +4,18 @@ on:
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 }}
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Neovim
@ -25,11 +31,11 @@ jobs:
run: |
nvim --version
[ ! -d tests ] && exit 0
nvim --headless -u tests/init.lua -c "PlenaryBustedDirectory tests/ {minimal_init = 'tests/init.lua', sequential = true}"
./tests/run
docs:
runs-on: ubuntu-latest
needs: tests
if: ${{ github.ref == 'refs/heads/main' }}
if: ${{ github.ref == 'refs/heads/main' && github.repository_owner == 'LazyVim' }}
steps:
- uses: actions/checkout@v4
- name: panvimdoc
@ -48,19 +54,17 @@ jobs:
commit_author: "github-actions[bot] <github-actions[bot]@users.noreply.github.com>"
release:
name: release
if: ${{ github.ref == 'refs/heads/main' }}
if: ${{ github.ref == 'refs/heads/main' && github.repository_owner == 'LazyVim' }}
needs:
- docs
- tests
runs-on: ubuntu-latest
steps:
- uses: google-github-actions/release-please-action@v4
- uses: googleapis/release-please-action@v4
id: release
with:
release-type: simple
package-name: LazyVim
extra-files: |
lua/lazyvim/config/init.lua
config-file: .github/release-please-config.json
manifest-file: .github/.release-please-manifest.json
- uses: actions/checkout@v4
- name: tag stable versions
if: ${{ steps.release.outputs.release_created }}

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

@ -0,0 +1,12 @@
name: "Pull Request Labeler"
on:
- pull_request_target
jobs:
labeler:
permissions:
contents: read
pull-requests: write
runs-on: ubuntu-latest
steps:
- uses: actions/labeler@v5

41
.github/workflows/pr.yml vendored Normal file
View File

@ -0,0 +1,41 @@
name: "Lint PR"
on:
pull_request_target:
types:
- opened
- edited
- synchronize
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

27
.github/workflows/stale.yml vendored Normal file
View File

@ -0,0 +1,27 @@
name: Close stale issues and 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."

File diff suppressed because it is too large Load Diff

31
CONTRIBUTING.md Normal file
View File

@ -0,0 +1,31 @@
# Contributing to LazyVim
## General Guidelines
- Avoid using Vim plugins whenever possible.
- If an extra requires a Vim plugin, explain why in the PR description.
- Ensure all configurations are overridable by the user, using Lazy's specs.
- Tag specs as `optional` if they should only be enabled when the user has them installed.
- Implement proper lazy-loading for every plugin added in an extra.
- Understand how Lazy's dependencies work. For Lua dependencies, do not specify
them in the `dependencies` field. Instead, add them as a separate spec with `lazy=true`.
## Contributing an Extra Plugin
- The plugin should be well-known and require significant configuration.
- Simple specs containing just the plugin with some options will not be accepted.
## Contributing an Extra Language
- You should be familiar with the language you are adding.
- You should have experience with the language's ecosystem, including formatters,
linters, and LSP servers.
- The extra should include the setup most widely used by the community.
- Include Tree-sitter parsers that are not yet the default.
- Include the most widely used LSP server setup.
- Avoid the need for LSP wrapper packages whenever possible.
- Only add a formatter if it is typically used by the community instead of the LSP formatter.
- Only add extra linters if the community typically uses them instead of just the LSP linters.
- Every language extra requires a `recommended` section as part of the extra.
Check lspconfig server configurations for the proper filetypes and root directories.
Refer to other extras for creating the `recommended` section.

31
NEWS.md
View File

@ -1,7 +1,38 @@
# What's new?
## 12.x
- This **news** is now also available on the website at [https://www.lazyvim.org/news](https://www.lazyvim.org/news)
- **prettier** extra now works for all prettier supported filetypes
and will be enabled for astro/svelte extra if you have a proper
config file with the correct prettier plugin
- **New Language Support:** SQL, Clojure, Thrift, Elm, Gleam, Angular,
NuShell, Svelte, Kotlin, Astro, Toml and PHP
- **New Extras:** `copilot-chat`, `git`, `octo`, `inc-rename` and `neogen`
- The **typescript** extra now uses `vtsls` instead of `tsserver`
- **Neovim >= 0.10** now uses the much faster [lazydev.nvim](https://github.com/folke/lazydev.nvim)
instead of `neodev.nvim`
- moved `neoconf.nvim` to extras. Project specific LSP settings
can be done with a `.lazy.lua` file instead.
## 11.x
- **Keymaps:**
- `<leader>gB` to open the current repo in the browser
- `gco` and `gcO` to add a comment below or above the current line
- `<leader>wm` to toggle window maximize
- **lazydev.nvim:** faster alternative to `neodev.nvim`
- **Options:** Added `linebreak=true` to default options.
- `mini.ai` is back as a default plugin! Removing it was a mistake.
It's a great plugin that enhances the native text objects.

View File

@ -113,6 +113,10 @@ docker run -w /root -it --rm alpine:edge sh -uelic '
[![Watch the video](https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg)](https://www.youtube.com/watch?v=N93cTbtLCIM)
[@dusty-phillips](https://github.com/dusty-phillips) 正在编写一本名为
[LazyVim for Ambitious Developers](https://lazyvim-ambitious-devs.phillips.codes)
的书,该书可在线免费获得。
## 📂 文件结构
config 下的文件会在适当的时候自动加载,所以你不需要手动引入这些文件。

139
README-JP.md Normal file
View File

@ -0,0 +1,139 @@
<div align="center">
<img src="https://user-images.githubusercontent.com/292349/213446185-2db63fd5-8c84-459c-9f04-e286382d6e80.png">
</div>
<hr>
<h4 align="center">
<a href="https://lazyvim.github.io/installation">インストール</a>
·
<a href="https://lazyvim.github.io/configuration">設定</a>
·
<a href="https://lazyvim.github.io">ドキュメント</a>
</h4>
<div align="center"><p>
<a href="https://github.com/LazyVim/LazyVim/releases/latest">
<img alt="Latest release" src="https://img.shields.io/github/v/release/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=C9CBFF&logoColor=D9E0EE&labelColor=302D41&include_prerelease&sort=semver" />
</a>
<a href="https://github.com/LazyVim/LazyVim/pulse">
<img alt="Last commit" src="https://img.shields.io/github/last-commit/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=8bd5ca&logoColor=D9E0EE&labelColor=302D41"/>
</a>
<a href="https://github.com/LazyVim/LazyVim/blob/main/LICENSE">
<img alt="License" src="https://img.shields.io/github/license/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=ee999f&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://github.com/LazyVim/LazyVim/stargazers">
<img alt="Stars" src="https://img.shields.io/github/stars/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=c69ff5&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://github.com/LazyVim/LazyVim/issues">
<img alt="Issues" src="https://img.shields.io/github/issues/LazyVim/LazyVim?style=for-the-badge&logo=bilibili&color=F5E0DC&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://github.com/LazyVim/LazyVim">
<img alt="Repo Size" src="https://img.shields.io/github/repo-size/LazyVim/LazyVim?color=%23DDB6F2&label=SIZE&logo=codesandbox&style=for-the-badge&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://twitter.com/intent/follow?screen_name=folke">
<img alt="follow on Twitter" src="https://img.shields.io/twitter/follow/folke?style=for-the-badge&logo=twitter&color=8aadf3&logoColor=D9E0EE&labelColor=302D41" />
</a>
</div>
LazyVimは、設定の拡張と変更を容易にするために[💤 lazy.nvim](https://github.com/folke/lazy.nvim)によって提供されるNeovimセットアップです。
LazyVimは、ゼロから始めるか、あらかじめ作成されたディストリビューションを使用するかの選択を迫ることなく、
必要に応じて設定を調整する柔軟性と、事前に設定されたセットアップの利便性を両方叶える最高の世界を提供します。
![image](https://user-images.githubusercontent.com/292349/211285846-0b7bb3bf-0462-4029-b64c-4ee1d037fc1c.png)
![image](https://user-images.githubusercontent.com/292349/213447056-92290767-ea16-430c-8727-ce994c93e9cc.png)
## ✨ 機能
- 🔥 Neovimを本格的なIDEへと変身させます
- 💤 [lazy.nvim](https://github.com/folke/lazy.nvim)で簡単にカスタマイズと拡張が可能
- 🚀 驚くほどの高速さ
- 🧹 Options, autocmds, そしてkeymapsのための合理的なデフォルト設定
- 📦 事前に設定がされ、使用可能なプラグインが豊富についてきます
## ⚡️ 必要要件
- Neovim >= **0.9.0** (**LuaJIT**でビルドされている必要があります)
- Git >= **2.19.0** (部分的なcloneサポートのため)
- [Nerd Font](https://www.nerdfonts.com/) **_(任意)_**
- `nvim-treesitter`用の**C**コンパイラ。詳細は[こちら](https://github.com/nvim-treesitter/nvim-treesitter#requirements)
## 🚀 Getting Started
**lazyvim**のスターターテンプレートは[こちら](https://github.com/lazyvim/starter)。
<details><summary>Dockerで試す</summary>
```sh
docker run -w /root -it --rm alpine:edge sh -uelic '
apk add git lazygit neovim ripgrep alpine-sdk --update
git clone https://github.com/LazyVim/starter ~/.config/nvim
cd ~/.config/nvim
nvim
'
```
</details>
<details><summary><a href="https://github.com/LazyVim/starter">LazyVim Starter</a>をインストール</summary>
- 既存のNeovimファイルのバックアップを作成します。
```sh
mv ~/.config/nvim ~/.config/nvim.bak
mv ~/.local/share/nvim ~/.local/share/nvim.bak
```
- スターターをcloneします。
```sh
git clone https://github.com/LazyVim/starter ~/.config/nvim
```
- 後ほど自分のリポジトリに加えられるように、`.git`フォルダを削除します。
```sh
rm -rf ~/.config/nvim/.git
```
- Neovimを起動します!
```sh
nvim
```
**LazyVim**をカスタマイズするために、ファイルのコメントを参照してください。
</details>
---
[@elijahmanor](https://github.com/elijahmanor)氏によって作成された始めるにあたっての概要動画があります。
[![動画を見る](https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg)](https://www.youtube.com/watch?v=N93cTbtLCIM)
## 📂 ファイル構造
config配下にあるファイルは適切なタイミングで自動的にロードされる為、
手動でそれらのファイルをrequireする必要はありません。
LazyVimには、自分で設定したものより先にロードされるデフォルトの設定ファイルが付属しています。詳しくは[こちら](https://github.com/LazyVim/LazyVim/tree/main/lua/lazyvim/config)。
カスタムプラグインをlua/plugins/の下に追加することができます。lua/plugins/配下の全てのファイルは[lazy.nvim](https://github.com/folke/lazy.nvim)によって自動的にロードされます。
<pre>
~/.config/nvim
├── lua
│   ├── config
│   │   ├── autocmds.lua
│   │   ├── keymaps.lua
│   │   ├── lazy.lua
│   │   └── options.lua
│   └── plugins
│   ├── spec1.lua
│   ├── **
│   └── spec2.lua
└── init.lua
</pre>
## ⚙️ 設定
こちらの[ドキュメント](https://lazyvim.github.io)を参照してください。

139
README-KO.md Normal file
View File

@ -0,0 +1,139 @@
<div align="center">
<img src="https://user-images.githubusercontent.com/292349/213446185-2db63fd5-8c84-459c-9f04-e286382d6e80.png">
</div>
<hr>
<h4 align="center">
<a href="https://lazyvim.github.io/installation">설치하기</a>
·
<a href="https://lazyvim.github.io/configuration">설정하기</a>
·
<a href="https://lazyvim.github.io">문서</a>
</h4>
<div align="center"><p>
<a href="https://github.com/LazyVim/LazyVim/releases/latest">
<img alt="최신 업데이트" src="https://img.shields.io/github/v/release/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=C9CBFF&logoColor=D9E0EE&labelColor=302D41&include_prerelease&sort=semver" />
</a>
<a href="https://github.com/LazyVim/LazyVim/pulse">
<img alt="마지막 커밋" src="https://img.shields.io/github/last-commit/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=8bd5ca&logoColor=D9E0EE&labelColor=302D41"/>
</a>
<a href="https://github.com/LazyVim/LazyVim/blob/main/LICENSE">
<img alt="라이센스" src="https://img.shields.io/github/license/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=ee999f&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://github.com/LazyVim/LazyVim/stargazers">
<img alt="스타" src="https://img.shields.io/github/stars/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=c69ff5&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://github.com/LazyVim/LazyVim/issues">
<img alt="이슈" src="https://img.shields.io/github/issues/LazyVim/LazyVim?style=for-the-badge&logo=bilibili&color=F5E0DC&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://github.com/LazyVim/LazyVim">
<img alt="레파지토리 크기" src="https://img.shields.io/github/repo-size/LazyVim/LazyVim?color=%23DDB6F2&label=SIZE&logo=codesandbox&style=for-the-badge&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://twitter.com/intent/follow?screen_name=folke">
<img alt="트위터" src="https://img.shields.io/twitter/follow/folke?style=for-the-badge&logo=twitter&color=8aadf3&logoColor=D9E0EE&labelColor=302D41" />
</a>
</div>
LazyVim은 [💤 lazy.nvim](https://github.com/folke/lazy.nvim)를 기반으로 작동하는 Neovim 셋업입니다. 더 커스터마이징 가능하고, 설정들을 바꾸는 것을 쉽게 만들기위해 시작되었죠. 그저 처음부터 모든 설정들을 만지고 시작하는 방법, 또는 이미 만들어진 배포용 설정을 사용하는 방법이 있지만, LazyVIM은 이미 잘 설정된 환경과, 필요에 따라 쉽게 바꿀 수 있는 유연성을 모두 포괄합니다. 이를 통해 훨신 쉽고 편리한, 전에는 만나보실 수 없었던 새로운 Nvim의 세계를 경험하실 수 있으실 겁니다.
![image](https://user-images.githubusercontent.com/292349/211285846-0b7bb3bf-0462-4029-b64c-4ee1d037fc1c.png)
![image](https://user-images.githubusercontent.com/292349/213447056-92290767-ea16-430c-8727-ce994c93e9cc.png)
## ✨ 기능
- 🔥 Neovim을 완벽한 IDE로 바꾸어보세요.
- 💤 lazy.vim과 함께 쉽게 커스터마이징하고, 확장하세요.
- 🚀 완전히 빠른 속도를 경험해보세요.
- 🧹 기본적으로 만져져있는 옵션, 자동커멘드, 그리고 단축키들을 아무런 추가적인 설정없이 사용해보세요.
- 📦 안정적이고 미리 설정되어져있는 플러그인들과 함게 코딩하세요.
## ⚡️ 요구사항
- **0.9.0**이상의 Neovim (LuaJIT과 함께 개발이 되어져있어야함니다.)
- **2.19.0**이상의 Git (이것은 부분적인 클론기능을 지원하기 위함입니다.)
- [Nerd Font](https://www.nerdfonts.com/) **_(옵션)_**
- `nvim-treesitter`를 위한 **C** 컴파일러. [이 문서](https://github.com/nvim-treesitter/nvim-treesitter#requirements)를 확인해주시기바랍니다.
## 🚀 시작하기
[이 깃헙 레파지토리](https://github.com/LazyVim/starter)에서 스타터 템플릿을 찾으실 수 있습니다.
<details><summary>도커와 함께 시작해보기</summary>
```sh
docker run -w /root -it --rm alpine:edge sh -uelic '
apk add git lazygit neovim ripgrep alpine-sdk --update
git clone https://github.com/LazyVim/starter ~/.config/nvim
cd ~/.config/nvim
nvim
'
```
</details>
<details><summary><a href="https://github.com/LazyVim/starter">LazyVim 스타터</a>와 함께 시작해보기</summary>
- 현재 Neovim 파일들을 미리 백업:
```sh
mv ~/.config/nvim ~/.config/nvim.bak
mv ~/.local/share/nvim ~/.local/share/nvim.bak
```
- Lazyvim 스타터 깃헙 레파지토리 복제:
```sh
git clone https://github.com/LazyVim/starter ~/.config/nvim
```
- 나중에 본인의 레파지토리에 저장할 경우를 대비해 .git 폴더 지우기
```sh
rm -rf ~/.config/nvim/.git
```
- Neovim!
```sh
nvim
```
LazyVim를 커스터마이징 하는 법에 대해 다룬 설명을 참조해주시기 바랍니다.
</details>
---
유튜브에 LazyVim시작하기에 대해 [@elijahmanor](https://github.com/elijahmanor)에 의해 만들어진 영상이 있으니, 시청해 보시는 것을 추천드립니다.
[![Watch the video](https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg)](https://www.youtube.com/watch?v=N93cTbtLCIM)
## 📂 파일 구조
config 폴더 안에 있는 모든 파일들은 적절한 시간내에 자동으로 로드가 되기에, 아무 파일도 require를 하지 않아도 됩니다. **LazyVim**은 config폴더 안에 있는 모든 기본 파일들을 당신의 config 파일들 **전**에 불어옵니다. 이것에 대해서는, [이 문서](https://github.com/LazyVim/LazyVim/tree/main/lua/lazyvim/config)를 확인해 보시기 바랍니다.
추가적인 플러그인을 설치하시거나, 미리 설치되고 설정된 플러그인들을 또 덮어서 설정을 바꾸거나, 지우거나, 추가하고 싶으실 경우에는, 그에 해당하는 lua 파일들을 `lua/plugins` 폴더 안에 추가하시면, lazy.nvim이 자동적으로 그 파일들을 로드 할 것입니다.
<pre>
~/.config/nvim
├── lua
│   ├── config
│   │   ├── autocmds.lua
│   │   ├── keymaps.lua
│   │   ├── lazy.lua
│   │   └── options.lua
│   └── plugins
│   ├── spec1.lua
│   ├── **
│   └── spec2.lua
└── init.lua
</pre>
## ⚙️ 설정
[Lazyvim 공식문서](https://lazyvim.github.io)를 확인해 주시기 바랍니다.
LazyVim 공식문서의 한국어 지원은 현재 번역 중에 있습니다.

146
README-PT.md Normal file
View File

@ -0,0 +1,146 @@
<div align="center">
<img src="https://user-images.githubusercontent.com/292349/213446185-2db63fd5-8c84-459c-9f04-e286382d6e80.png">
</div>
<hr>
<h4 align="center">
<a href="https://lazyvim.github.io/installation">Instalar</a>
·
<a href="https://lazyvim.github.io/configuration">Configurar</a>
·
<a href="https://lazyvim.github.io">Documentação</a>
</h4>
<div align="center"><p>
<a href="https://github.com/LazyVim/LazyVim/releases/latest">
<img alt="Latest release" src="https://img.shields.io/github/v/release/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=C9CBFF&logoColor=D9E0EE&labelColor=302D41&include_prerelease&sort=semver" />
</a>
<a href="https://github.com/LazyVim/LazyVim/pulse">
<img alt="Last commit" src="https://img.shields.io/github/last-commit/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=8bd5ca&logoColor=D9E0EE&labelColor=302D41"/>
</a>
<a href="https://github.com/LazyVim/LazyVim/blob/main/LICENSE">
<img alt="License" src="https://img.shields.io/github/license/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=ee999f&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://github.com/LazyVim/LazyVim/stargazers">
<img alt="Stars" src="https://img.shields.io/github/stars/LazyVim/LazyVim?style=for-the-badge&logo=starship&color=c69ff5&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://github.com/LazyVim/LazyVim/issues">
<img alt="Issues" src="https://img.shields.io/github/issues/LazyVim/LazyVim?style=for-the-badge&logo=bilibili&color=F5E0DC&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://github.com/LazyVim/LazyVim">
<img alt="Repo Size" src="https://img.shields.io/github/repo-size/LazyVim/LazyVim?color=%23DDB6F2&label=SIZE&logo=codesandbox&style=for-the-badge&logoColor=D9E0EE&labelColor=302D41" />
</a>
<a href="https://twitter.com/intent/follow?screen_name=folke">
<img alt="follow on Twitter" src="https://img.shields.io/twitter/follow/folke?style=for-the-badge&logo=twitter&color=8aadf3&logoColor=D9E0EE&labelColor=302D41" />
</a>
</div>
LazyVim é uma configuração de Neovim potenciada por [💤 lazy.nvim](https://github.com/folke/lazy.nvim)
para tornar fácil customizar e extender a tua configuração.
Em vez de ter de escolher entre começar de raiz ou usar
uma distribuição pré-feita, LazyVim oferece o melhor
dos dois mundos - a flexibilidade de alterar a tua configuração
como necessário, junto com a conveniência de um setup pré-configurado.
![imagem](https://user-images.githubusercontent.com/292349/211285846-0b7bb3bf-0462-4029-b64c-4ee1d037fc1c.png)
![imagem](https://user-images.githubusercontent.com/292349/213447056-92290767-ea16-430c-8727-ce994c93e9cc.png)
## ✨ Características
- 🔥 Transforma o teu Neovim num IDE completo.
- 💤 Customiza e extende a tua configuração facilmente com [lazy.nvim](https://github.com/folke/lazy.nvim)
- 🚀 Super rápido
- 🧹 Definições comuns para options, autocms e keymaps
- 📦 Contém uma variedade de plugins pré-configurados e preparados a usar
## ⚡️ Requesitos
- Neovim >= **0.9.0** (preciso fazer build com **LuaJIT**)
- Git >= **2.19.0** (para suporte parcial de clones)
- uma [Nerd Font](https://www.nerdfonts.com/) **_(opcional)_**
- um compilador de **C** para `nvim-treesitter`. Mais informações [aqui](https://github.com/nvim-treesitter/nvim-treesitter#requirements)
## 🚀 Como Começar
Podes encontrar uma template **LazyVim** starter para começar, [aqui](https://github.com/LazyVim/starter)
<details><summary>Experimenta com docker</summary>
```sh
docker run -w /root -it --rm alpine:edge sh -uelic '
apk add git lazygit neovim ripgrep alpine-sdk --update
git clone https://github.com/LazyVim/starter ~/.config/nvim
cd ~/.config/nvim
nvim
'
```
</details>
<details><summary>Instala a template <a href="https://github.com/LazyVim/starter">LazyVim Starter</a></summary>
- Faz um backup da tua configuração atual de Neovim:
```sh
mv ~/.config/nvim ~/.config/nvim.bak
mv ~/.local/share/nvim ~/.local/share/nvim.bak
```
- Clona a template
```sh
git clone https://github.com/LazyVim/starter ~/.config/nvim
```
- Remove o diretório `.git`, para poderes adicionar ao teu próprio repositório mais tarde
```sh
rm -rf ~/.config/nvim/.git
```
- Inicia o Neovim!
```sh
nvim
```
Consulta os comentários nos ficheiros sobre como customizar **LazyVim**.
</details>
---
Existe um excelente video criado por [@elijahmanor](https://github.com/elijahmanor) com um passo a passo para começar.
[![Vê o video](https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg)](https://www.youtube.com/watch?v=N93cTbtLCIM)
## 📂 Extrutura de ficheiros
Os ficheiros no diretório **config** serão carregados automaticamente
no momento apropriado, por isso não é necessário carregar os plugins manualmente.
**LazyVim** vem com um conjunto de ficheiros
que serão carregados **_antes_** dos teus. Lẽ mais [aqui](https://github.com/LazyVim/LazyVim/tree/main/lua/lazyvim/config)
Tu podes acrescentar a tua configuração em `lua/plugins`. Todos os ficheiros
neste diretório serão carregados automaticamente por [lazy.nvim](https://github.com/folke/lazy.nvim)
<pre>
~/.config/nvim
├── lua
│   ├── config
│   │   ├── autocmds.lua
│   │   ├── keymaps.lua
│   │   ├── lazy.lua
│   │   └── options.lua
│   └── plugins
│   ├── spec1.lua
│   ├── **
│   └── spec2.lua
└── init.lua
</pre>
## ⚙️ Configuração
Consulta a [documentação](https://lazyvim.github.io)

View File

@ -115,6 +115,10 @@ There's a great video created by [@elijahmanor](https://github.com/elijahmanor)
[![Watch the video](https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg)](https://www.youtube.com/watch?v=N93cTbtLCIM)
[@dusty-phillips](https://github.com/dusty-phillips) is working on a book called
[LazyVim for Ambitious Developers](https://lazyvim-ambitious-devs.phillips.codes)
available for free online.
## 📂 File Structure
The files under config will be automatically loaded at the appropriate time,

View File

@ -1,4 +1,4 @@
*LazyVim.txt* For Neovim >= 0.9.0 Last change: 2024 May 20
*LazyVim.txt* For Neovim >= 0.9.0 Last change: 2024 June 30
==============================================================================
Table of Contents *LazyVim-table-of-contents*
@ -102,6 +102,10 @@ Theres a great video created by @elijahmanor
<https://www.youtube.com/watch?v=N93cTbtLCIM>
@dusty-phillips <https://github.com/dusty-phillips> is working on a book called
LazyVim for Ambitious Developers
<https://lazyvim-ambitious-devs.phillips.codes> available for free online.
FILE STRUCTURE *LazyVim-file-structure*
@ -125,6 +129,7 @@ Refer to the docs <https://lazyvim.github.io>
2. *image*: https://user-images.githubusercontent.com/292349/213447056-92290767-ea16-430c-8727-ce994c93e9cc.png
3. *@elijahmanor*:
4. *Watch the video*: https://img.youtube.com/vi/N93cTbtLCIM/hqdefault.jpg
5. *@dusty-phillips*:
Generated by panvimdoc <https://github.com/kdheepak/panvimdoc>

View File

@ -66,6 +66,8 @@ vim.api.nvim_create_autocmd("FileType", {
"checkhealth",
"neotest-summary",
"neotest-output-panel",
"dbout",
"gitsigns.blame",
},
callback = function(event)
vim.bo[event.buf].buflisted = false
@ -85,7 +87,7 @@ vim.api.nvim_create_autocmd("FileType", {
-- wrap and check for spell in text filetypes
vim.api.nvim_create_autocmd("FileType", {
group = augroup("wrap_spell"),
pattern = { "gitcommit", "markdown" },
pattern = { "*.txt", "*.tex", "*.typ", "gitcommit", "markdown" },
callback = function()
vim.opt_local.wrap = true
vim.opt_local.spell = true
@ -112,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.22.1" -- x-release-please-version
LazyVim.config = M
---@class LazyVimOptions
@ -33,6 +33,9 @@ local defaults = {
misc = {
dots = "󰇘",
},
ft = {
octo = "",
},
dap = {
Stopped = { "󰁕 ", "DiagnosticWarn", "DapStoppedLine" },
Breakpoint = "",
@ -132,7 +135,8 @@ local defaults = {
}
M.json = {
version = 4,
version = 6,
path = vim.g.lazyvim_json or vim.fn.stdpath("config") .. "/lazyvim.json",
data = {
version = nil, ---@type string?
news = {}, ---@type table<string, string>
@ -141,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

@ -75,6 +75,10 @@ map("n", "<leader>K", "<cmd>norm! K<cr>", { desc = "Keywordprg" })
map("v", "<", "<gv")
map("v", ">", ">gv")
-- commenting
map("n", "gco", "o<esc>Vcx<esc><cmd>normal gcc<cr>fxa<bs>", { desc = "Add Comment Below" })
map("n", "gcO", "O<esc>Vcx<esc><cmd>normal gcc<cr>fxa<bs>", { desc = "Add Comment Above" })
-- lazy
map("n", "<leader>l", "<cmd>Lazy<cr>", { desc = "Lazy" })
@ -130,12 +134,20 @@ map("n", "<leader>ub", function() LazyVim.toggle("background", false, {"light",
map("n", "<leader>gg", function() LazyVim.lazygit( { cwd = LazyVim.root.git() }) end, { desc = "Lazygit (Root Dir)" })
map("n", "<leader>gG", function() LazyVim.lazygit() end, { desc = "Lazygit (cwd)" })
map("n", "<leader>gb", LazyVim.lazygit.blame_line, { desc = "Git Blame Line" })
map("n", "<leader>gB", LazyVim.lazygit.browse, { desc = "Git Browse" })
map("n", "<leader>gf", function()
local git_path = vim.api.nvim_buf_get_name(0)
LazyVim.lazygit({args = { "-f", vim.trim(git_path) }})
end, { desc = "Lazygit Current File History" })
map("n", "<leader>gl", function()
LazyVim.lazygit({ args = { "log" }, cwd = LazyVim.root.git() })
end, { desc = "Lazygit Log" })
map("n", "<leader>gL", function()
LazyVim.lazygit({ args = { "log" } })
end, { desc = "Lazygit Log (cwd)" })
-- quit
map("n", "<leader>qq", "<cmd>qa<cr>", { desc = "Quit All" })
@ -169,9 +181,11 @@ map("n", "<leader>w-", "<C-W>s", { desc = "Split Window Below", remap = true })
map("n", "<leader>w|", "<C-W>v", { desc = "Split Window Right", remap = true })
map("n", "<leader>-", "<C-W>s", { desc = "Split Window Below", remap = true })
map("n", "<leader>|", "<C-W>v", { desc = "Split Window Right", remap = true })
map("n", "<leader>wm", function() LazyVim.toggle.maximize() end, { desc = "Maximize Toggle" })
-- tabs
map("n", "<leader><tab>l", "<cmd>tablast<cr>", { desc = "Last Tab" })
map("n", "<leader><tab>o", "<cmd>tabonly<cr>", { desc = "Close Other Tabs" })
map("n", "<leader><tab>f", "<cmd>tabfirst<cr>", { desc = "First Tab" })
map("n", "<leader><tab><tab>", "<cmd>tabnew<cr>", { desc = "New Tab" })
map("n", "<leader><tab>]", "<cmd>tabnext<cr>", { desc = "Next Tab" })

View File

@ -5,6 +5,12 @@ vim.g.maplocalleader = "\\"
-- LazyVim auto format
vim.g.autoformat = true
-- LazyVim picker to use.
-- Can be one of: telescope, fzf
-- Leave it to "auto" to automatically use the picker
-- enabled with `:LazyExtras`
vim.g.lazyvim_picker = "auto"
-- LazyVim root dir detection
-- Each entry can be:
-- * the name of a detector function like `lsp` or `cwd`
@ -19,6 +25,12 @@ vim.g.root_spec = { "lsp", { ".git", "lua" }, "cwd" }
-- Set to false to disable.
vim.g.lazygit_config = true
-- Options for the LazyVim statuscolumn
vim.g.lazyvim_statuscolumn = {
folds_open = false, -- show fold sign when fold is open
folds_githl = false, -- highlight fold sign with git sign color
}
-- Optionally setup the terminal to use
-- This sets `vim.o.shell` and does some additional configuration for:
-- * pwsh
@ -28,6 +40,15 @@ vim.g.lazygit_config = true
-- 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
local opt = vim.opt
opt.autowrite = true -- Enable auto write
@ -55,6 +76,7 @@ opt.grepprg = "rg --vimgrep"
opt.ignorecase = true -- Ignore case
opt.inccommand = "nosplit" -- preview incremental substitute
opt.laststatus = 3 -- global statusline
opt.linebreak = true -- Wrap lines at convenient points
opt.list = true -- Show some invisible characters (tabs...
opt.mouse = "a" -- Enable mouse mode
opt.number = true -- Print line number
@ -72,6 +94,7 @@ opt.signcolumn = "yes" -- Always show the signcolumn, otherwise it would shift t
opt.smartcase = true -- Don't ignore case with capitals
opt.smartindent = true -- Insert indents automatically
opt.spelllang = { "en" }
opt.spelloptions:append("noplainbuffer")
opt.splitbelow = true -- Put new windows below current
opt.splitkeep = "screen"
opt.splitright = true -- Put new windows right of current

View File

@ -19,24 +19,23 @@ return {
-- auto_brackets = { "python" }
-- }
-- ```
opts = function()
vim.api.nvim_set_hl(0, "CmpGhostText", { link = "Comment", default = true })
local cmp = require("cmp")
local defaults = require("cmp.config.default")()
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()
@ -50,11 +49,14 @@ 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
if entry.context.filetype == "rust" then
item.menu = nil
end
return item
end,
},
@ -66,71 +68,68 @@ 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 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
vim.fn.has("nvim-0.10") == 1
and {
"nvim-cmp",
dependencies = {
{ "rafamadriz/friendly-snippets" },
{ "garymjr/nvim-snippets", opts = { friendly_snippets = true } },
{
"nvim-cmp",
dependencies = {
{
"garymjr/nvim-snippets",
opts = {
friendly_snippets = true,
},
opts = function(_, opts)
opts.snippet = {
expand = function(item)
return LazyVim.cmp.expand(item.body)
end,
}
table.insert(opts.sources, { name = "snippets" })
dependencies = { "rafamadriz/friendly-snippets" },
},
},
opts = function(_, opts)
opts.snippet = {
expand = function(item)
return LazyVim.cmp.expand(item.body)
end,
keys = {
{
"<Tab>",
function()
return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>"
end,
expr = true,
silent = true,
mode = { "i", "s" },
},
{
"<S-Tab>",
function()
return vim.snippet.active({ direction = -1 }) and "<cmd>lua vim.snippet.jump(-1)<cr>" or "<Tab>"
end,
expr = true,
silent = true,
mode = { "i", "s" },
},
},
}
or { import = "lazyvim.plugins.extras.coding.luasnip", enabled = vim.fn.has("nvim-0.10") == 0 },
if LazyVim.has("nvim-snippets") then
table.insert(opts.sources, { name = "snippets" })
end
end,
keys = {
{
"<Tab>",
function()
return vim.snippet.active({ direction = 1 }) and "<cmd>lua vim.snippet.jump(1)<cr>" or "<Tab>"
end,
expr = true,
silent = true,
mode = { "i", "s" },
},
{
"<S-Tab>",
function()
return vim.snippet.active({ direction = -1 }) and "<cmd>lua vim.snippet.jump(-1)<cr>" or "<S-Tab>"
end,
expr = true,
silent = true,
mode = { "i", "s" },
},
},
},
-- auto pairs
{
"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 = {
{
@ -146,30 +145,16 @@ return {
desc = "Toggle Auto Pairs",
},
},
config = function(_, opts)
LazyVim.mini.pairs(opts)
end,
},
-- comments
{
"JoosepAlviste/nvim-ts-context-commentstring",
lazy = true,
opts = {
enable_autocmd = false,
},
init = function()
if vim.fn.has("nvim-0.10") == 1 then
vim.schedule(function()
local get_option = vim.filetype.get_option
vim.filetype.get_option = function(filetype, option)
return option == "commentstring" and require("ts_context_commentstring.internal").calculate_commentstring()
or get_option(filetype, option)
end
end)
end
end,
},
{
import = "lazyvim.plugins.extras.coding.mini-comment",
enabled = vim.fn.has("nvim-0.10") == 0,
"folke/ts-comments.nvim",
event = "VeryLazy",
opts = {},
},
-- Better text-objects
@ -204,4 +189,26 @@ return {
}
end,
},
{
"folke/lazydev.nvim",
ft = "lua",
cmd = "LazyDev",
opts = {
library = {
{ path = "luvit-meta/library", words = { "vim%.uv" } },
{ path = "LazyVim", words = { "LazyVim" } },
{ path = "lazy.nvim", words = { "LazyVim" } },
},
},
},
-- Manage libuv types with lazy. Plugin will never be loaded
{ "Bilal2453/luvit-meta", lazy = true },
-- Add lazydev source to cmp
{
"hrsh7th/nvim-cmp",
opts = function(_, opts)
table.insert(opts.sources, { name = "lazydev", group_index = 0 })
end,
},
}

View File

@ -0,0 +1,38 @@
-- Compatibility with Neovim 0.9
return {
-- Use LuaSnip instead of native snippets
{ "garymjr/nvim-snippets", enabled = false },
{ import = "lazyvim.plugins.extras.coding.luasnip" },
-- Use mini.comment instead of ts-comments
{ "folke/ts-comments.nvim", enabled = false },
{ import = "lazyvim.plugins.extras.coding.mini-comment" },
-- Use neodev-types with lazydev
{ "folke/neodev.nvim", config = function() end },
{
"folke/lazydev.nvim",
opts = function(_, opts)
opts.library = opts.library or {}
table.insert(opts.library, { "neodev.nvim/types/stable" })
end,
config = function(_, opts)
-- force lazydev to load on Neovim 0.9
require("lazydev.config").have_0_10 = true
require("lazydev").setup(opts)
end,
},
{
"neovim/nvim-lspconfig",
dependencies = {},
},
-- dummy import to save core imports
{
import = "foobar",
enabled = function()
LazyVim.plugin.save_core()
return false
end,
},
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,104 @@
local M = {}
---@param kind string
function M.pick(kind)
return function()
local actions = require("CopilotChat.actions")
local items = actions[kind .. "_actions"]()
if not items then
LazyVim.warn("No " .. kind .. " found on the current line")
return
end
local ok = pcall(require, "fzf-lua")
require("CopilotChat.integrations." .. (ok and "fzflua" or "telescope")).pick(items)
end
end
return {
{
"CopilotC-Nvim/CopilotChat.nvim",
branch = "canary",
cmd = "CopilotChat",
opts = function()
local user = vim.env.USER or "User"
user = user:sub(1, 1):upper() .. user:sub(2)
return {
model = "gpt-4",
auto_insert_mode = true,
show_help = true,
question_header = "" .. user .. " ",
answer_header = " Copilot ",
window = {
width = 0.4,
},
selection = function(source)
local select = require("CopilotChat.select")
return select.visual(source) or select.buffer(source)
end,
}
end,
keys = {
{ "<c-s>", "<CR>", ft = "copilot-chat", desc = "Submit Prompt", remap = true },
{ "<leader>a", "", desc = "+ai", mode = { "n", "v" } },
{
"<leader>aa",
function()
return require("CopilotChat").toggle()
end,
desc = "Toggle (CopilotChat)",
mode = { "n", "v" },
},
{
"<leader>ax",
function()
return require("CopilotChat").reset()
end,
desc = "Clear (CopilotChat)",
mode = { "n", "v" },
},
{
"<leader>aq",
function()
local input = vim.fn.input("Quick Chat: ")
if input ~= "" then
require("CopilotChat").ask(input)
end
end,
desc = "Quick Chat (CopilotChat)",
mode = { "n", "v" },
},
-- Show help actions with telescope
{ "<leader>ad", M.pick("help"), desc = "Diagnostic Help (CopilotChat)", mode = { "n", "v" } },
-- Show prompts actions with telescope
{ "<leader>ap", M.pick("prompt"), desc = "Prompt Actions (CopilotChat)", mode = { "n", "v" } },
},
config = function(_, opts)
local chat = require("CopilotChat")
require("CopilotChat.integrations.cmp").setup()
vim.api.nvim_create_autocmd("BufEnter", {
pattern = "copilot-chat",
callback = function()
vim.opt_local.relativenumber = false
vim.opt_local.number = false
end,
})
chat.setup(opts)
end,
},
-- Edgy integration
{
"folke/edgy.nvim",
optional = true,
opts = function(_, opts)
opts.right = opts.right or {}
table.insert(opts.right, {
ft = "copilot-chat",
title = "Copilot Chat",
size = { width = 50 },
})
end,
},
}

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,
@ -66,10 +66,8 @@ return {
-- attach cmp source whenever copilot attaches
-- fixes lazy-loading issues with the copilot cmp source
LazyVim.lsp.on_attach(function(client)
if client.name == "copilot" then
copilot_cmp._on_insert_enter({})
end
end)
copilot_cmp._on_insert_enter({})
end, "copilot")
end,
},
},

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