Я хотел бы сделать точно то, о чем спрашивали и отвечали в посте Как я могу скрыть код и перезапустить все ячейки в блокноте jupyter? , но в JupyterLab. Некоторое время назад это просто казалось невозможным. Но после выпуска v0.33 я полагаю, что это должно быть возможно, поскольку:
Javascript выполнение в ячейках ноутбука было повторно включено
Но если я попытаюсь запустить приведенный ниже сценарий, единственное, что происходит в JupyterLab, - это то, что получается такой вывод:
Вывод:
Button(description='Refresh', style=ButtonStyle())
Код:
from IPython.display import HTML
HTML('''<script>
function code_toggle() {
if (code_shown){
$('div.input').hide('500');
$('#toggleButton').val('Show code')
} else {
$('div.input').show('500');
$('#toggleButton').val('Hide code')
}
code_shown = !code_shown
}
$( document ).ready(function(){
code_shown=false;
$('div.input').hide()
});
</script>
<form action="javascript:code_toggle()"><input type="submit" id="toggleButton" value="Show code"></form>''')
from IPython.display import Javascript, display
from ipywidgets import widgets
def run_all(ev):
display(Javascript('IPython.notebook.execute_cells_below()'))
button = widgets.Button(description="Refresh")
button.on_click(run_all)
display(button)
Итак, кто-нибудь знает, возможно ли это в JupyterLab?