featurep! will be renamed modulep! in the future, so it's been
deprecated. They have identical interfaces, and can be replaced without
issue.
featurep! was never quite the right name for this macro. It implied that
it had some connection to featurep, which it doesn't (only that it was
similar in purpose; still, Doom modules are not features). To undo such
implications and be consistent with its namespace (and since we're
heading into a storm of breaking changes with the v3 release anyway),
now was the best opportunity to begin the transition.
* lang/julia: include lsp-julia w/o language server
Use nonrecursive clone to get lsp-julia without bundled
LanguageServer.jl (plus dependencies) and include instructions in the
README on how to install the language server (bundled or otherwise).
* lang/julia: add checks for julia +lsp in doctor
Add two checks, both only for when the +lsp feature is enabled:
- Check if (:tools lsp) is selected
- Check if LanguageServer.jl is installed
* lang/julia: indicate SymbolServer.jl as dependency
It is itself a dependency of LanguageServer.jl, but it's necessary to
add it separately in order to do `using SymbolServer`.
* tools/lsp: add julia language server to list
* lang/julia: add eglot support using eglot-jl
Forcing eglot-jl to not install its own LanguageServer.jl is a bit of a
hack though.
* lang/julia: make timeout increase buffer-local
Suggestion by @benneti to use `setq-local` instead of `setq` to prevent
a timeout increase in non-Julia eglot buffers.
* Fix issues
Co-authored-by: Henrik Lissner <henrik@lissner.net>