Merge lang/typescript into lang/javascript

This commit is contained in:
Henrik Lissner 2018-04-18 18:17:17 -04:00
parent c4396226dd
commit e54c938023
No known key found for this signature in database
GPG key ID: 5F6C0EA160557395
3 changed files with 25 additions and 47 deletions

View file

@ -37,15 +37,37 @@
: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
: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
(set! :company 'js2-mode 'company-tide)
(set! :lookup 'js2-mode
(set! :company '(js2-mode typescript-mode) 'company-tide)
(set! :lookup '(js2-mode typescript-mode)
:definition #'tide-jump-to-definition
:references #'tide-references
: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

View file

@ -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)))

View file

@ -1,6 +0,0 @@
;; -*- no-byte-compile: t; -*-
;;; lang/typescript/packages.el
(package! tide)
(package! typescript-mode)