Commit graph

238 commits

Author SHA1 Message Date
Arthur
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
Slava Markevich
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
Folke Lemaitre
351336244c
perf(markdown): add filetype in VeryLazy 2024-06-24 22:11:59 +02:00
Sandeep Dilip
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
Folke Lemaitre
abec8fbb03
fix(markdown): added support for mdx files 2024-06-23 08:56:15 +02:00
Fredrik Averpil
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
Adam K
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
Ahmed Kamal
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
dbger
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
Tony Messias
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
Folke Lemaitre
e0e1ab01af
fix(dap): make sure mason-dap is loaded after initializing dap. See #3663 2024-06-15 10:19:48 +02:00
Ahmed Kamal
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
Iordanis Petkakis
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
xiaojianzheng
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
Folke Lemaitre
74c1766479
fix(python): only enable venv-selector when telescope is availble. See #3612 2024-06-13 17:02:30 +02:00
Folke Lemaitre
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
Folke Lemaitre
a3547e4b3b
revert: "fix(dap): set host to 127.0.0.1 instead of localhost to prevent issues with ipv6. Fixes #3577"
This reverts commit 9b8a393edc.
2024-06-11 19:14:27 +02:00
Folke Lemaitre
bd29f45153
fix(sql): make sure edgebars exist. Fixes #3578 2024-06-11 09:10:10 +02:00
Folke Lemaitre
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
Folke Lemaitre
7d30360df2
refactor: config = true >> opts = {} 2024-06-11 00:06:56 +02:00
Muneeb Usmani
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
Micah Halter
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
Folke Lemaitre
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
DrummyFloyd
02dd65cdea
fix(helm): missing dependency (#3546)
according to this comment
ab41ff551b (r142924660)
2024-06-09 07:33:59 +02:00
Mykhailo Sabatura
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
Folke Lemaitre
8f7ee56dab
refactor: LazyVim.lsp.on_attach 2024-06-08 08:11:30 +02:00
Folke Lemaitre
d90930b13e
fix(typescript): implemented move to new file. Fixes #3534 2024-06-08 07:30:49 +02:00
Folke Lemaitre
cfa8c9fbd4
fix(clojure): removed rainbow delimiters and fixed some plugin setups. Closes #3530 2024-06-07 23:10:40 +02:00
Folke Lemaitre
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
Folke Lemaitre
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
antónio mora
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
Folke Lemaitre
ab41ff551b
refactor: use lazy's new opts_extend functionality for treesitter and mason 2024-06-07 09:03:59 +02:00
Igor Guerrero
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
DrummyFloyd
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
Iordanis Petkakis
3654098520
fix(php): php gets recommended in every .git repo (#3496) 2024-06-06 16:07:39 +02:00
Andrea C from The App
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
hacktivista
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
Jiri Luzny
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
Mykhailo Sabatura
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
Folke Lemaitre
88db9c5192
fix(git): added recommended 2024-06-06 12:29:53 +02:00
Folke Lemaitre
91a5fc10e6
feat(extras): added new git extra with treesitter and issue/pr support 2024-06-06 12:24:00 +02:00
Folke Lemaitre
2bbc7e179d
Revert "fix(angular): treesitter not enabled for angular templates (#3469)"
This reverts commit 24af74eed6.
2024-06-06 10:54:43 +02:00
Arthur
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="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
Folke Lemaitre
8010f50aa5
fix(which-key): use new which-key support for native group keymaps (nop) 2024-06-06 10:46:56 +02:00
Mykhailo Sabatura
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
Izel Nakri | izelnakri.eth
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
Binh Tran
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
Folke Lemaitre
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