![jupyterlab vim jupyterlab vim](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/233586/bf6c9136-54bc-afba-4430-73463067268f.png)
![jupyterlab vim jupyterlab vim](https://user-images.githubusercontent.com/226720/85191269-839f3180-b2be-11ea-8e5d-9148860cc2ff.png)
This is because both mapCommand and defineMotion act on codemirror.Vim which is shared across all the codemirror instances that are/will be opened. I think that these lines: (and tOption('extraKeys', extraKeys)) would need be run on the creation of a new editor, and everything else in that function acts globally.
![jupyterlab vim jupyterlab vim](https://tongfamily.com/wp-content/uploads/2021/06/pexels-photo-7319483.jpeg)
#Jupyterlab vim code#
The majority of the code in the _onActiveCellChanged function does not need to be run every time. I think the vim case would only need the proposed init hook.
#Jupyterlab vim install#
Today, if you install the vim extension, it will not be enabled/disabled by via the so-called VIM user settings, which is confusing for the user (see also jwkvam/jupyterlab-vim#106) Other developers have also built more features/extensions aroud vim:, Problem 1 - Separated from Text Editor VIMĪ first topic we could address is whether the VIM mode in cells should follow the same enabling/disabling rule as the text editor vim support. A fork has updated that initial extension for jlab2. The initial jupyterlab-vim has a lot of users and runs on jlab1.