Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Optional installation of more tools #541

Open
1 task done
LilleAila opened this issue Jan 9, 2025 · 1 comment
Open
1 task done

Optional installation of more tools #541

LilleAila opened this issue Jan 9, 2025 · 1 comment
Assignees
Labels
enhancement New feature or request TBD More discussion and research is in order

Comments

@LilleAila
Copy link
Contributor

LilleAila commented Jan 9, 2025

⚠️ Please verify that this feature request has NOT been suggested before.

  • I checked and didn't find a similar feature request

🏷️ Feature Type

API Additions

🔖 Feature description

It would be useful to have a global option to decide whether to install extra dependencies such as LSPs or not. #134 does this for individual LSPs, but it would be good to have similar options for formatters and debuggers.

✔️ Solution

Adding options under vim.languages to choose whether or not to install the various packages.

vim.languages = {
  enableLSP = true;
  installLSP = false;
  enableFormat = true;
  installFormat = false;
  enableExtraDiagnostics = true;
  installExtraDiagnostics = true;
  enableDAP = true;
  installDAP = true;
};

These options could do something like just ignoring all package = definitions under languages.

❓ Alternatives

It would be possible to manually write all the commands for the LSPs, but that wouldn't be as easy as using the defaults but not installing the dependencies.

📝 Additional Context

This would be useful for using devshells to locally install development tools, rather than installing them globally. It would also help in keeping the size of the config smaller, to reduce the time required to build it.

@NotAShelf
Copy link
Owner

A bit unsure if this is the way to go.

Lately I have been looking to get rid of top-level toggles due to how confusing they are. The priority in the module system becomes ambigious, and sometimes users face unexpected behaviour. Though we do intend to rework all language modules (+ diagnostics) sometime soon, I'll try to see if there is a logical "compromise" between the two.

@NotAShelf NotAShelf self-assigned this Jan 9, 2025
@NotAShelf NotAShelf added enhancement New feature or request TBD More discussion and research is in order labels Jan 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request TBD More discussion and research is in order
Projects
None yet
Development

No branches or pull requests

2 participants