jupyterlab-contrib / rise

RISE: "Live" Reveal.js JupyterLab Slideshow Extension
BSD 3-Clause "New" or "Revised" License
176 stars 17 forks source link

Keyboard shortcut conflict for Escape #14

Open nthiery opened 1 year ago

nthiery commented 1 year ago

Description

When both in full-screen mode and edit mode, hitting esc is ambiguous: exit the full-screen or switch to command mode.

Reproduce

  1. Follow jupyterlab-rise's binder link
  2. Slides switches automatcailly to full-screen mode
  3. Press Enter or double clic on a cell to enter edit mode
  4. Hit Escape
  5. The slideshow exits full-screen mode

Expected behavior

Switch to command-mode

Discussion

The rationale is that Escape is used extensively when editing notebooks, and thus hardcoded in the users's fingers, whereas escaping full screen mode is done just now and then. One could still escape full screen mode by typing Escape a second time.

However this could be a standard shortcut of browsers; in that case it's annoying to break a convention. It could even be that browsers would not allow to change this shortcut.

Context

Python package version: jupyterlab-rise 0.1.1

Extension version:
jovyan@jupyter-jupyterlab-2dcontrib-2drise-2d3i1fpld4:~$ jupyter labextension list
JupyterLab v3.6.1
/srv/conda/envs/notebook/share/jupyter/labextensions
        jupyter-offlinenotebook v0.2.2 enabled OK
        jupyterlab_pygments v0.2.2 enabled OK (python, jupyterlab_pygments)
        jupyterlab-rise v0.1.0 enabled OK (python, jupyterlab_rise)
        @jupyter-widgets/jupyterlab-manager v5.0.5 enabled OK (python, jupyterlab_widgets)
        @jupyter-server/resource-usage v0.7.0 enabled OK (python, jupyter-resource-usage)

jovyan@jupyter-jupyterlab-2dcontrib-2drise-2d3i1fpld4:~$ jupyter server extension list
Config dir: /home/jovyan/.jupyter

Config dir: /srv/conda/envs/notebook/etc/jupyter
    jupyter_resource_usage enabled
    - Validating jupyter_resource_usage...
      jupyter_resource_usage 0.7.0 OK
    jupyter_server_fileid enabled
    - Validating jupyter_server_fileid...
      jupyter_server_fileid 0.6.0 OK
    jupyter_server_ydoc enabled
    - Validating jupyter_server_ydoc...
      jupyter_server_ydoc 0.6.1 OK
    jupyterlab enabled
    - Validating jupyterlab...
      jupyterlab 3.6.1 OK
    jupyterlab_rise enabled
    - Validating jupyterlab_rise...
      jupyterlab_rise 0.1.1 OK
    nbclassic enabled
    - Validating nbclassic...
      nbclassic 0.5.1 OK
    notebook_shim enabled
    - Validating notebook_shim...
      notebook_shim  OK
    jupyter_offlinenotebook enabled
    - Validating jupyter_offlinenotebook...
      jupyter_offlinenotebook  OK

Config dir: /usr/local/etc/jupyter
Command Line Output
N/A
Web Browser Output

GEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/113.dd66397047ecb9a605cf.js?v=dd66397047ecb9a605cf
[HTTP/2 304 Not Modified 111ms]

GEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/150.b0e841b75317744a7595.js?v=b0e841b75317744a7595
[HTTP/2 304 Not Modified 109ms]

GEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/699.563670613eea7b633a22.js?v=563670613eea7b633a22
[HTTP/2 304 Not Modified 111ms]

GEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/extensions/@jupyter-widgets/jupyterlab-manager/static/134.40eaa5b8e976096d50b2.js?v=40eaa5b8e976096d50b2
[HTTP/2 304 Not Modified 155ms]

GEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/extensions/@jupyter-server/resource-usage/static/135.7cb9ac4aa0ab3f972930.js?v=7cb9ac4aa0ab3f972930
[HTTP/2 304 Not Modified 155ms]

GEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/extensions/@jupyter-server/resource-usage/static/643.bb8b6dae69fd08b5d52f.js?v=bb8b6dae69fd08b5d52f
[HTTP/2 304 Not Modified 151ms]

Error in parsing value for ‘content’.  Declaration dropped. README.ipynb:1:174
Ruleset ignored due to bad selector. README.ipynb:1:1318
Error in parsing value for ‘display’.  Declaration dropped. README.ipynb:1:2750
Unknown property ‘-moz-osx-font-smoothing’.  Declaration dropped. README.ipynb:11:27
Unknown property ‘-moz-box-shadow’.  Declaration dropped. README.ipynb:504:19
Activating jupyter-offlinenotebook JupyterLab extension 143.3a0a7be92ffa9c15c416.js:1:882
XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/api/kernelspecs?1676568670126
[HTTP/2 200 OK 111ms]

