Skip to content

Commit

Permalink
only use javascript-typescript-langserver for javascript, react, type…
Browse files Browse the repository at this point in the history
…script

layer, and purge other langservers
  • Loading branch information
ztlevi authored and sdwolfz committed Aug 2, 2018
1 parent faa33e9 commit cffd900
Show file tree
Hide file tree
Showing 8 changed files with 21 additions and 27 deletions.
8 changes: 3 additions & 5 deletions layers/+frameworks/react/funcs.el
Original file line number Diff line number Diff line change
Expand Up @@ -29,23 +29,21 @@
"Setup lsp backend."
(if (configuration-layer/layer-used-p 'lsp)
(progn
(lsp-javascript-typescript-enable)
(lsp-javascript-flow-enable)
(spacemacs//setup-lsp-jump-handler 'rjsx-mode))
(lsp-javascript-typescript-enable))
(message "`lsp' layer is not installed, please add `lsp' layer to your dotfile.")))

(defun spacemacs//react-setup-lsp-company ()
"Setup lsp auto-completion."
(if (configuration-layer/layer-used-p 'lsp)
(progn
(fix-lsp-company-prefix)
(spacemacs|add-company-backends
:backends company-lsp
:modes rjsx-mode
:variables company-minimum-prefix-length 2
:append-hooks nil
:call-hooks t)
(company-mode))
(company-mode)
(fix-lsp-company-prefix))
(message "`lsp' layer is not installed, please add `lsp' layer to your dotfile.")))


Expand Down
4 changes: 4 additions & 0 deletions layers/+frameworks/react/packages.el
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,7 @@
evil-matchit
flycheck
js-doc
lsp-javascript-typescript
rjsx-mode
smartparens
tern
Expand Down Expand Up @@ -50,6 +51,9 @@
(add-hook 'rjsx-mode-hook 'spacemacs/js-doc-require)
(spacemacs/js-doc-set-key-bindings 'rjsx-mode))

(defun react/post-init-lsp-javascript-typescript ()
(spacemacs//setup-lsp-jump-handler 'rjsx-mode))

(defun react/init-rjsx-mode ()
(use-package rjsx-mode
:defer t
Expand Down
2 changes: 1 addition & 1 deletion layers/+lang/javascript/README.org
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ See [[file:../../+tools/tern/README.org][tern layer]] documentation.
You just have to install javascript and typescript language server packages:

#+begin_src sh
npm i -g typescript javascript-typescript-langserver flow-language-server
npm i -g typescript javascript-typescript-langserver
#+end_src

* Configuration
Expand Down
8 changes: 3 additions & 5 deletions layers/+lang/javascript/funcs.el
Original file line number Diff line number Diff line change
Expand Up @@ -31,23 +31,21 @@
"Setup lsp backend."
(if (configuration-layer/layer-used-p 'lsp)
(progn
(spacemacs//setup-lsp-jump-handler 'js2-mode)
(lsp-javascript-typescript-enable)
(lsp-javascript-flow-enable))
(lsp-javascript-typescript-enable))
(message (concat "`lsp' layer is not installed, "
"please add `lsp' layer to your dotfile."))))

(defun spacemacs//javascript-setup-lsp-company ()
"Setup lsp auto-completion."
(if (configuration-layer/layer-used-p 'lsp)
(progn
(fix-lsp-company-prefix)
(spacemacs|add-company-backends
:backends company-lsp
:modes js2-mode
:append-hooks nil
:call-hooks t)
(company-mode))
(company-mode)
(fix-lsp-company-prefix))
(message (concat "`lsp' layer is not installed, "
"please add `lsp' layer to your dotfile."))))

Expand Down
11 changes: 3 additions & 8 deletions layers/+lang/javascript/packages.el
Original file line number Diff line number Diff line change
Expand Up @@ -24,10 +24,7 @@
js2-mode
js2-refactor
livid-mode
(lsp-javascript-typescript
:requires lsp-mode
:location (recipe :fetcher github
:repo "emacs-lsp/lsp-javascript"))
(lsp-javascript-typescript :requires lsp-mode)
org
skewer-mode
tern
Expand Down Expand Up @@ -78,8 +75,7 @@
:mode "\\.m?js\\'"
:init
(progn
(add-hook 'js2-mode-local-vars-hook
#'spacemacs//javascript-setup-backend)
(add-hook 'js2-mode-local-vars-hook #'spacemacs//javascript-setup-backend)
;; safe values for backend to be used in directory file variables
(dolist (value '(lsp tern))
(add-to-list 'safe-local-variable-values
Expand Down Expand Up @@ -171,8 +167,7 @@
(use-package lsp-javascript-typescript
:commands lsp-javascript-typescript-enable
:defer t
:init (add-hook 'js2-mode-hook 'lsp-mode)
:config (require 'lsp-javascript-flow)))
:config (spacemacs//setup-lsp-jump-handler 'js2-mode)))

(defun javascript/init-skewer-mode ()
(use-package skewer-mode
Expand Down
6 changes: 2 additions & 4 deletions layers/+lang/typescript/funcs.el
Original file line number Diff line number Diff line change
Expand Up @@ -66,8 +66,6 @@
"Setup lsp backend."
(if (configuration-layer/layer-used-p 'lsp)
(progn
(spacemacs//setup-lsp-jump-handler 'typescript-mode
'typescript-tsx-mode)
(lsp-javascript-typescript-enable))
(message (concat "`lsp' layer is not installed, "
"please add `lsp' layer to your dotfile."))))
Expand All @@ -76,14 +74,14 @@
"Setup lsp auto-completion."
(if (configuration-layer/layer-used-p 'lsp)
(progn
(fix-lsp-company-prefix)
(spacemacs|add-company-backends
:backends company-lsp
:modes typescript-mode typescript-tsx-mode
:variables company-minimum-prefix-length 2
:append-hooks nil
:call-hooks t)
(company-mode))
(company-mode)
(fix-lsp-company-prefix))
(message (concat "`lsp' layer is not installed, "
"please add `lsp' layer to your dotfile."))))

Expand Down
7 changes: 4 additions & 3 deletions layers/+lang/typescript/packages.el
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
company
eldoc
flycheck
lsp-mode
lsp-javascript-typescript
smartparens
tide
typescript-mode
Expand Down Expand Up @@ -45,8 +45,9 @@
(flycheck-add-mode 'typescript-tide 'typescript-tsx-mode)
(flycheck-add-mode 'typescript-tslint 'typescript-tsx-mode))))

(defun typescript/post-init-lsp-mode ()
(add-hook 'typescript-mode-hook 'lsp-mode))
(defun typescript/post-init-lsp-javascript-typescript ()
(spacemacs//setup-lsp-jump-handler 'typescript-mode
'typescript-tsx-mode))

(defun typescript/post-init-smartparens ()
(if dotspacemacs-smartparens-strict-mode
Expand Down
2 changes: 1 addition & 1 deletion layers/+tools/lsp/funcs.el
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@
"Set jump handler for LSP with the given MODE."
(dolist (m modes)
(add-to-list (intern (format "spacemacs-jump-handlers-%S" m))
'(lsp-ui-peek-find-definitions))))
#'lsp-ui-peek-find-definitions)))

(defun fix-lsp-company-prefix ()
"fix lsp-javascript company prefix
Expand Down

0 comments on commit cffd900

Please sign in to comment.