diff --git a/CHANGELOG.md b/CHANGELOG.md index 0b0bf2f..557d155 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -10,6 +10,7 @@ Improvements: * Make logging configurable and make logging (optionally) not overwrite the IEx prompt [#32](https://github.com/falood/exsync/pull/32) * Ensure that compilation errors are displayed in the console [#33](https://github.com/falood/exsync/pull/33) * Add a supervision hierarchy [#35](https://github.com/falood/exsync/pull/35) +* Handle terminals that don't support ANSI colors [#38](https://github.com/falood/exsync/pull/38) Bug fixes: * Fix log when there are no configured group leaders [#36](https://github.com/falood/exsync/pull/36) diff --git a/lib/exsync/logger/server.ex b/lib/exsync/logger/server.ex index 920b8db..177caa9 100644 --- a/lib/exsync/logger/server.ex +++ b/lib/exsync/logger/server.ex @@ -62,8 +62,12 @@ defmodule ExSync.Logger.Server do end defp color_message(message, level) do - color = color(level) - [IO.ANSI.format_fragment(color, true), message | IO.ANSI.reset()] + if IO.ANSI.enabled?() do + color = color(level) + [IO.ANSI.format_fragment(color, true), message | IO.ANSI.reset()] + else + message + end end defp color(:debug), do: :cyan