Commit graph

22 commits

Author SHA1 Message Date
Ivan Yonchovski 06cf8e3842 lsp layer must depend on yasnippet
- if this line is missing yasnippets might not be loaded because lsp-mode might
load the snippets before the auto-completion layer kick in.
2019-11-02 13:39:48 +01:00
Steven Allen c0763a3240 lsp: avoid pulling in treemacs/helm when their respective layers aren't enabled 2019-07-21 17:59:41 +02:00
Seong Yong-ju b74d6a9b66 Show *lsp-help* in a popup window using popwin 2019-07-14 22:19:52 +02:00
Ivan Yonchovski 5e256d2506 [lsp] Sync lsp layer with latest lsp mode functionality
- provide keybindings for the new lsp-mode functionality
 - use lsp-treemacs and helm-lsp for errors and workspace symbols
2019-04-15 22:01:57 +02:00
Juuso Valkeejärvi c175e96d85 [lsp] Add lsp-prefer-flymake variable 2019-04-05 19:50:26 +02:00
cormacc c375bc428f Flattened some cquery/ccls configuration
c-c++-lsp-initialization-options:
-> ccls-initialization-options
-> cquery-extra-init-params (cacheFormat set to "msgpack" by default)

c-c++-lsp-args:
-> ccls-args
-> cquery-extra-args

c-c++-lsp-cache-dir:
-> ccls: Appended to initialization-options
-> cquery-cache-dir

<<Amendment 1 21/12/18>>
Removing 'clangd' from list of lsp clients to squash per-file prompt for
language client.
Updated lsp/packages.el to reflect upstream lsp-mode function name changes.
Python layer -- added if guards to prevent anaconda package loading / keyboard
shortcut config when lsp backend selected.
2018-12-22 12:51:17 +02:00
Ivan Yonchovski f346ae0683 Fix java/python/javascript/rust lsp backends 2018-12-22 12:51:05 +02:00
cormacc aacf2a4cc1 Created core lsp minor mode keybindings
Replaced opt-in use of `spacemacs/lsp-bind-keys-for-mode` function with
keybindings for the lsp minor  mode, which should be enabled for all derived
layers.

