feat(status): rename fetch to status, add per-OS coloured ASCII art
`simon status` is the terse summary — labels and values, no artwork, because most of the time the machine is the point. `--ascii` draws the OS logo beside it in the neofetch style. Named `--ascii` rather than `--legacy` as suggested: nothing here is being kept for backward compatibility, and a flag that says "legacy" about a new feature is the kind of misleading name this crate spent a release removing. Happy to rename if the intent was different. The art is per-OS and drawn line by line so each carries its own colour, which is what makes the Windows flag read as four panes rather than a block of hashes. Written for this crate rather than vendored: neofetch is MIT and could be included with attribution, but writing the shapes keeps this AGPL crate's licensing simple. They are conventional shapes — a flag, a penguin, an apple — and simon claims no trademark in them. Colour follows the terminal: escape codes are emitted only when stdout is a tty and `--no-color` was not passed, because this output is piped and pasted at least as often as it is read. Unknowns are grey rather than red — a desktop with no battery is not an error, and colouring it like one would train people to ignore the colour. Padding is computed over the uncoloured strings. Escape codes have no width, and counting them right-shifts every value on the line; `columns_line_up_whether_or_not_colour_is_on` strips the escapes and compares the two renderings rather than trusting that. Colour lives in the library rather than behind the `cli` feature's `colored` crate, so the summary exists in every build configuration. 11 fetch tests; all three targets compile with their own art. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
A
Adam Erickson committed
eded81709b73df4cb013bd1303dedc62e7800088
Parent: ec40ea2