Fancy Clojure REPL [asciinema]

栏目: IT技术 · 发布时间: 6年前

内容简介:A fancy Clojure REPL, to get it yourself, do the following:In yourAnd in

A fancy Clojure REPL, to get it yourself, do the following:

In your .clojure/deps.edn add the following alias:

:aliases {:repl {:extra-deps {com.bhauman/rebel-readline {:mvn/version "RELEASE"}
                               com.gfredericks/user.clj {:mvn/version "RELEASE"}
                               org.clojure/core.async {:mvn/version "RELEASE"}
                               org.clojure/core.logic {:mvn/version "RELEASE"}
                               org.clojure/test.check {:mvn/version "RELEASE"}
                               com.clojure-goes-fast/clj-java-decompiler {:mvn/version "RELEASE"}
                               com.clojure-goes-fast/clj-memory-meter {:mvn/version "RELEASE"}
                               com.clojure-goes-fast/clj-async-profiler {:mvn/version "RELEASE"}
                               com.clojure-goes-fast/jvm-alloc-rate-meter {:mvn/version "RELEASE"}
                               com.clojure-goes-fast/jvm-hiccup-meter {:mvn/version "RELEASE"}
                               io.aviso/pretty {:mvn/version "RELEASE"}
                               mvxcvi/puget {:mvn/version "RELEASE"}
                               com.hypirion/clj-xchart {:mvn/version "RELEASE"}
                               org.clojure/clojure {:mvn/version "RELEASE"}
                               generateme/fastmath {:mvn/version "RELEASE"}
                               clj-commons/pomegranate {:mvn/version "RELEASE"}}
                  :main-opts  ["-m" "rebel-readline.main"]}

And in .clojure/user.clj add the following: https://gist.github.com/didibus/b88a0d458601e06d63d0ca430962ff42

Finally, in your .zshrc or .bashrc file add:

function clj() {
    if [[ -z $@ ]]
    then
        command clojure -A:repl
    else
        command clj $@
    fi
}

So now when you type clj you get a super fancy repl with colorized output, friendly error messages, auto-complete, doc showing, multi-line support and the most common namespaces pre-required as well as useful functions you can use with (req-...) to lazy require more useful namespaces. There is one called (req-deps) which requires pomegranate and defines add-lein-deps that can then be used to dynamically bring in more dependencies to the REPL as well.


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

程序员面试笔试宝典

程序员面试笔试宝典

何昊、叶向阳、窦浩 / 2012-10 / 59.80元

《程序员面试笔试宝典》除了对传统的计算机相关知识(C/C++、数据结构与算法、操作系统、计算机网络与通信、软件工程、数据库、智力题、英语面试等)进行介绍外,还根据当前计算机技术的发展潮流,对面试笔试中常见的海量数据处理进行了详细的分析。同时,为了更具说服力,《程序员面试笔试宝典》特邀多位IT名企面试官现身说法,对面试过程中求职者存在的问题进行了深度剖析,同时《程序员面试笔试宝典》引入了一批来自于名......一起来看看 《程序员面试笔试宝典》 这本书的介绍吧!

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

随机密码生成器
随机密码生成器

多种字符组合密码

RGB CMYK 转换工具
RGB CMYK 转换工具

RGB CMYK 互转工具