<<Amendment 1 26/11/2018>>
Added call to (spacemacs//setup-lsp-jump-handler) to lsp-after-open-hook

<<Amendment 2 04/12/2018>>
Migrated to new lsp-mode package API.
Updated c-c++ layer accordingly.

<<Amendment 3 05/12/2018>>
Incorporated PR feedback / corrections from gessen

<<Amendment 4 05/12/2018>>
Incorporated further feedback / corrections from gessen
2018-12-22 12:50:21 +02:00
cormacc 18eacf48a2 Configure preference for lsp-ui-peek or xref/lsp navigation
<<Amendment 1 21/09/18>>
Added functions to facilitate keybindings in derived layers consistent
with navigation style preference.

<<Amendment 2 24/09/18>>
Incorporated feedback from yyoncho
Corrected error in peek binding extension definition

<<Amendment 3 24/09/18>>
Moved 'heirarchy' prefix/keybindings from 'SPC m h' to 'SPC m <g/p> h' for
consistency with navigation style preference selections.
Added 'members' prefix under 'SPC m <g/p> m'
Moved 'lsp-ui-imenu' from 'SPC m g m' to 'SPC m g M'

<<Amendment 4 20/10/18>>
Rebased. Updated README formatting for consistency with norms.

<<Amendment 5 25/10/18>>
Rebased. Moved 'peek' keybindings from 'SPC m p' to 'SPC m G'

<<Amendment 6 01/11/18>>
Reased. Updated for compatibility with upstream changes in lsp-ui.

<<Amendment 7 02/11/18>>
Corrected oversight -- was still binding some peek funcs under 'p'
rather than 'G'. Moved backend keybindings to 'b' (for backend)
rather than 'l' (for lsp)

<<Amendment 8 06/11/18>>
Documentation corrections -- based on feedback from sdwolfz
2018-11-06 22:18:43 +00:00
kyoncho 20c621c5ce Reenable lsp mode lighter
- The lsp modeline is used to provide information about the server status so it
should not be be hidden.
2018-10-24 23:15:58 +03:00
Fangrui Song 06d95490dc +tools/lsp: remove lsp-ui-peek-expand-by-default
lsp-ui has switched to (defcustom lsp-ui-peek-fontify 'on-demand ...) https://github.com/emacs-lsp/lsp-ui/pull/148 . This is no longer needed.
2018-09-03 20:16:46 +01:00
Cormac Cannon c122eb6a05 lsp-layer configuration and building blocks for derived layers.
See README.org for details

<<amendment 1>>
Updated some keybindings based on CONVENTIONS doc
Corrected file headers
Incorporated some immediate feedback from MaskRay

<<amendment 2>>
Corrected keybindings in README.org

<<amendment 3>>
Eliminated stray org-mode tag at table foot in README.org
Eliminated new 'l' prefix and moved bindings under 'g'

<<amendment 4>>
Updated defaults in config.el based on feedback from sebastiencs (lsp/lsp-ui dev)
- lsp-ui-sideline enabled by default
- lsp-ui-peek-expand-by-default disabled

<<amendment 5 09/04/18>>
Removed 'spacemacs/' prefix from lsp-format-buffer binding

<<amendment 6 09/04/18>>
Moved lsp-ui-peek bindings under j (jump)
Added goto bindings for new lsp-mode functions goto type definition and goto implementation

<<amendment 7 31/05/18>>
Corrected layer title in file headers
Rebased on dev tip (390462e)

<<amendment 8 03/07/18>>
Added keybindings for lsp-describe-thing-at-point,
lsp-workspace-restart, lsp-execute-code-action suggested by Yyoncho (LSP
Java)
Added avy keyboard navigation function provided by MaskRay
Reverted lsp-ui-peek to expand by default after an upstream change that
restricts expansion to current document, addressing the previous
performance issue.

<<amendment 9 04/07/18>>
Corrected keybinding for lsp-describe-thing-at-point

<<amendment 10 19/07/18>>
Rebound lsp-restart-workspace under mlq
Declared 'lsp' prefix (myrgy)
Added evil-set-command-property fix suggested by Yyoncho
Moved lsp-c-c++ layer from private branch to this PR after spending too
many hours of my life rebasing after circle CI picks up a formatting
error :)

<<amendment 11 25/07/18>>
Rebased
Bound cquery-freshen-index under lf
Bound cquery-preprocess-file under lp

<<amendment 12 01/08/18>>
Rebased
(c-c++ layer) moved semantic refactor refactor-at-point binding from mr
to mrp to prevent key binding error when semantic layer enabled

<<amendment 13 17/08/18>>
Added option to select ccls or cquery backend based on work by myrgy
Rebased on current upstream develop

<<amendment 14 20/08/18>>
Incorporated feedback from myrgy and maskray.
Corrected some duplication/inconsistencies.
Rebased.

<<amendment 15 21/08/18>>
Reduced duplication in backend config

<<amendment 16 22/08/18>>
Removed lsp-c-c++ layer example -- to be merged with c-c++ layer once
this PR is sorted

<<amendment 17 23/08/18>>
Added CHANGELOG.develop entry as per updated contribution guidelines.

<<amendment 18 24/08/18>>
Moved some keybindings as per feedback from sdwolfz
2018-08-23 23:02:52 +01:00
syl20bnr 49b1659a18 Lazy load lsp-mode 2018-06-11 00:28:11 -04:00
syl20bnr 699c1da30f Lazy load lsp-ui 2018-06-10 23:25:45 -04:00
syl20bnr ebe4c60264 Revert "Defer packages by default using use-package-always-defer"
This reverts commit 29c78ce841 and all other fixes
that have been made afterwards.

The motivation is that use-package is seen by many as a replacement for
`require`. Is use-package always defer the loading of packages then is breaks
this use case, this does not respect POLA so even if it was making Spacemacs
loading faster (up to 3s faster on some startup on my machine) we just cannot
use it, it would be irresponsible. Spacemacs should be easy to use, loading
performance will come with time but it is not a priority.
2018-03-03 23:40:10 -05:00
syl20bnr 29c78ce841 Defer packages by default using use-package-always-defer
Warning now `:defer t` is implied, to force a package to load `:demand t` is
now necessary.
2018-02-27 23:32:52 -05:00
syl20bnr 83a6778eab Lazy load diff-hl and move lsp-ui-mode hook 2018-02-27 23:32:52 -05:00
syl20bnr be6db59b4c lsp: create logical package flycheck-lsp 2018-02-18 22:56:41 -05:00
syl20bnr 1c49c7f361 lsp: hide lighter 2018-02-18 22:54:15 -05:00
syl20bnr ba66562967 lsp: add files header and rename lsp// functions
Prefer spacemacs// namespace for all spacemacs added functions.
2018-02-18 22:53:07 -05:00
syl20bnr 2a5670e8df lsp: move helm-xref and ivy-xref ownership to helm and ivy layers 2018-02-18 22:48:12 -05:00
Fangrui Song d99cb009c2 Add +tools/lsp layer for lsp-mode & lsp-ui
This is a starting point to bring LSP ecosystem into spacemacs.

Theme by 0bl.blwl
2018-02-17 20:17:14 -08:00