Add haskell mode Make one of the themes to use light Replace ctags with uctags Do not force paredit in clojure mode
41 lines
1.1 KiB
EmacsLisp
41 lines
1.1 KiB
EmacsLisp
(use-package web-mode
|
|
:ensure t)
|
|
|
|
;; Eex Web mode
|
|
(add-to-list 'auto-mode-alist '("\\.eex\\'" . web-mode))
|
|
(add-to-list 'auto-mode-alist '("\\.leex\\'" . web-mode))
|
|
|
|
;; ERB mode
|
|
(add-to-list 'auto-mode-alist '("\\.erb\\'" . web-mode))
|
|
|
|
;; Vue
|
|
(add-to-list 'auto-mode-alist '("\\.vue\\'" . web-mode))
|
|
|
|
;; 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" . (("<%" "%>")))
|
|
("leex" . (("<%" "%>")))
|
|
("erb" . (("<%" "%>")
|
|
("beg" "end")))))
|
|
|
|
(defun activate-web-mode ()
|
|
"Web mode overrides."
|
|
;; Indent web mode scripts by 2
|
|
(setq web-mode-script-padding 2)
|
|
(setq web-mode-code-indent-offset 2)
|
|
|
|
(flycheck-add-next-checker 'javascript-standard 'javascript-tide 'append)
|
|
(setq-local flycheck-check-syntax-automatically '(save mode-enabled))
|
|
|
|
(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)
|