Public bug reported:

Note: The following bug report is written by AI (ChatGPT). However, I
actually encountered the bug, verified and resolved it with the help of
ChatGPT, and then asked it to write up a bug report. The rest of this
description is the report that it generated. I am also uploading a
screenshot showing the issue in the browser (Firefox).


After upgrading Ubuntu to 26.04.1 LTS, Vim editing in Jupyter Notebook
6.4.13 stopped working.

The notebook extension `jupyter-vim-binding` remains installed and
enabled, and `jupyter nbextension list` reports `Validating: OK`.

However, the browser's JavaScript console reports:

    GET /static/components/codemirror/keymap/vim.js

followed by:

    Failed to load extension:
    ["codemirror/keymap/vim"]
    Error: Script error for "codemirror/keymap/vim",
    needed by: nbextensions/vim_binding/lib/codemirror

Investigation revealed that
`/usr/share/javascript/codemirror/keymap/vim.js` is missing.

The older Debian package based on CodeMirror 5.65.0 included this file,
while the newer package based on CodeMirror 5.65.20 does not.


WORKAROUND

Downloading `keymap/vim.js` from the upstream CodeMirror 5.65.0 release
and installing it manually at:

    /usr/share/javascript/codemirror/keymap/vim.js

immediately restores Vim functionality in Jupyter Notebook.

The file was downloaded from:

https://raw.githubusercontent.com/codemirror/codemirror5/5.65.0/keymap/vim.js


EXPECTED BEHAVIOR

The CodeMirror 5 Vim keymap should remain available, either through
`libjs-codemirror` or an appropriate additional package.


ACTUAL BEHAVIOR

The missing JavaScript file prevents applications that depend on
CodeMirror's Vim keymap from activating Vim editing.

This appears to be a regression introduced by the update from CodeMirror
5.65.0 to 5.65.20.

Could the package maintainers investigate whether the Vim keymap was
unintentionally omitted during packaging?


Finally, here is the package version:

$ apt-cache policy libjs-codemirror
libjs-codemirror:
  Installed: 5.65.20+~cs5.83.25-1
  Candidate: 5.65.20+~cs5.83.25-1
  Version table:
 *** 5.65.20+~cs5.83.25-1 500
        500 http://archive.ubuntu.com/ubuntu resolute/universe amd64 Packages
        100 /var/lib/dpkg/status

** Affects: codemirror-js (Ubuntu)
     Importance: Undecided
         Status: New

** Attachment added: "Browser screenshot showing the issue"
   
https://bugs.launchpad.net/bugs/2170694/+attachment/6008679/+files/Vim_mode_4.png

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/2170694

Title:
  libjs-codemirror 5.65.20 missing keymap/vim.js, breaking Vim bindings
  in Jupyter Notebook

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/codemirror-js/+bug/2170694/+subscriptions


-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to