Обработка черного текста в темной цветовой гамме терминала

680
davidchambers

Я настроил свои цвета в iTerm (хотя конкретное приложение терминала, которое я использую, не имеет значения). Я выбрал темный цвет фона и определил красный, зеленый, желтый и т. Д. Все было хорошо, пока я не побежал npm outdated:

нпм устарел

По всей видимости, вывод содержит черный текст, который очень трудно увидеть на темно-сером фоне. Я не уверен, какой слой виноват здесь.

  • Возможно, npm outdatedвиновата печать черного текста? Возможно, утилиты командной строки должны избегать печати явно черного или белого текста и вместо этого полагаться на настройки терминала по умолчанию? Печатные цвета, отличные от черного и белого, выглядят хорошо, так как разработчик темы выбрал цветовые значения, которые обеспечивают достаточную разницу между передним планом и фоном.

  • Возможно, я виноват в разработке темы, которая не может отображать черный текст? Если да, каков мой порядок действий? Должен ли я выбрать значение, отличное от #000000ANSI black? Я не мог использовать #ffffff, поскольку это сделало бы явно черный текст на явно белом фоне нечитаемым. Возможно, серый какой-то?

  • Возможно, мое терминальное приложение виновато в том, что не обнаруживает сходства между цветом переднего плана и цветом фона и предпринимает некоторые разумные действия (например, инвертирует цвет переднего плана).

Я не столько заинтересован в исправлении этой конкретной проблемы читабельности, сколько в понимании роли различных игроков. Как разработчик утилит командной строки, я хотел бы научиться использовать цвета без проблем с читаемостью.

3
Возможно, вы захотите перенести это на сайт User Experience, поскольку у них есть люди, которые делают это весь день. Я не уверен, что смогу пометить это, но я попробую. Joshua Nurczyk 10 лет назад 0

1 ответ на вопрос

2
user1301428

I personally would do it in one of two ways:

  1. I would make the black text a lighter grey (something like #CCCCCC or #DDDDDD
  2. I would make the background a little lighter (again, something like #CCCCCC or #BBBBBB could work here)

If you are a designer of command line utilities, you could also say "well, this is for the UX guys to solve". The fact is though, that somebody has to do it, and if you don't have a UX team or you are working alone, then it's up to you, even if this means fixing accessibility issues that the terminals themselves have.

Obviously, you can disregard this (accessibility is underestimated way too often), but if you can focus on it, kudos for that. The fact that you asked this question is already a good sign.

Вы правы, что я здесь виноват. Я не должен был выбирать `# 000000` для ANSI черный. Как вы предлагаете, я должен изменить либо цвет фона, либо «черный» цвет. (Я буду голосовать, как только я наберу 15 репутации.) davidchambers 10 лет назад 1
@davidchambers Не беспокойся :) user1301428 10 лет назад 0