How to create a multi-line code snippet for Jupyter notebook
First, install nbextensions
conda install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user
Second, go to your jupyter notebook and open nbextensions settings to add features
Third, open custom.js
file and add the following codes
require(["nbextensions/snippets_menu/main"], function (snippets_menu) {
console.log('Loading `snippets_menu` customizations from `custom.js`');
var horizontal_line = '---';
var my_favorites = {
'name' : 'My favorites',
'sub-menu' : [
{
'name' : 'most_jupyter_magics',
'snippet' : ['%reload_ext autoreload',
'%autoreload 2',
'%matplotlib inline',
'from IPython.core.interactiveshell import InteractiveShell',
'InteractiveShell.ast_node_interactivity = "all"',],
},
{
'name' : 'kaggle download links',
'snippet' : ['from IPython.display import FileLinks',
'FileLinks(\'.\')',],
},
{
'name' : 'details_drop',
'snippet' : ['[/details][details=""]',],
},
{
'name' : 'find snippet custom js',
'snippet' : ['echo $(jupyter --config-dir)/custom/custom.js',],
},
],
};
snippets_menu.options['menus'].push(snippets_menu.default_menus[0]);
snippets_menu.options['menus'][0]['sub-menu'].push(horizontal_line);
snippets_menu.options['menus'][0]['sub-menu'].push(my_favorites);
console.log('Loaded `snippets_menu` customizations from `custom.js`');
});
Finally, refresh your notebook page, and you shall see the following
reference:
Jupyter docs on snippet