jupyterlab-contrib / jupyterlab-vim

Vim notebook cell bindings for JupyterLab
https://jupyterlab-contrib.github.io/jupyterlab-vim.html
MIT License
691 stars 43 forks source link

Support JupyterLab 4.0 #85

Closed krassowski closed 1 year ago

krassowski commented 1 year ago

Closes https://github.com/jupyterlab-contrib/jupyterlab-vim/issues/68

Refactors the extension to use @replit/codemirror-vim plugin which is a CodeMirror 6 compatible port of the vim mode from CodeMirror 5.

Notes:

github-actions[bot] commented 1 year ago

Binder :point_left: Launch a binder notebook on branch krassowski/jupyterlab-vim/lab-4.0

ianhi commented 1 year ago

heroic :heart: :heart:! I will try to test this tomorrow - and for sure by monday

firai commented 1 year ago

Thanks for the epic work, @krassowski! I haven't tested every command, but the updated extension seems to work well. A couple of questions and comments:

krassowski commented 1 year ago

It seems like this PR only enables the CM vim plugin for notebook documents. Will a separate PR be required to enable the vim plugin for non-notebook documents (plain code, Markdown and text)?

This is correct. Enabling it in file editor in a follow-up PR should be rather easy.

When I press j from the last cell, the focus is stuck on the new "click to add a cell

This is being addressed upstream by https://github.com/jupyterlab/jupyterlab/pull/14796.

krassowski commented 1 year ago

Feel welcome to merge and release :)

ianhi commented 1 year ago

@krassowski can I check with you that im understanding the release process correctly?

It seems as though the right tokens for github release are in place here: https://github.com/jupyterlab-contrib/jupyterlab-contrib.github.io/issues/42

So the steps are:

  1. Push a commit updating history etc
  2. trigger the prep_release workflow
  3. trigger the publish workflow?
krassowski commented 1 year ago

Releaser will update the changelog and version for you, you just specify whether you want a major/minor/patch bump in the workflow dispatch form.

krassowski commented 1 year ago

releaser will either commit to master or open a pr depending on settings not sure now what will happen here. After prep release a draft version will be up in GitHub releases for review.