derivepassphrase wish conventional-configurable-text-styling¶
Wish details: derivepassphrase vault should support conventional and configurable text styling
| Class | wish | This is a request for an enhancement. |
|---|---|---|
| Priority | low | We aren't sure whether to fix this or not. |
| Difficulty | taxing | Needs external things we don’t have (standards, users etc). |
| Present-in | 0.5 0.5.1 0.5.2 | |
derivepassphrase intends to support text styling (color, boldface) for warning and error messages (and possibly for other future uses) for TTY devices.
The question is, how exactly?
The conventions in this regard are still in flux.
-
Color usage is generally tri-state:
--color=always|auto|never(GNUgrepet al.) or--color=yes|no|auto(pytest). Which terminology should be used? -
For color usage, we should support the
NO_COLORandFORCE_COLORenvironment variables to override the auto-detected result. Which variable should take precedence,NO_COLORorFORCE_COLOR? (TheFORCE_COLORFAQ site givesFORCE_COLORprecedence overNO_COLOR, Python 3.13 givesNO_COLORprecedence.) -
Should text decorations and text styling (bold, underline) be treated equivalently to color? Should this be handled by the same “color” options, or do we need separate “styling” options?
-
Should we support the
TTY_COMPATIBLE=1|0|<unset>variable as proposed by Rich?
Until these conventions have stabilized, as a baseline, derivepassphrase shall emit device-independent output without color or text styling, in adherence to Eric S. Raymond’s Rule of Composition.