Change in () does not work when cursor is in the beginning of the line
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 15.2k
- Forks
- 1.5k
- Avg merge
- 3d 18h
- Merged PRs (30d)
- 6
Description
Describe the bug
"ci(" keystroke or change in ( does not behave like in vim i.e. it should jump into the brackets, clear the text and enter insert mode no matter where the cursor is on the line. The current implementation only works when the cursor is on one
of the brackets
To Reproduce
Steps to reproduce the behavior:
- Position the cursor on the beginning of a line with method name and brackets eg, def something(param1):
- In normal mode hit "c" + "i" + "("
- The cursor does not move into the bracket
Expected behavior
The cursor should move inside the brackets, clear the text and enter insert mode
Environment (please complete the following information):
- Extension (VsCodeVim) version: 1.24.3
- VSCode version: 1.73
- OS: WIn11
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the issue in the VSCodeVim extension using ci( at the beginning of a line such as def something(param1):. Trace the handling of the c, i, and ( key sequence, then verify that the cursor enters the brackets, clears their contents, and enters insert mode regardless of its position on the line.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 35/100