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