Keyboard shortcut to clear cell output in Jupyter notebook
PythonJupyter NotebookPython Problem Overview
Does anyone know what is the keyboard shortcut to clear (not toggle) the cell output in Jupyter Notebook?
Python Solutions
Solution 1 - Python
You can setup your own shortcut in the UI (for the latest master version):
This menu can be found in Help > Keyboard Shortcuts
in any open notebook.
Solution 2 - Python
For versions less than 5:
Option 1 -- quick hack:
Change the cell type to raw then back to code: EscRY will discard the output.
Option 2 -- custom shortcut (without GUI):
For this, you need to edit the custom.js
file which is typically located at ~/.jupyter/custom/custom.js
(if it doesn't exist, create it).
In there, you have to add
require(['base/js/namespace']) {
// setup 'ctrl-l' as shortcut for clearing current output
Jupyter.keyboard_manager.command_shortcuts
.add_shortcut('ctrl-l', 'jupyter-notebook:clear-cell-output');
}
You can add shortcut there for all the fancy things you like, since the 2nd argument can be a function (docs)
If you want mappings for other standard commands, you can dump a list of all available commands by running the following in your notebook:
from IPython.core.display import Javascript
js = """
var jc_html = "";
var jc_array = Object.keys(IPython.notebook.keyboard_manager.command_shortcuts.actions._actions);
for (var i=0;i<jc_array.length;i++) {
jc_html = jc_html + jc_array[i] + "<br >";
}
element.html(jc_html);
"""
Javascript(data=js, lib=None, css=None)
Solution 3 - Python
Add following at start of cell and run it:
from IPython.display import clear_output
clear_output(wait=True)
Solution 4 - Python
Just adding in for JupyterLab users. Ctrl, (advanced settings) and pasting the below in User References under keyboard shortcuts does the trick for me.
{
"shortcuts": [
{
"command": "notebook:hide-cell-outputs",
"keys": [
"H"
],
"selector": ".jp-Notebook:focus"
},
{
"command": "notebook:show-cell-outputs",
"keys": [
"Shift H"
],
"selector": ".jp-Notebook:focus"
}
]
}
Solution 5 - Python
Solution 6 - Python
Depends if you consider the command palette a short-cut. I do.
- Press 'control-shift-p', that opens the command palette.
- Then type 'clear cell output'. That will let you select the command to clear the output.
Solution 7 - Python
I just looked and found cell|all output|clear which worked with:
Server Information: You are using Jupyter notebook.
The version of the notebook server is: 6.1.5 The server is running on this version of Python: Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)]
Current Kernel Information: Python 3.8.3 (tags/v3.8.3:6f8c832, May 13 2020, 22:37:02) [MSC v.1924 64 bit (AMD64)] Type 'copyright', 'credits' or 'license' for more information IPython 7.19.0 -- An enhanced Interactive Python. Type '?' for help.
Solution 8 - Python
You can do this via the command line:
jupyter nbconvert --ClearOutputPreprocessor.enabled=True --inplace *.ipynb
Solution 9 - Python
Solution 10 - Python
To delete/clear individual cell outputs in JupyterLab (without going to Edit > Clear Output), go to Settings>Advanced Settings Editor (Ctrl+,)>Keyboard Shortcuts and add this to "shortcuts": [...]
{ "command": "notebook:clear-cell-output", "keys": [ "Shift D", "Shift D" ], "selector": ".jp-Notebook:focus" }
And save it! (Ctrl + S)
Then when you are in the editor, just press Esc to escape the edit mode and press Shift + d + d.