Skip to content

Commit 8222d28

Browse files
committed
Add pretty view mode
1 parent 1688628 commit 8222d28

File tree

3 files changed

+31
-3
lines changed

3 files changed

+31
-3
lines changed

project.clj

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@
2222
:url "http://www.eclipse.org/legal/epl-v10.html"}
2323
:scm {:name "git" :url "https://github.com/clojure-emacs/cider-nrepl"}
2424
:dependencies [[nrepl/nrepl "1.3.1" :exclusions [org.clojure/clojure]]
25-
[cider/orchard "0.33.0" :exclusions [org.clojure/clojure]]
25+
[cider/orchard "0.34.0" :exclusions [org.clojure/clojure]]
2626
^:inline-dep [fipp ~fipp-version] ; can be removed in unresolved-tree mode
2727
^:inline-dep [compliment "0.7.0"]
2828
^:inline-dep [org.rksm/suitable "0.6.2" :exclusions [org.clojure/clojure

src/cider/nrepl/middleware/inspect.clj

+2-2
Original file line numberDiff line numberDiff line change
@@ -80,8 +80,8 @@
8080
(defn- toggle-view-mode [{:keys [view-mode] :as inspector}]
8181
;; The order in which view modes are cycled depends on the inspected object.
8282
(let [toggle-order (if (inspect/supports-table-view-mode? inspector)
83-
{:normal :table, :table :object, :object :normal}
84-
{:normal :object, :object :normal})
83+
{:normal :table, :table :object, :object :pretty, :pretty :normal}
84+
{:normal :object, :objet :pretty, :pretty :normal})
8585
next-view-mode (toggle-order view-mode :normal)]
8686
(inspect/set-view-mode inspector next-view-mode)))
8787

test/clj/cider/nrepl/middleware/inspect_test.clj

+28
Original file line numberDiff line numberDiff line change
@@ -691,6 +691,34 @@
691691
(is+ (matchers/prefix table-mode-prefix)
692692
(value-skip-header (session/message {:op "inspect-toggle-view-mode"})))))
693693

694+
(deftest pretty-view-mode-integration-test
695+
(testing "pretty view-mode renders an object with a pretty printer"
696+
(session/message {:op "inspect-clear"})
697+
(session/message {:op "eval"
698+
:inspect "true"
699+
:code "(repeat 5 {:a (repeat 5 {:b 2}) :c (repeat 5 {:d 2})})"})
700+
(session/message {:op "inspect-toggle-view-mode"})
701+
(session/message {:op "inspect-toggle-view-mode"})
702+
(is+ ["--- Contents:" [:newline]
703+
" 0. " [:value (str "{:a ({:b 2} {:b 2} {:b 2} {:b 2} {:b 2}),"
704+
"\n :c ({:d 2} {:d 2} {:d 2} {:d 2} {:d 2})}") 1]
705+
[:newline]
706+
" 1. " [:value (str "{:a ({:b 2} {:b 2} {:b 2} {:b 2} {:b 2}),"
707+
"\n :c ({:d 2} {:d 2} {:d 2} {:d 2} {:d 2})}") 2]
708+
[:newline]
709+
" 2. " [:value (str "{:a ({:b 2} {:b 2} {:b 2} {:b 2} {:b 2}),"
710+
"\n :c ({:d 2} {:d 2} {:d 2} {:d 2} {:d 2})}") 3]
711+
[:newline]
712+
" 3. " [:value (str "{:a ({:b 2} {:b 2} {:b 2} {:b 2} {:b 2}),"
713+
"\n :c ({:d 2} {:d 2} {:d 2} {:d 2} {:d 2})}") 4]
714+
[:newline]
715+
" 4. " [:value (str "{:a ({:b 2} {:b 2} {:b 2} {:b 2} {:b 2}),"
716+
"\n :c ({:d 2} {:d 2} {:d 2} {:d 2} {:d 2})}") 5]
717+
[:newline] [:newline]
718+
"--- View mode:" [:newline]
719+
" :pretty"]
720+
(value-skip-header (session/message {:op "inspect-toggle-view-mode"})))))
721+
694722
(deftest print-length-independence-test
695723
(testing "*print-length* doesn't break rendering of long collections"
696724
(is (re-find #"showing page: \d+ of \d+"

0 commit comments

Comments
 (0)