VSCodeVim / VSCodeVim/Vim

Failed to handle key `p`: Illegal argument: character must be non-negative

Open
#8,266 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
TypeScript
Stars
15.2k
Forks
1.5k
Avg merge
3d 18h
Merged PRs (30d)
6

Description

To Reproduce
Steps to reproduce the behavior:

  1. Go to '...'
  2. Click on '....'
  3. Scroll down to '....'
  4. See error

VSCodeVim version: 1.24.3

Stack trace
Error: Failed to handle key `p`: Illegal argument: character must be non-negative
    at v (/snap/code/119/usr/share/code/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:7:1267)
    at new p (/snap/code/119/usr/share/code/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:94:13424)
    at p.with (/snap/code/119/usr/share/code/resources/app/out/vs/workbench/api/node/extensionHostProcess.js:94:14386)
    at y.getCursorPosition (/home/paul/.vscode/extensions/vscodevim.vim-1.24.3/src/actions/commands/put.ts:403:27)
    at y.j [as exec] (/home/paul/.vscode/extensions/vscodevim.vim-1.24.3/src/actions/commands/put.ts:64:36)
    at y.execCount (/home/paul/.vscode/extensions/vscodevim.vim-1.24.3/src/actions/base.ts:215:42)
    at I.actionToRecord [as runAction] (/home/paul/.vscode/extensions/vscodevim.vim-1.24.3/src/mode/modeHandler.ts:739:47)
    at I.handledAsAction [as handleKeyAsAnAction] (/home/paul/.vscode/extensions/vscodevim.vim-1.24.3/src/mode/modeHandler.ts:688:43)
    at I.text [as handleKeyEvent] (/home/paul/.vscode/extensions/vscodevim.vim-1.24.3/src/mode/modeHandler.ts:505:11)
    at /home/paul/.vscode/extensions/vscodevim.vim-1.24.3/extensionBase.ts:359:73

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at src/actions/commands/put.ts, especially getCursorPosition around line 403, then trace the p key through the put command and the stack-trace entry points in modeHandler.ts. Reproduce the reported error if possible and verify that handling p no longer raises the non-negative-character exception.

Written by the indexing model from the issue text.

Assessment

Tech stack
typescript, vscode
Domain
devtools
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.