Commit graph

16 commits

Author SHA1 Message Date
Henrik Lissner
aa54383b5d
refactor: deprecate doom-etc-dir for doom-data-dir
doom-etc-dir will be renamed to doom-data-dir, to better reflect its
purpose, and align it with XDG_DATA_HOME (where it will be moved to in
v3, where Doom will begin to obey XDG directory conventions more
closely).
2022-08-14 20:43:35 +02:00
Henrik Lissner
ad6a3d0f33
refactor: deprecate featurep! for modulep!
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.
2022-08-14 20:43:35 +02:00
Henrik Lissner
c06040338a
fix(lsp,tree-sitter): void-function lsp!/tree-sitter! errors
These are autodefs, meaning they should be defined whether or not the
containing module is enabled, but they should no-op when it's disabled,
by defining a no-op macro with the same name. However, lsp! and
tree-sitter! are meant to be used as hooks, and you can't use macros as
hooks, so you get void-function errors when they are used as such.

This ensures they are properly defined as no-op functions in those
cases. I.e.

  ;;;###autodef FORM

FORM is used instead of a no-op macro if the parent module is disabled.
2022-06-22 20:35:52 +02:00
Henrik Lissner
659b0ebc1b fix(lsp): lsp--matching-clients? -> lsp--supports-buffer?
Ref: #5933
Amend: 0cb8d1416f
Co-authored-by: Samuel Tschiedel <mukaobr@gmail.com>
2022-01-03 18:02:29 +01:00
Robin Bourianes
d4c5e025de fix(lsp): alias flymake--diag-buffer to flymake--diag-locus
To accommodate breaking API changes in Flymake in newer versions of
Emacs 28.

Fix: #5644
Ref: emacs-mirror/emacs@4633e02726
2021-11-19 23:45:00 +01:00
Lordie
22e6912846
show all available lsp servers when switching (#5191)
* show all available lsp servers

show all available lsp servers instead of only high priority ones

* fixes +lsp/switch-client priority reset

now waits for lsp to initialize before restoring the default client priority
2021-07-24 18:28:07 -04:00
Henrik Lissner
9da4ac05ad Fix #4894: +lookup/references not following references 2021-06-04 01:30:34 -04:00
Gerry Agbobada
813dc6e664
fix(:tools lsp): make eglot diags use flycheck with :checkers syntax
Research on how Flycheck work, and a pending fix from Eglot, allowed to
get a cleaner representation of how this "hack" works and make it more
resilient

Co-Authored-By: Steve Purcell <steve@sanityinc.com>
2021-04-14 09:09:37 +02:00
Henrik Lissner
d4eb7e31ac Fix #4771: give lsp-find-* precedence over fallbacks
LSP lookup handlers should have the highest precedence, but this wasn't
the case due to a regression in 430d628.
2021-03-27 21:45:19 -04:00
Gerry Agbobada
01f54d2950
Add comment for further maintenance 2021-01-19 18:52:11 +01:00
Henrik Lissner
ffb21b18e5
tools/lsp: minor refactor & doc revision 2020-08-22 15:34:52 -04:00
Henrik Lissner
9e9b95f49c
Fix #3789: fix eglot lookup-documentation handler
Eglot replaced `eglot-help-at-point' in joaotavora/eglot@a044dec,
breaking our documentation lookup handler.
2020-08-20 14:07:47 -04:00
Henrik Lissner
7784c0b6e9
No-op (lsp) if already enabled #3390
`lsp-deferred` calls `lsp` and `lsp` seems to do something expensive
whether or not lsp-mode is already active. Over TRAMP, this is much too
expensive, so we no-op lsp-deferred if lsp-mode is already active.
2020-08-02 16:27:09 -04:00
Gerry Agbobada
f9d30cbf90
Wrap 'eglot-server-programs usage in after! eglot 2020-05-28 11:49:53 +02:00
Gerry Agbobada
718d9a2690
[review] Changes 2020-05-28 11:17:55 +02:00
Gerry Agbobada
3e5b7cce3f
[eglot] Add support for eglot lsp client in emacs
- Update README
- Add eglot-specifics to cc, rs, py, hs
  removing unused lsp-mode packages when eglot is active
- Add eglot-specific bindings
- Add doctor warnings for debugger +lsp and +peek
- Add eglot-backed lookup-handlers
- Add flycheck checker using eglot for :checkers
  syntax users (using flycheck/flycheck#1676 and
  flycheck/flycheck#1592 discussion).
  This implementation is based on @marsam code, and uses recent
  Flycheck development in order to make the code smaller and
  easier to maintain.
2020-05-28 09:34:10 +02:00