Hacker News new | ask | show | jobs
by toyg 2090 days ago
> # uncomment for a colored prompt, if the terminal has the capability; turned off by default to not distract the user: the focus in a terminal window should be on the output of commands, not on the prompt

:eyeroll:

What a horrible attitude. The point of coloring is precisely to help users focus on the output that matters, rather than forcing them to parse and reparse a chunk of stuff they don't care about. If the prompt is colored, my brain can filter it out much faster than if it isn't.

By all means disable color by default for backward-compatibility purposes or to err on the safe side, but don't lecture people with rubbish arguments...

3 comments

I mean, it depends on the person and the color scheme.

I appreciate being able to turn off very colorful output if possible, as it does tend to distract me sometimes. The color schemes I pick/design for myself tend to be muted, while a lot of the tools out there in the world are way too colorful for me (and full of distracting emojis).

It does complicated matters if you're capturing command output in logfiles or an editor.

In my scripts, I just check for unset term and/or use tput to get the sequences (which honors TERM=dumb)

one example:

  col_ok=`tput bold; tput setaf 7; tput setab 2`
  col_fail=`tput bold; tput setaf 7; tput setab 1`
  col_end=`tput sgr0`

  echo "${col_fail} ERROR: it failed ${col_end}"
so running the script gives me colorized output (xterm-256color), but running it like this:

  TERM=dumb <script>
gives plain text
Ok, I think I copied that from somewhere... Pretty sure it's not my comment. But still... Lecturing people with rubbish arguments and a horrible attitude sounds like what you're doing.

Big world out there. You can have people who like colors and those who don't. Neither have to be pretending they're all that and hate the other. :) Friends?

Please submit a PR with a better comment if you like. I honestly didn't think of that until now, but I think comments are important. Thanks for pointing out really. :)

Personally, I love colours on my terminal — in a minimal way, like this[1] —, but I understand people that do not, which is why I have this in every script I write, public or not.

    # Color variables to make our output a little easier on the eyes. Respect
    # NO_COLOR, in case the user does not want any.
    if [[ -t 1 && -z "${NO_COLOR:-}" ]]; then
      readonly c_red='\033[0;31m'
      readonly c_blue='\033[0;34m'
      readonly c_green='\033[0;32m'
      readonly c_bold='\033[1m'
      readonly c_reset='\033[0m'
    fi
I have no idea why I added that readonly command there, though, but by now I am afraid to remove it.

The NO_COLOR[2] environment variable is not exactly a standard as far as I know, but it is supported by enough command-line software that it feels like one to me.

[1] https://i.cpimg.sh/9k3PlfHt1Spg.png

[2] https://no-color.org/

Oh, I wasn't faulting you, most of these comments in rc files typically come all the way from some random flame in 1998 or something.

> You can have people who like colors and those who don't.

I absolutely agree, which is why I'd remove any opinion from the comment. "Default is off". End of story.

Ok cool. I see you were just commenting about the comment itself and not me... Sometimes it's hard to separate the two, reading what someone says. You know, I take it like they mean it personally, but I'm working on it :)
I'm nearly certain that is a default message included in a lot of .bashrc files. I've seen it on Debian and Ubuntu. I agree with his criticism but certainly not with how he conveyed it. I love colour :)
I like how color looks for a short time but when working all day in vim I find I think better with just two colors and no syntax. I think I just got used to that in shell .. but then I do like the link/executable highlights... Maybe I'm missing a huge world of color in bash prompt... I just don't know how to do it, or do it well...haha. Wanna spruce up my prompt? ;P :) you're welcome to submit if you want, a change :)
I hope I remember this tomorrow, I'll try to convert you ;) haha
Yeah I regretted it after posting, haha, but I'll stick to my word, I think I might prefer my prompt and get sick of the color so I'll add some optionality.