From e43727955a2cdabd2bb0189c20dd7f9a18156fc9 Mon Sep 17 00:00:00 2001 From: Michiel Borkent Date: Wed, 19 Feb 2020 23:22:49 +0100 Subject: [PATCH] [#133] add clojure.pprint/pprint backed by fipp --- README.md | 1 + deps.edn | 3 ++- project.clj | 3 ++- src/babashka/main.clj | 8 +++++--- 4 files changed, 10 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index f882284f..fc373499 100644 --- a/README.md +++ b/README.md @@ -188,6 +188,7 @@ enumerated explicitly. it is a function. - `clojure.stacktrace` - `clojure.test` +- `clojure.pprint`: `pprint` (currently backed by [fipp](https://github.com/brandonbloom/fipp)'s `fipp.edn/pprint`) - [`clojure.tools.cli`](https://github.com/clojure/tools.cli) aliased as `tools.cli` - [`clojure.data.csv`](https://github.com/clojure/data.csv) aliased as `csv` - [`cheshire.core`](https://github.com/dakrone/cheshire) aliased as `json` diff --git a/deps.edn b/deps.edn index 0b22b062..5b67b4d9 100644 --- a/deps.edn +++ b/deps.edn @@ -7,7 +7,8 @@ org.clojure/core.async {:mvn/version "1.0.567"}, org.clojure/tools.cli {:mvn/version "0.4.2"}, org.clojure/data.csv {:mvn/version "1.0.0"}, - cheshire {:mvn/version "5.10.0"}} + cheshire {:mvn/version "5.10.0"} + fipp {:mvn/version "0.6.22"}} :aliases {:main {:main-opts ["-m" "babashka.main"]} :profile diff --git a/project.clj b/project.clj index c8e8a43a..73f9cf87 100644 --- a/project.clj +++ b/project.clj @@ -17,7 +17,8 @@ [org.clojure/core.async "1.0.567"] [org.clojure/tools.cli "0.4.2"] [org.clojure/data.csv "1.0.0"] - [cheshire "5.10.0"]] + [cheshire "5.10.0"] + [fipp "0.6.22"]] :profiles {:test {:dependencies [[clj-commons/conch "0.9.2"] [com.clojure-goes-fast/clj-async-profiler "0.4.0"]]} :uberjar {:global-vars {*assert* false} diff --git a/src/babashka/main.clj b/src/babashka/main.clj index 36c5af8b..3cbf4259 100644 --- a/src/babashka/main.clj +++ b/src/babashka/main.clj @@ -21,12 +21,13 @@ [clojure.edn :as edn] [clojure.java.io :as io] [clojure.string :as str] + [fipp.edn :as fipp] [sci.addons :as addons] [sci.core :as sci] [sci.impl.interpreter :refer [eval-string*]] [sci.impl.opts :as sci-opts] - [sci.impl.vars :as vars] - [sci.impl.unrestrict :refer [*unrestricted*]]) + [sci.impl.unrestrict :refer [*unrestricted*]] + [sci.impl.vars :as vars]) (:gen-class)) (binding [*unrestricted* true] @@ -257,7 +258,8 @@ Everything after that is bound to *command-line-args*.")) 'clojure.main {'demunge demunge} 'clojure.repl {'demunge demunge} 'clojure.test t/clojure-test-namespace - 'babashka.classpath {'add-classpath add-classpath*}}) + 'babashka.classpath {'add-classpath add-classpath*} + 'clojure.pprint {'pprint fipp/pprint}}) (def bindings {'java.lang.System/exit exit ;; override exit, so we have more control