diff --git a/content/posts/crystal/nocolor-crystal/index.md b/content/posts/crystal/nocolor-crystal/index.md new file mode 100644 index 0000000..b103c32 --- /dev/null +++ b/content/posts/crystal/nocolor-crystal/index.md @@ -0,0 +1,51 @@ +--- +title: "NO_COLOR в Crystal" +date: 2022-07-26T18:23:31+03:00 +draft: false +tags: [crystal] +--- + +В Crystal 1.5.0 появилась поддержка `NO_COLOR`. +Спасибо [@didactic-drunk](https://github.com/didactic-drunk). +[Пулл-реквест #11984](https://github.com/crystal-lang/crystal/pull/11984). + +Чувак реализовал в библиотеке `Colorize` поддержку `NO_COLOR` без лишних телодвижений для разработчика. + +`NO_COLOR` это вроде движения, стандарт который урегулирует тенденцию добавления +в утилиты цветного выхлопа в консоль. + +Сайт проекта — [https://no-color.org/](https://no-color.org/). + +## Кратко о том, как это работает + +ПО, которое по умолчанию добавляет цвет ANSI к своим выводам, +должно проверять наличие переменной среды `NO_COLOR`. +Если она присутствует, а не является пустой строкой (независимо от ее значения), +предотвращает добавление цвета ANSI. + +Приняв этот стандарт, пользователи, предпочитающие вывод обычного, +неокрашенного текста, могут установить одну переменную среды в своей оболочке, +чтобы она автоматически влияла на все поддерживаемое ПО. + +> Яндекс перевод, ага... + +## Пример +По умолчанию вывод команды ниже будет пуст. + +```sh +printenv | grep NO_COLOR +``` + +Значение `NO_COLOR` может быть любым, но не пустым. + +```sh +export NO_COLOR=1 +printenv | grep NO_COLOR +NO_COLOR=1 +``` + +## Скриншоты + +![default](pmng_color.png) + +![with_no_color](pmng_nocolor.png) diff --git a/content/posts/crystal/nocolor-crystal/pmng_color.png b/content/posts/crystal/nocolor-crystal/pmng_color.png new file mode 100644 index 0000000..0d49fe0 Binary files /dev/null and b/content/posts/crystal/nocolor-crystal/pmng_color.png differ diff --git a/content/posts/crystal/nocolor-crystal/pmng_nocolor.png b/content/posts/crystal/nocolor-crystal/pmng_nocolor.png new file mode 100644 index 0000000..597ff2f Binary files /dev/null and b/content/posts/crystal/nocolor-crystal/pmng_nocolor.png differ