Failed to handle key ``: nvim_buf_set_lines: Buffer is not 'modifiable'
Open
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:
- Go to '...'
- Click on '....'
- Scroll down to '....'
- See error
VSCodeVim version: 1.24.3
Stack trace
Error: Error making request to nvim_buf_set_lines
at c.request (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/node_modules/neovim/lib/api/Base.js:76:23)
at c.setLines (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/node_modules/neovim/lib/api/Buffer.js:86:21)
at g.syncVSCodeToVim (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/src/neovim/neovim.ts:133:15)
at process.patch (node:internal/process/task_queues:96:5)
at g.statusBarText [as run] (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/src/neovim/neovim.ts:51:88)
at C.commandLine [as run] (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/src/cmd_line/commandLine.ts:295:19)
at b.mode [as run] (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/src/actions/commands/commandLine.ts:153:52)
at b.i [as exec] (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/src/actions/commands/commandLine.ts:33:60)
at b.execCount (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/src/actions/base.ts:184:42)
at I.actionToRecord [as runAction] (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/src/mode/modeHandler.ts:739:47)
at I.handledAsAction [as handleKeyAsAnAction] (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/src/mode/modeHandler.ts:688:43)
at I.text [as handleKeyEvent] (/Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/src/mode/modeHandler.ts:505:11)
at /Users/guozhenhua7/.vscode/extensions/vscodevim.vim-1.24.3/extensionBase.ts:359:73
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 with the stack trace and inspect src/neovim/neovim.ts around syncVSCodeToVim, especially the nvim_buf_set_lines call at line 133. Review how the buffer is selected and synchronized, then reproduce the reported key handling scenario and verify that synchronization no longer raises the non-modifiable-buffer error.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript, vscode
- Domain
- devtools, tooling
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100