Conversation
The footer mixes [Usage], [Monitor], [Warmup] and [Watch] lines, so each message started at a different column and wrapped rows hung under their own tag. Format-UsageFooter now pads every tag to the widest one in the block, and Split-FooterLine hangs continuation rows under that shared column. The padding is applied at render time only: latch strings are compared by value and prefix, so the messages themselves stay unpadded. A block whose tags are all [Usage] renders unchanged.
The second clause restated what "the widest tag present" already implies.
Padding after the closing bracket left a wide gap between a short tag and its message, so the text read as detached from its label. Right-aligning the tag, as Cargo does for its status words, keeps one space after every tag while the messages still share one column.
…shortest Right-aligned tags left a ragged left edge that read as fuzzy under the left-aligned header. The tags are left-aligned again, and the message column is set so the shortest tag gets a 3-space gap (or the widest a 1-space gap, whichever lies further right). The fixed gap keeps the column step visible when the tags differ by only one character. A block whose tags all share one width stays unpadded.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
This release changes only the layout of the footer that
sca usageandsca monitorprint below the table. When the footer mixes tags of different widths ([Usage],[Monitor],[Warmup],[Watch]), every message now starts in one column. To upgrade, replace the file; nothing else changes.v4.3.2
[Tag]labels. The column sits 3 spaces after the shortest tag, or 1 space after the widest if that lies further right.sca usageadvisory ([Usage]lines alone) renders exactly as in v4.3.1.docs/images/monitor.svgand the twelvetheme-*.svgimages to match.Before:
After:
Why
With tags of different widths, each message started in a different column and wrapped rows hung under their own tag, so the footer read as ragged. Two other layouts were tried on
developand dropped. Padding exactly to the widest tag left[Warmup]/[Watch]-only frames with a gap too small to read as alignment. Right-aligned tags (the Cargo style) made the left edge ragged under the left-aligned[Usage] Plan usageheader. The fixed 3-space minimum gap keeps the column visible even when the tags differ by one character.The padding is added only when the footer is drawn (
Split-FooterLine -TagWidth, computed inFormat-UsageFooter). The message strings stay unpadded, because the monitor latches are compared by value and by prefix, and many tests pin the exact text.Shortcomings
[Monitor]latch first appears next to[Watch]. In practice the[Monitor]and[Warmup]latches are present from the first frame, so this is rare.[Sync],[Switch]and the one-shotsca warmupadvisory don't go through the footer and are not aligned.Feedback wanted
Mostly on the look: is the 3-space minimum gap right? I'm also looking for a second read of the head-placement branch in
Split-FooterLine. The word split would otherwise collapse the padding back to a single space as soon as a line wraps.Not done
sca usage/sca monitorrun against a real~/.claude. The change is verified through the Pester suite (1073 passed, coverage 98.8%) and the re-rendered images.