sindresorhus / pure

Pretty, minimal and fast ZSH prompt
MIT License
13.19k stars 978 forks source link

Excessively gray pre-prompt with ssh and git #126

Closed mafredri closed 5 years ago

mafredri commented 9 years ago

The pre-prompt becomes excessively gray (too little contrast) when inside a git directory over an ssh connection:

Looks OK as root though:

mcallan83 commented 9 years ago

I think it would be great if there were a way to customize colors in Pure. I also feel that the pre-prompt area is a but too gray. Ideally, it would be nice to customize colors for git branch, ssh user\host, and the prompt symbol color (both normal and if the last command exited with an error).

I realize a ton of configuration variables can make things messy, but I think color is more important than things like the prompt symbol or git arrow symbols, which we are currently allowed to change.

Being able to change host name color would be great when you are using TMUX with 3 or 4 local and remote panes. Having a user\host information stick out in a bright color would be very helpful. It would also be great to change this color depending on the server.

sindresorhus commented 9 years ago

Pure is intentionally opinionated. It should come with good defaults that works for the 90%. The rest can easily just manually modify Pure to their liking.

mafredri commented 9 years ago

I would like to add that the reason the prompt symbol and arrow symbols are configurable is that of necessity, not choice. Displaying them is unreliable, some fonts don't support the unicode characters, and other make them look extremely weird. We are opinionated but want to maintain compatibility.

That being said, we do not want to introduce color options into pure, however, suggestions for improving this excessive grayness are extremely welcome!

PS. I can appreciate the necessity to differentiate between servers, though, and perhaps in this single case a configuration option for server color could be warranted (I'll take it under consideration).

mcallan83 commented 9 years ago

Ahh, that makes sense with the symbols. Anyways, I think Pure is great. It was actually the sole reason I switched to ZSH in the first place, and I am glad that I did!

I guess my thoughts about the colors were that not everyone is using the Tomorrow Night Eighties theme. For example, in Solarized, magenta and red are very close to each other, so when the prompt symbol changes to red, it doesn't stand out as much as I would like for my eyes. Not a huge deal, but it would be great if there were an easy way to change things, even if it was an undocumented feature. At the same time, I get that Pure is an opinionated prompt and will continue to use it either way.

Changing the server colors would be great though, and I think it would add a great feature to pure without ruining the aesthetic too much.

mafredri commented 9 years ago

I realized you're already able to do this, after pure has been initialized, you can override prompt_pure_username. Set it, like so: prompt_pure_username=" %n%F{red}@%m%f". This is undocumented and might break at any time though.

mcallan83 commented 9 years ago

Sweet, I can live with that. Thanks for your help :-)

AdamWhittingham commented 8 years ago

I'm not sure if this is of any interested, and forgive my intrusion into this conversation if not, but I have also edited my local Pure prompt setup to add more colour.

The username and host in my config change colour on production or staging systems, or when the root user. I've found it very useful in passively reminding me where I am!

You can see my changes here. The host colours rely on either an arbitrary env var or the Rails env vars, but would be easily extended to look for other variables.

I'd be happy to spend some time tidying it up and PRing it if the project has any interest in it.

Finally, thank you to everyone who has built and maintained Pure- I've found it exceptionally useful and really appreciate your work!