Hi @brson ! Thanks for your interest !
Better term handling is sorely needed in the Rust tools. They all use a combination of the term crate and hand-rolled tty checks
I think there is two separate issues, and it's important to not mix them together.
For one, there is the ability to style the output of a terminal program for a rust programmer. This should be the most simple and accessible and I propose here a straightforward API, some would even say naive. I think naivety and simplicity is best here as it's welcoming for programmers.
The second issue, is effectively displaying these colors in a way the terminal emulator understand. This is far more tricky to do great in a general manner. Here the
term crate has a great place and it should be the favorite place to put tty checks and cross-platform handling as much homogeneous as possible.
I would be glad to contribute as much as I can to
term and integrate it in
All the open-coding makes it hard to be motivated to make the console output really special.
Could you develop your thought ? I think having a zero-effort API for coloring thing on linux whose future is undefined, and a clear path of upgrade when the need for cross-platform become apparent, it seems to be the best of both worlds as I see it.
I'd like some sort of templating language that allows embedding styles, that falls back to unstyled when there's no tty.
It seems... actually a good idea ! Does it already exists somewhere or did you just made up ?