Merge lang/typescript into lang/javascript
This commit is contained in:
parent
c4396226dd
commit
e54c938023
3 changed files with 25 additions and 47 deletions
|
@ -37,15 +37,37 @@
|
||||||
:n "S" #'+javascript/skewer-this-buffer))
|
:n "S" #'+javascript/skewer-this-buffer))
|
||||||
|
|
||||||
|
|
||||||
|
(def-package! typescript-mode
|
||||||
|
:mode "\\.ts$"
|
||||||
|
:config
|
||||||
|
(add-hook 'typescript-mode-hook #'rainbow-delimiters-mode)
|
||||||
|
(set! :electric 'typescript-mode :chars '(?\} ?\)) :words '("||" "&&")))
|
||||||
|
|
||||||
|
|
||||||
(def-package! tide
|
(def-package! tide
|
||||||
:hook (js2-mode . tide-setup)
|
:hook (js2-mode . tide-setup)
|
||||||
|
:hook (typescript-mode . tide-setup)
|
||||||
|
:init
|
||||||
|
(defun +javascript|init-tide-in-web-mode ()
|
||||||
|
(when (string= (file-name-extension (or buffer-file-name "")) "tsx")
|
||||||
|
(tide-setup)))
|
||||||
|
(add-hook 'web-mode-hook #'+javascript|init-tide-in-web-mode)
|
||||||
:config
|
:config
|
||||||
(set! :company 'js2-mode 'company-tide)
|
(set! :company '(js2-mode typescript-mode) 'company-tide)
|
||||||
(set! :lookup 'js2-mode
|
(set! :lookup '(js2-mode typescript-mode)
|
||||||
:definition #'tide-jump-to-definition
|
:definition #'tide-jump-to-definition
|
||||||
:references #'tide-references
|
:references #'tide-references
|
||||||
:documentation #'tide-documentation-at-point)
|
:documentation #'tide-documentation-at-point)
|
||||||
(add-hook! 'tide-mode-hook #'(eldoc-mode tide-hl-identifier-mode)))
|
(add-hook! 'tide-mode-hook #'(eldoc-mode tide-hl-identifier-mode))
|
||||||
|
|
||||||
|
(def-menu! +javascript/refactor-menu
|
||||||
|
"TODO"
|
||||||
|
'(("rename symbol" :exec tide-rename-symbol)
|
||||||
|
("restart tide server" :exec tide-restart-server)))
|
||||||
|
|
||||||
|
(map! :map tide-mode-map
|
||||||
|
:localleader
|
||||||
|
:n "r" #'+javascript/refactor-menu))
|
||||||
|
|
||||||
|
|
||||||
;; A find-{definition,references} backend for js2-mode. NOTE The xref API is
|
;; A find-{definition,references} backend for js2-mode. NOTE The xref API is
|
||||||
|
|
|
@ -1,38 +0,0 @@
|
||||||
;;; lang/typescript/config.el -*- lexical-binding: t; -*-
|
|
||||||
|
|
||||||
(def-package! typescript-mode
|
|
||||||
:mode "\\.ts$"
|
|
||||||
:config
|
|
||||||
(add-hook 'typescript-mode-hook #'rainbow-delimiters-mode)
|
|
||||||
(set! :electric 'typescript-mode :chars '(?\} ?\)) :words '("||" "&&")))
|
|
||||||
|
|
||||||
|
|
||||||
(def-package! tide
|
|
||||||
:hook (typescript-mode . tide-setup)
|
|
||||||
:init
|
|
||||||
(defun +typescript|init-tide-in-web-mode ()
|
|
||||||
(when (string= (file-name-extension (or buffer-file-name "")) "tsx")
|
|
||||||
(tide-setup)))
|
|
||||||
(add-hook 'web-mode-hook #'+typescript|init-tide-in-web-mode)
|
|
||||||
:config
|
|
||||||
(set! :company-backend 'typescript-mode '(company-tide))
|
|
||||||
(set! :lookup 'typescript-mode
|
|
||||||
:definition #'tide-jump-to-definition
|
|
||||||
:references #'tide-references
|
|
||||||
:documentation #'tide-documentation-at-point)
|
|
||||||
|
|
||||||
(setq tide-format-options
|
|
||||||
'(:insertSpaceAfterFunctionKeywordForAnonymousFunctions t
|
|
||||||
:placeOpenBraceOnNewLineForFunctions nil))
|
|
||||||
|
|
||||||
(def-menu! +typescript/refactor-menu
|
|
||||||
"TODO"
|
|
||||||
'(("rename symbol" :exec tide-rename-symbol)
|
|
||||||
("restart tide server" :exec tide-restart-server)))
|
|
||||||
|
|
||||||
(map! :map tide-mode-map
|
|
||||||
:localleader
|
|
||||||
:n "r" #'+typescript/refactor-menu)
|
|
||||||
|
|
||||||
(add-hook! 'tide-mode-hook #'(flycheck-mode eldoc-mode)))
|
|
||||||
|
|
|
@ -1,6 +0,0 @@
|
||||||
;; -*- no-byte-compile: t; -*-
|
|
||||||
;;; lang/typescript/packages.el
|
|
||||||
|
|
||||||
(package! tide)
|
|
||||||
(package! typescript-mode)
|
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue