🏴‍☠️
Сашка ☕
Blog  Tags  💀 🔵 🔴

NO_COLOR в Crystal

Опубликовано: 26 июля 2022 г.

В Crystal 1.5.0 появилась поддержка NO_COLOR.
Спасибо @didactic-drunk. Пулл-реквест #11984.

Чувак реализовал в библиотеке Colorize поддержку NO_COLOR без лишних телодвижений для разработчика.

NO_COLOR это вроде движения, стандарт который урегулирует тенденцию добавления в утилиты цветного выхлопа в консоль.

Сайт проекта — https://no-color.org/.

Кратко о том, как это работает

ПО, которое по умолчанию добавляет цвет ANSI к своим выводам, должно проверять наличие переменной среды NO_COLOR.
Если она присутствует, а не является пустой строкой (независимо от ее значения), предотвращает добавление цвета ANSI.

Приняв этот стандарт, пользователи, предпочитающие вывод обычного, неокрашенного текста, могут установить одну переменную среды в своей оболочке, чтобы она автоматически влияла на все поддерживаемое ПО.

Яндекс перевод, ага…

Пример

По умолчанию вывод команды ниже будет пуст.

printenv | grep NO_COLOR

Значение NO_COLOR может быть любым, но не пустым.

export NO_COLOR=1
printenv | grep NO_COLOR
NO_COLOR=1

Скриншоты

default

with_no_color