On Fri, Aug 27, 2010 at 9:48 AM, Ramakrishnan Muthukrishnan
<[email protected]> wrote:
> On Fri, Aug 27, 2010 at 4:39 PM, frou <[email protected]> wrote:
>> Is it or would it be possible to add some basic text colouring to the
>> standard REPL (the one started with the "clj" shell script).
>>
>> It would be nice to be able to make the prompt, e.g. "user=>" coloured
>> (green in my case) so that you get at-a-glance distinction between
>> your inputs and the results printed.
>
> If you use rlwrap to invoke the clojure repl, you can do that with
> --prompr-colour option
>
> eg;
>
> rlwrap -p"red" java -cp blah blah clojure.main
I didn't know about that. Cool tip, but for me it pretty easily
gets confused when the prompt changes (such as when moving
between namespaces).
I've been using this for a while -- not perfect either, but it
attempts to print a green line before each prompt, and color
return values blue.
(defn my-repl []
(binding [*pprint* true]
(clojure.main/repl
:prompt #(printf
"\033[32m-----\033[m\n%s=> "
(ns-name *ns*))
:print (try
(fn [x]
(print "\033[34m")
(if *pprint*
(clojure.pprint/pprint x)
(prn x))
(print "\033[m")
(flush))
(catch Exception e
(prn e))))))
You can either just run (my-repl) at the REPL, or start Clojure
with -e '(my-repl)' If you then run a little test, you can see
each of the different colors:
(do (println "hi") 5)
--Chouser
http://joyofclojure.com/
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to [email protected]
Note that posts from new members are moderated - please be patient with your
first post.
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en