Skip to content

fix ^-right on tab-indented lines - #400

Closed
DSeaStar wants to merge 1 commit into
asottile:mainfrom
DSeaStar:fix-ctrl-right-tab-indent
Closed

DSeaStar wants to merge 1 commit into
asottile:mainfrom
DSeaStar:fix-ctrl-right-tab-indent

Conversation

@DSeaStar

Copy link
Copy Markdown

Fixes #237.

^-Right from column 0 on a tab-indented line jumped into/through the word, while the same line indented with spaces landed on the first character. A tab is a single whitespace character, so the existing "step once, then keep going while the type matches" loop classified the first letter of the word and consumed it.

When the prefix through the current character is still whitespace, skip the rest of that leading whitespace instead. Mid-line word jumps (including a space between words) are unchanged.

tests/features/movement_test.py::test_ctrl_right_tab_indent_lands_on_word covers the tab vs spaces case from the issue. The existing movement tests still pass.

A single tab is one character, so the existing "step then classify"
loop treated it like an inter-word space and consumed the following
word. Skip leading whitespace instead so a tab indent lands on the
same character as a space indent.
@asottile asottile closed this Aug 14, 2026
Repository owner locked as spam and limited conversation to collaborators Aug 14, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

jump-by-word (^+right) goes too far when tabs are involved

2 participants