Below you will find pages that utilize the taxonomy term “erlang elixir”
Posts
Erlang 和 Elixir shell 历史记录设置
Erlang 的 erl 和 Elixir 的 iex 都只有当前 session 的历史记录,可以通过 ctrl + r 或者上下方向键来返回历史记录,并执行。但是当 session 一旦退出,重新启动一个 shell session,前一个历史记录就没有了,这个就非常麻烦。
题外:在 clojure 里, lein repl 帮你处理了这个事情,它将历史命令保存在 ~/.lein_history 文件,在不同 session 之间可以随时调取历史记录。如果使用内置的 clojure REPL,也可以使用 rlwrap 来包装,提供历史记录功能。
erlang-history 不过庆幸的是有一个开源项目帮你解决了这个问题—— erlang-history,它的解决方式比较重量级,通过给 Kernel 打补丁的方式(线上环境肯定不推荐),保存历史记录到 erlang dets。安装非常简单:
git clone git@github.com:ferd/erlang-history.git cd erlang-history make install 可能会提示你需要 sudo 权限,因为它要替换 Erlang 默认的 kernel.beam。
安装后,默认的 erl 和 iex 命令就拥有历史记录功能了。不过可能你想修改下一些默认配置。erlang-history 提供的选项包括:
hist - true | false :是否启用,默认 true hist_file - string(): 历史记录文件的 dets 文件名,字符串,默认是 ~/.