Can't start search or enter command line mode


#1

Hi I’m developing an extension [1] for jupyterlab that makes all the codemirror instances be in vim mode. When I type “/” or “:” to search or enter command line mode neither has any effect. The rest of codemirror vim mode seems to work fine.

I was able to remap ‘/’ to a motion like ‘j’ and then ‘/’ works so it doesn’t seem like ‘/’ is getting captured by another layer. I’m not sure how to continue debugging. I tried using mapCommand to create a new search mapping but wasn’t able to figure out how to do it from the docs.

Sorry I know that’s not a lot to go on, I’d appreciate any tips.

Thanks,
Jacques

[1] https://github.com/jwkvam/jupyterlab_vim


#2

Keymaps registered with addKeyMap or extraKeys take precedence over the base keymap. Maybe something in Jupyter is adding bindings for those keys through such a mechanism? You can look at cm.getOption("extraKeys") or cm.state.keyMaps to see if there’s anything going on there.


#3

Thanks for the tips, I will look for that. In the meantime I also found this in the jupyter css files:

.jp-CodeMirrorEditor[data-type="inline"] .CodeMirror-dialog {
  display: none;
}

After I overrode that with display: inline I can see the command line dialog pop up now. I can’t enter text in the dialog. My suspicion now is that Jupyter disabled something instead of me using codemirror incorrectly. I think my next steps are to ask them what might be happening.

Thank you!