diff options
author | Martin Polden <mpolden@mpolden.no> | 2017-05-31 20:57:41 +0200 |
---|---|---|
committer | Martin Polden <mpolden@mpolden.no> | 2017-05-31 20:57:41 +0200 |
commit | 3cb44c0ba3f74639ad1abde5cf77292825fdd378 (patch) | |
tree | 3ca5b7418e7acf6a1308cce57b188f0c2b2e2be9 /lisp/init-javascript.el | |
parent | d768b60ac1af853eaeb628a5facb26f5139d13f2 (diff) |
Do not use :config to declare functions
Diffstat (limited to 'lisp/init-javascript.el')
-rw-r--r-- | lisp/init-javascript.el | 61 |
1 files changed, 30 insertions, 31 deletions
diff --git a/lisp/init-javascript.el b/lisp/init-javascript.el index 309e883..3a4cd7f 100644 --- a/lisp/init-javascript.el +++ b/lisp/init-javascript.el @@ -1,3 +1,31 @@ +;; use jq for reformatting json +(defun jq-reformat-region (begin end) + (interactive "r") + (if (executable-find "jq") + (let* ((tmpfile (make-temp-file "jq")) + (errbuf (get-buffer-create "*jq errors*")) + (result (call-process-region begin end "jq" nil + `((:file ,tmpfile) ,tmpfile) nil + "--monochrome-output" "--ascii-output" + ".")) + (success (zerop result)) + (resbuf (if success (current-buffer) errbuf))) + (with-current-buffer resbuf + (insert-file-contents tmpfile nil nil nil t)) + (if success + (progn + (kill-buffer errbuf) + (message "Reformatted JSON")) + (message "Failed to reformat JSON. Check errors for details")) + (delete-file tmpfile)) + (message "Could not find jq in PATH."))) + +(defun jq-reformat () + (interactive) + (if (use-region-p) + (jq-reformat-region (region-beginning) (region-end)) + (jq-reformat-region (point-min) (point-max)))) + (use-package js :ensure nil ;; package is bundled with emacs @@ -10,36 +38,7 @@ ("\\.\\(json\\|jshintrc\\)\\'" . js-mode) :bind (:map js-mode-map - ;; C-c p runs formats json with jq - ("C-c p" . jq-reformat)) - - :config - ;; use jq for reformatting json - (defun jq-reformat-region (begin end) - (interactive "r") - (if (executable-find "jq") - (let* ((tmpfile (make-temp-file "jq")) - (errbuf (get-buffer-create "*jq errors*")) - (result (call-process-region begin end "jq" nil - `((:file ,tmpfile) ,tmpfile) nil - "--monochrome-output" "--ascii-output" - ".")) - (success (zerop result)) - (resbuf (if success (current-buffer) errbuf))) - (with-current-buffer resbuf - (insert-file-contents tmpfile nil nil nil t)) - (if success - (progn - (kill-buffer errbuf) - (message "Reformatted JSON")) - (message "Failed to reformat JSON. Check errors for details")) - (delete-file tmpfile)) - (message "Could not find jq in PATH."))) - - (defun jq-reformat () - (interactive) - (if (use-region-p) - (jq-reformat-region (region-beginning) (region-end)) - (jq-reformat-region (point-min) (point-max))))) + ;; C-c p runs formats json with jq + ("C-c p" . jq-reformat))) (provide 'init-javascript) |