Feature: Allow disabling vim for certain contexts, e.g. Jupyter notebooks
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 15.2k
- Forks
- 1.5k
- Avg merge
- 3d 18h
- Merged PRs (30d)
- 6
Description
Is your feature request related to a problem? Please describe.
VSCodeVim is known to make Jupyter notebooks hard to use. This issue has received lots of comments and thumbs even after it was closed, showing that this continues to be a real problem for many users: https://github.com/VSCodeVim/Vim/issues/6950
Describe the solution you'd like
The vim extension should offer a better way to coexist with Jupyter notebooks without requiring users to manually switch off the extension. For example, it would be great if one could configure vim to be disabled in jupyter notebook text fields.
Additional context
- Issue #6950 was closed as a duplicate/completed, but it doesn't really seem to be either.
- There's a nearly 3 year old issue with the goal of improving Jupyter notebook compatibility, but nothing seems to have happened there: https://github.com/VSCodeVim/Vim/issues/6104, it lists two known issues, but I think there are more issues
- jk on cell boundary (it should move to near cell) [marked as fixed]
- alt+delete to clear output doesn't work
- This issue has 20 thumbs ups and asks for the ability to disable vim for specific file types: https://github.com/VSCodeVim/Vim/issues/6151
Other issues related to Jupyter notebooks:
- https://github.com/VSCodeVim/Vim/issues/8609
- https://github.com/VSCodeVim/Vim/issues/8457
- https://github.com/VSCodeVim/Vim/issues/8372
- https://github.com/VSCodeVim/Vim/issues/8089
- Item 1 of: https://github.com/VSCodeVim/Vim/issues/8012#issuecomment-1412269228
- https://github.com/VSCodeVim/Vim/issues/7635
- https://github.com/VSCodeVim/Vim/issues/6649
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
No files, tests, or implementation entry points are named. Start by reviewing related issues #6950, #6104, and #6151, then determine how Jupyter notebook text fields are identified and how Vim can be disabled for them. Done means users can configure this behavior without manually switching the extension off.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- jupyter-notebook, typescript, vscode
- Domain
- developer-experience, tooling
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 30/100