Commit Graph

2 Commits

Author SHA1 Message Date
nicolargo
a49b95acd8 fix(v5): load plugin — align corecount with load-average values
The header used '{:3}core' (7 chars) while load-average values used
'{:>6.2f}' (6 chars), so '16core' overhung the right edge by 1
character compared to '0.96'/'0.81'/'0.83'. Drop the int padding and
rjust the whole corecount cell to the same width as the value cells
(6 chars), keeping right edges aligned across all four rows of the
block.

Two new tests pin the invariant: every value cell shares the same
width, and every rendered line has the same total width.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 15:33:08 +02:00
nicolargo
2090888370 feat(v5): load plugin renderer + v4-faithful top-row ordering
Two related changes:

1. Top row order (v4 fidelity):
   build_frame now sorts frame.top / frame.left / frame.right by their
   slot-declared position (TOP_SLOT / LEFT_SLOT / RIGHT_SLOT), not the
   discovery order. Discovery is alphabetical (cpu, load, mem); v4
   renders cpu -> mem -> load. The sort fixes the order regardless of
   discovery order.

2. load plugin per-plugin TUI renderer:
   LOAD     16core
   1 min     0.96
   5 min     0.81
   15 min    0.83

   - Line 1: LOAD HEADER + Ncore suffix from cpucore (which is marked
     internal, so the generic renderer would skip it; here we use it
     specifically as the header suffix, mirroring v4).
   - Lines 2-4: 1 min / 5 min / 15 min + value formatted as {:>6.2f}.
   - Color decoration from _levels.minN (min5 / min15 watched).
   - Irix mode (v4 --disable-irix) deferred until v5 has the flag.

Reference: glances/plugins/load/__init__.py::msg_curse.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-13 15:30:14 +02:00