Plugin '@jupyter-server/resource-usage:memory-status-item' failed to activate. index.es6.js:2288:24
Error: No provider for: @jupyterlab/statusbar:IStatusBar.
    d index.es6.js:2191
    u index.es6.js:52
    u index.es6.js:33
    u index.es6.js:26
    u index.es6.js:22
    resolveRequiredService index.es6.js:2184
    n index.es6.js:2081
    d index.es6.js:2081
    u index.es6.js:52
    u index.es6.js:33
    u index.es6.js:26
    u index.es6.js:22
    activatePlugin index.es6.js:2065
    r index.es6.js:2287
    start index.es6.js:2286
    60880 index.js:248
    60880 index.js:251
    Webpack 5
index.es6.js:2289:24
XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings?1676568670139
[HTTP/2 200 OK 258ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/offlinenotebook/config
[HTTP/2 304 Not Modified 256ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/api/kernels?1676568670148
[HTTP/2 200 OK 169ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/api/sessions?1676568670149
[HTTP/2 200 OK 169ms]

Certains cookies utilisent incorrectement l’attribut recommandé « SameSite » 37
XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/api/kernelspecs?1676568670266
[HTTP/2 200 OK 119ms]

offline-notebook repoid: https://github.com/jupyterlab-contrib/rise 143.3a0a7be92ffa9c15c416.js:1:1057
offline-notebook repoLabel: GitHub 143.3a0a7be92ffa9c15c416.js:1:1189
offline-notebook binderRefUrl: https://github.com/jupyterlab-contrib/rise/tree/ad010e6b7fde6eb1584b13a15ae647107cc016bb 143.3a0a7be92ffa9c15c416.js:1:1254
offline-notebook binderPersistentUrl: https://mybinder.org/v2/gh/jupyterlab-contrib/rise/ad010e6b7fde6eb1584b13a15ae647107cc016bb 143.3a0a7be92ffa9c15c416.js:1:1329
XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/api/contents/examples?content=1&1676568671060
[HTTP/2 200 OK 124ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/translations/default?1676568671545
[HTTP/2 200 OK 182ms]

Language pack 'en_US' not installed! 7819.bundle.js:1:5795
JupyterLab extension jupyterlab-rise is activated! 112.489c482bbad3766cb6f2.js:1:4453
XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/shortcuts-extension:shortcuts?1676568671847
[HTTP/2 200 OK 365ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/docmanager-extension:plugin?1676568671849
[HTTP/2 200 OK 477ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/notebook-extension:panel?1676568671850
[HTTP/2 200 OK 362ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings?1676568672282
[HTTP/2 200 OK 353ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/api/contents/examples/README.ipynb?type=notebook&content=1&1676568672317
[HTTP/2 200 OK 263ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/application-extension:context-menu?1676568672347
[HTTP/2 200 OK 266ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/shortcuts-extension:shortcuts?1676568672386
[HTTP/2 200 OK 252ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/mainmenu-extension:plugin?1676568672661
[HTTP/2 200 OK 121ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/htmlviewer-extension:plugin?1676568672663
[HTTP/2 200 OK 140ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/fileeditor-extension:plugin?1676568672667
[HTTP/2 200 OK 146ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/filebrowser-extension:widget?1676568672668
[HTTP/2 200 OK 118ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/csvviewer-extension:tsv?1676568672670
[HTTP/2 200 OK 545ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/csvviewer-extension:csv?1676568672672
[HTTP/2 200 OK 546ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/lab/api/settings/@jupyterlab/cell-toolbar-extension:plugin?1676568672675
[HTTP/2 200 OK 541ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/api/metrics/v1?1676568672687
[HTTP/2 200 OK 545ms]

GEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/rise/examples/static/components/MathJax/MathJax.js?config=TeX-AMS-MML_HTMLorMML-full,Safe&delayStartupUntil=configured
[HTTP/2 200 OK 470ms]

GEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/rise/examples/slide-toolbar.png
GEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/rise/examples/toolbar-options.png
XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/api/contents/examples/README.ipynb/checkpoints?1676568673195
[HTTP/2 200 OK 158ms]

XHRGEThttps://hub.gke2.mybinder.org/user/jupyterlab-contrib-rise-0aks8dw2/api/contents/examples/README.ipynb/checkpoints?1676568673198
[HTTP/2 200 OK 159ms]

Convert notebook /examples/README.ipynb to slideshow. rise.js:88:28
Loading failed for the  Githubissues.
            
  • Githubissues is a development platform for aggregating issues.