From 52e047138a32e8366369737dc54198f1a5baa1cb Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bartek=20Iwa=C5=84czuk?= Date: Sun, 10 Feb 2019 01:13:44 +0100 Subject: [PATCH] support NO_COLOR in colors module (denoland/deno_std#182) Original: https://github.com/denoland/deno_std/commit/a81d2ae1f962c3e0c845e63bf06da01e4b7cfcc2 --- colors/README.md | 2 ++ colors/mod.ts | 7 ++++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/colors/README.md b/colors/README.md index 3c371197f9..e6e0890ffb 100644 --- a/colors/README.md +++ b/colors/README.md @@ -16,6 +16,8 @@ import { bgBlue, red, bold } from "https://deno.land/x/std/colors/mod.ts"; console.log(bgBlue(red(bold("Hello world!")))); ``` +This module supports `NO_COLOR` environmental variable disabling any coloring if `NO_COLOR` is set. + ## TODO - Currently, it just assumes it is running in an environment that supports ANSI diff --git a/colors/mod.ts b/colors/mod.ts index e271c54cf7..c8bb5b539d 100644 --- a/colors/mod.ts +++ b/colors/mod.ts @@ -1,4 +1,5 @@ // Copyright 2018-2019 the Deno authors. All rights reserved. MIT license. +import { noColor } from "deno"; interface Code { open: string; @@ -6,9 +7,13 @@ interface Code { regexp: RegExp; } -let enabled = true; +let enabled = !noColor; export function setEnabled(value: boolean) { + if (noColor) { + return; + } + enabled = value; }