Use tide instead of LSP mode
LSP turns out to be very slow with files larger than 100 lines (sic) Also, disable cursor blinking.
This commit is contained in:
parent
3c0c4a26e9
commit
bd480d3c12
4 changed files with 34 additions and 13 deletions
|
|
@ -2,6 +2,11 @@
|
|||
:requires (web-mode company-web lsp)
|
||||
:ensure t)
|
||||
|
||||
(use-package tide
|
||||
:ensure t
|
||||
:after (company flycheck)
|
||||
:hook ((before-save . tide-format-before-save)))
|
||||
|
||||
;; Use js2-mode for javascript editing
|
||||
(add-to-list 'auto-mode-alist '("\\.js\\'" . js2-mode))
|
||||
(add-to-list 'auto-mode-alist '("\\.json\\'" . js2-mode))
|
||||
|
|
@ -9,17 +14,22 @@
|
|||
;; Use js2-mode for typescript editing
|
||||
(add-to-list 'auto-mode-alist '("\\.ts\\'" . js2-mode))
|
||||
|
||||
;; Language Server Protocol is used for completion
|
||||
(add-hook 'js2-mode-hook 'lsp)
|
||||
|
||||
(defun activate-js2-mode ()
|
||||
"JS2 mode overrides."
|
||||
(tide-setup)
|
||||
(set-indent 2)
|
||||
(column-enforce-n 80)
|
||||
(setq-local js2-basic-offset 2)
|
||||
(setq-local js2-strict-missing-semi-warning nil)
|
||||
(setq js2-mode-show-parse-errors nil)
|
||||
(setq js2-mode-show-strict-warnings nil)
|
||||
(tide-hl-identifier-mode +1)
|
||||
|
||||
(flycheck-add-next-checker 'javascript-standard 'javascript-tide 'append)
|
||||
(setq-local flycheck-check-syntax-automatically '(save mode-enabled))
|
||||
|
||||
;; "Company list override."
|
||||
(add-to-list (make-local-variable 'company-backends)
|
||||
'(company-yasnippet company-lsp)))
|
||||
'(company-yasnippet company-tide)))
|
||||
|
||||
(add-hook 'js2-mode-hook 'activate-js2-mode)
|
||||
|
|
|
|||
|
|
@ -13,6 +13,9 @@
|
|||
;; React Typescript
|
||||
(add-to-list 'auto-mode-alist '("\\.tsx\\'" . web-mode))
|
||||
|
||||
;; Plain React
|
||||
(add-to-list 'auto-mode-alist '("\\.jsx\\'" . web-mode))
|
||||
|
||||
(setq web-mode-extra-auto-pairs
|
||||
'(("eex" . (("<%" "%>")))
|
||||
("erb" . (("<%" "%>")
|
||||
|
|
@ -24,10 +27,13 @@
|
|||
(setq web-mode-script-padding 2)
|
||||
(setq web-mode-code-indent-offset 2)
|
||||
|
||||
(add-to-list (make-local-variable 'company-backends)
|
||||
'(company-yasnippet company-lsp))
|
||||
(flycheck-add-next-checker 'javascript-standard 'javascript-tide 'append)
|
||||
(setq-local flycheck-check-syntax-automatically '(save mode-enabled))
|
||||
|
||||
(when (string-match-p "vue" (buffer-file-name))
|
||||
(lsp)))
|
||||
(add-to-list (make-local-variable 'company-backends)
|
||||
'(company-yasnippet company-tide))
|
||||
|
||||
(when (string-match-p "jsx" (buffer-file-name))
|
||||
(tide-setup)))
|
||||
|
||||
(add-hook 'web-mode-hook 'activate-web-mode)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue