• Home
  • Features
  • Pricing
  • Docs
  • Announcements
  • Sign In

umputun / revdiff / 25233880086

01 May 2026 09:26PM UTC coverage: 89.715% (+0.03%) from 89.69%
25233880086

push

github

web-flow
mute ↪ wrap continuation marker, add --wrap-indent (#166)

* feat(ui): mute ↪ wrap continuation marker, add --wrap-indent

Render the wrap continuation marker (↪) with MutedFg via raw ANSI
outside the lipgloss style block, matching the muted treatment of
the «/» horizontal scroll indicators. Previously the marker inherited
chroma syntax color or change-line foreground because the highlighted
line styles only set background and let content fg fall through.
Applied at all three wrap callsites: renderWrappedDiffLine,
renderWrappedCollapsedLine, renderDeletePlaceholder.

Add --wrap-indent N option (env REVDIFF_WRAP_INDENT, ini wrap-indent,
default 0). When > 0, the marker is followed by N bg-padded spaces so
wrapped continuation content visually hangs under the first row's
content rather than column-aligning with new bullets/items at the
same column. Useful when reviewing markdown lists where unindented
continuation can be misread as a new bullet.

wrapWidth() reserves the indent so total visual width stays consistent.
Clamps the indent so wrapWidth never drops below wrapMinContent (10) —
wrap mode skips horizontal scroll, so a sub-zero return would let
long lines overflow the pane silently. effectiveWrapIndent() mirrors
the clamp so the marker's indent padding stays in sync.

Search-match handling: in collapsed mode, search-matched rows now flip
bgColor to SearchBg so the marker (rendered outside lipgloss) and the
right-side extendLineBg padding stay on the same bg as the lineStyle
content, eliminating a bg seam. In --no-colors mode, where the
SearchMatch lipgloss style renders as Reverse(true), styledWrapMarker
takes a searchMatch bool and emits \x1b[7m...\x1b[27m around the marker
so search-matched continuation rows stay visually consistent across
both color modes.

Tests cover: muted-color emission across change types and color modes,
no-colors search-match reverse-video fallback, wrap-indent clamp at
boundaries (0, 4, exactly at clamp, past clamp, eq... (continued)

87 of 92 new or added lines in 4 files covered. (94.57%)

57 existing lines in 5 files now uncovered.

9508 of 10598 relevant lines covered (89.72%)

513.66 hits per line

Source File
Press 'n' to go to next uncovered line, 'b' for previous

96.51
/app/ui/diffview.go


Build SHA Not Found

The commit SHA "1d6497fd211d905c83c84d4f80b1752afc011225" was not found in your repository, so the file cannot be loaded. This may be because you posted from a local development environment, or your CI created an ephemeral commit.

STATUS · Troubleshooting · Open an Issue · Sales · Support · CAREERS · ENTERPRISE · START FREE TRIAL · SCHEDULE DEMO
ANNOUNCEMENTS · TWITTER · TOS & SLA · Supported CI Services · What's a CI service? · Automated Testing

© 2026 Coveralls, Inc