javascript: conform to v2 module format
This commit is contained in:
parent
2b4da7edf5
commit
5dc174f41c
4 changed files with 75 additions and 55 deletions
|
@ -1,4 +1,4 @@
|
||||||
;;; custom-screeps.el
|
;;; lang/javascript/+screeps.el
|
||||||
|
|
||||||
(defconst screeps-objects
|
(defconst screeps-objects
|
||||||
'("ConstructionSite" "Creep" "Flag" "Game" "Memory" "Mineral" "Nuke"
|
'("ConstructionSite" "Creep" "Flag" "Game" "Memory" "Mineral" "Nuke"
|
||||||
|
|
|
@ -1,7 +0,0 @@
|
||||||
;;; autoload.el --- description
|
|
||||||
|
|
||||||
;;;###autoload
|
|
||||||
(defun +js-fake-fun ())
|
|
||||||
|
|
||||||
(provide 'autoload)
|
|
||||||
;;; autoload.el ends here
|
|
|
@ -1,49 +1,61 @@
|
||||||
;;; config.el
|
;; lang/javascript/config.el
|
||||||
|
|
||||||
(config! js2-mode
|
|
||||||
(add-hook! '(tern-mode flycheck-mode highlight-indent-guides-mode))
|
|
||||||
|
|
||||||
;; NOTE Do indentation settings after editorconfig has done its thing
|
|
||||||
(add-hook! (setq js-switch-indent-offset js-indent-level))
|
|
||||||
|
|
||||||
|
(use-package! js2-mode
|
||||||
|
:mode "\\.js$"
|
||||||
|
:interpreter "node"
|
||||||
|
:init
|
||||||
(setq js2-skip-preprocessor-directives t
|
(setq js2-skip-preprocessor-directives t
|
||||||
js2-highlight-external-variables nil
|
js2-highlight-external-variables nil
|
||||||
js2-mode-show-parse-errors nil)
|
js2-mode-show-parse-errors nil)
|
||||||
|
|
||||||
;;
|
:config
|
||||||
(set! :repl nodejs-repl
|
(add-hook! '(tern-mode flycheck-mode highlight-indent-guides-mode))
|
||||||
:company-backends (tern)
|
;; Only way to conform switch-case indentation to editorconfig's config
|
||||||
:electric (?\} ?\) ?. "||" "&&")
|
(add-hook! (setq js-switch-indent-offset js-indent-level))
|
||||||
:map (:localleader :nv ";" 'doom/append-semicolon)
|
|
||||||
:emr ((:v js2r-extract-function "extract function")
|
|
||||||
(:v js2r-extract-method "extract method")
|
|
||||||
(:v js2r-introduce-parameter "introduce parameter")
|
|
||||||
(:n js2r-localize-parameter "localize parameter")
|
|
||||||
(:n js2r-expand-object "expand object")
|
|
||||||
(:n js2r-contract-object "contract object")
|
|
||||||
(:n js2r-expand-function "expand function")
|
|
||||||
(:n js2r-contract-function "contract function")
|
|
||||||
(:n js2r-expand-array "expand array")
|
|
||||||
(:n js2r-contract-array "contract array")
|
|
||||||
(:n js2r-wrap-buffer-in-iife "wrap buffer in ii function")
|
|
||||||
(:v js2r-inject-global-in-iife "inject global in ii function")
|
|
||||||
(:n js2r-add-to-globals-annotation "add to globals annotation")
|
|
||||||
(:v js2r-extract-var "extract variable")
|
|
||||||
(:v js2r-inline-var "inline variable")
|
|
||||||
(:n js2r-rename-var "rename variable")
|
|
||||||
(:n js2r-var-to-this "var to this")
|
|
||||||
(:n js2r-arguments-to-object "arguments to object")
|
|
||||||
(:n js2r-ternary-to-if "ternary to if")
|
|
||||||
(:n js2r-split-var-declaration "split var declaration")
|
|
||||||
(:n js2r-split-string "split string")
|
|
||||||
(:v js2r-unwrap "unwrap")
|
|
||||||
(:nv js2r-log-this "log this")
|
|
||||||
(:nv js2r-debug-this "debug this")
|
|
||||||
(:n js2r-forward-slurp "forward slurp")
|
|
||||||
(:n js2r-forward-barf "forward barf"))))
|
|
||||||
|
|
||||||
(config! coffee-mode
|
(map! :map js2-mode-map :localleader :nv ";" 'doom/append-semicolon)
|
||||||
(setq-default coffee-indent-like-python-mode t))
|
|
||||||
|
(set! :repl nodejs-repl)
|
||||||
|
(set! :company-backends tern)
|
||||||
|
(set! :electric-chars ?\} ?\) ?.)
|
||||||
|
(set! :electric-words "||" "&&")
|
||||||
|
(set! :emr
|
||||||
|
(:v js2r-extract-function "extract function")
|
||||||
|
(:v js2r-extract-method "extract method")
|
||||||
|
(:v js2r-introduce-parameter "introduce parameter")
|
||||||
|
(:n js2r-localize-parameter "localize parameter")
|
||||||
|
(:n js2r-expand-object "expand object")
|
||||||
|
(:n js2r-contract-object "contract object")
|
||||||
|
(:n js2r-expand-function "expand function")
|
||||||
|
(:n js2r-contract-function "contract function")
|
||||||
|
(:n js2r-expand-array "expand array")
|
||||||
|
(:n js2r-contract-array "contract array")
|
||||||
|
(:n js2r-wrap-buffer-in-iife "wrap buffer in ii function")
|
||||||
|
(:v js2r-inject-global-in-iife "inject global in ii function")
|
||||||
|
(:n js2r-add-to-globals-annotation "add to globals annotation")
|
||||||
|
(:v js2r-extract-var "extract variable")
|
||||||
|
(:v js2r-inline-var "inline variable")
|
||||||
|
(:n js2r-rename-var "rename variable")
|
||||||
|
(:n js2r-var-to-this "var to this")
|
||||||
|
(:n js2r-arguments-to-object "arguments to object")
|
||||||
|
(:n js2r-ternary-to-if "ternary to if")
|
||||||
|
(:n js2r-split-var-declaration "split var declaration")
|
||||||
|
(:n js2r-split-string "split string")
|
||||||
|
(:v js2r-unwrap "unwrap")
|
||||||
|
(:nv js2r-log-this "log this")
|
||||||
|
(:nv js2r-debug-this "debug this")
|
||||||
|
(:n js2r-forward-slurp "forward slurp")
|
||||||
|
(:n js2r-forward-barf "forward barf")))
|
||||||
|
|
||||||
|
(use-package! js2-refactor :after emr)
|
||||||
|
|
||||||
|
(use-package! company-tern :commands company-tern :after tern)
|
||||||
|
|
||||||
|
(use-package! jsx-mode :mode "\\.jsx$")
|
||||||
|
|
||||||
|
(use-package! coffee-mode
|
||||||
|
:mode "\\.coffee$"
|
||||||
|
:init (setq coffee-indent-like-python-mode t))
|
||||||
|
|
||||||
|
|
||||||
;;
|
;;
|
||||||
|
|
|
@ -1,13 +1,28 @@
|
||||||
;;; lang/js/packages.el
|
;; -*- no-byte-compile: t; -*-
|
||||||
|
;; lang/javascript/packages.el
|
||||||
|
|
||||||
(package! js2-mode :mode "\\.js$" :interpreter "node")
|
(package! js2-mode)
|
||||||
|
(package! jsx-mode)
|
||||||
|
(package! coffee-mode)
|
||||||
|
(package! tern)
|
||||||
|
(package! company-tern)
|
||||||
|
(package! js2-refactor)
|
||||||
|
|
||||||
(package! jsx-mode :mode "\\.jsx$")
|
(bootstrap! javascript
|
||||||
|
"Sets up NodeJS, the TrepanJS debugger."
|
||||||
|
|
||||||
(package! coffee-mode :mode "\\.coffee$")
|
:if-arch
|
||||||
|
(unless (and (executable-find "node")
|
||||||
|
(executable-find "npm"))
|
||||||
|
(sudo "pacman --needed --noconfirm -S nodejs npm"))
|
||||||
|
|
||||||
(package! tern :after js2-mode)
|
;; :if-deb
|
||||||
|
;; TODO
|
||||||
|
|
||||||
(package! company-tern :after js2-mode)
|
:if-macos
|
||||||
|
(unless (executable-find "node")
|
||||||
|
(sh "brew install node"))
|
||||||
|
|
||||||
(package! js2-refactor :after js2-mode)
|
:after
|
||||||
|
(unless (executable-find "tern")
|
||||||
|
(sh "npm -g install trepanjs tern")))
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue