martinvonz / jj

A Git-compatible VCS that is both simple and powerful
https://martinvonz.github.io/jj/
Apache License 2.0
8.32k stars 284 forks source link

Screen corruption in `--interactive` with tabs #3944

Closed msuozzo closed 3 months ago

msuozzo commented 3 months ago

Description

I haven't isolated the exact problem but the interactive view is ~unusable for many of my diffs and it seems strongly correlated with the screen scrolling in the presence of tab characters. Another clue is that the 'cursor' bar which is highlighted seems to skip the tab characters, leaving a blank space in the highlight at the tab character and the highlight wrapping onto the following line.

Steps to Reproduce the Problem

  1. Create a screen's worth of diffs
  2. jj squash --interactive
  3. Scroll to the bottom of the screen

Expected Behavior

Normal scrolling

Actual Behavior

Corrupted text movement

Specifications

msuozzo commented 3 months ago

This looks like it's actually https://github.com/arxanas/scm-record/issues/2

arxanas commented 3 months ago

We just merged @firestack's https://github.com/arxanas/scm-record/pull/37 to fix this upstream 🙂.