/ dev.el
dev.el
1 (add-to-list 'load-path default-directory) 2 3 (require 'dash-x) 4 (require 'jujutsu) 5 (require 'parseedn) 6 (require 'dash) 7 (require 's) 8 9 (-tests-enable!) 10 11 (defun jujutsu-dev--generic-jet (x) 12 (let ((temp-file (make-temp-file "jujutsu-"))) 13 (with-temp-buffer 14 (insert (parseedn-print-str x)) 15 (write-region (point-min) (point-max) temp-file) 16 (s-trim (shell-command-to-string (s-join " " (list "cat" temp-file "|" "jet"))))))) 17 18 (defvar jujutsu-dev-dump-user-actions nil) 19 20 (-comment 21 (setq jujutsu-dev-dump-user-actions (not jujutsu-dev-dump-user-actions)) 22 1) 23 24 (defun jujutsu-dev-dump (&optional x name) 25 (interactive) 26 (let ((debug-val (or x jujutsu-status-app-state))) 27 (with-current-buffer (get-buffer-create (or name "*jj debug*")) 28 (fundamental-mode) 29 (erase-buffer) 30 (insert (jujutsu-dev--generic-jet x)) 31 (when (featurep 'clojure-mode) 32 (clojure-mode))))) 33 34 (defun jujutsu-dev-dump-display (&optional x name) 35 (interactive) 36 (jujutsu-dev-dump x name) 37 (display-buffer (get-buffer (or name "*jj debug*")))) 38 39 (-comment 40 (jujutsu-dev-dump-display (ht (:foo t))) 41 (jujutsu-dev-dump-display (ht (:bar nil))) 42 43 1) 44 45 (-comment 46 (-tap> (ht (:foo t))) 47 48 1)