我可以用颜色输出Elixir术语吗?

时间:2018-03-07 21:14:27

标签: elixir

iex中,条款的颜色很好。我可以在自己的程序中利用这个吗?是否有类似IO.color_inspect的内容?

2 个答案:

答案 0 :(得分:5)

IO.inspectinspect都允许您传递syntax_colors选项,您可以在其中为文档here指定每种类型字词所需的颜色。不幸的是,看起来IEx使用的配置没有暴露,所以你必须复制粘贴或制作自己的配置。

iex(1)> syntax_colors = [number: :yellow, atom: :cyan, string: :green, boolean: :magenta, nil: :magenta]
[number: :yellow, atom: :cyan, string: :green, boolean: :magenta, nil: :magenta]
iex(2)> IO.inspect [1, :a, "b", nil], syntax_colors: syntax_colors; :ok
[1, :a, "b", nil]
:ok

iex

答案 1 :(得分:1)

请参见IO.ANSI库,以呈现ANSI转义序列以控制格式,颜色等。

ExUnit's CLI formatter has some good usage examples

使用它就像将ANSI字符串联或插值以实现前景色或背景色以及重置一样简单。例如

IO.ANSI example using foreground colours