Ноутбуки Jupyter / IPython: ярлык для «запустить все»?

119

Есть ли ярлык для запуска всех ячеек в записной книжке IPython?

А если нет, то есть ли на это конкретная причина?

user3017048
источник
Пожалуйста, дайте мне знать, если вы нашли способ сделать это - это было бы чрезвычайно полезно !!!
makansij
8
Самое близкое, что я смог найти, - это войти в командный режим с помощью command+ shift+, Pа затем ввести run all cellsи нажать Enter?
makansij
Нет. Нажмите esc+, Hчтобы отобразить сочетания клавиш. Ярлыки экономны из-за ограниченных возможностей, которые не мешают работе существующих ярлыков браузера.
pylang
Ctrl+ shift+ pоткрывает для меня приватное окно просмотра в firefox!
Ферид Алиджани
2
Отлично работает с Anaconda. Я щелкнул «Справка»> «Изменить сочетания клавиш»> «Выполнить все ячейки» и добавил Shift-R (на мой выбор).
Дэвидсон Лима

Ответы:

78

Для последней записной книжки jupyter (версия 5) вы можете перейти на вкладку «Справка» в верхней части записной книжки, а затем выбрать опцию «редактировать сочетания клавиш» и добавить свой собственный настраиваемый ярлык для функции «запустить все».

Arindam
источник
8
Это ответ! Большое спасибо! Может быть, один небольшой комментарий для тех, кто немного «слеп» вроде меня: вы должны нажать на «добавить ярлык» (кажется серым), а затем буквально ввести ярлык, который вы хотите использовать.
user3017048
Начиная с Jupyter 5.5, вы можете перейти в Kernel -> Restart and Run All. Это запустит все ячейки сверху вниз.
Chinmoy
5
Как вы на самом деле набираете ярлык? Когда я печатаю, у меня ничего не получается.
mathtick
@mathtick, это было некоторое время назад, но в окне редактирования вы увидите ссылку «Сведения об определении сочетаний клавиш», в которой подробно описано, как вводить новые сочетания клавиш. По сути, вы должны ввести команду «Cmd» вместо нажатия «Cmd».
exlo 08
1
@exlo Нет синей ссылки в браузере Opera .... только поле с заголовком "редактировать ярлыки командного режима", кнопка ОК и ничего больше ...
Адиро
51

В меню «Ячейка»> «Выполнить все» есть ярлык для запуска всех ячеек. По умолчанию это не связано с сочетанием клавиш - вам нужно будет определить свою собственную привязку из записной книжки, как описано здесь .

Например, чтобы добавить привязку клавиатуры, которая позволяет запускать все ячейки в записной книжке, вы можете вставить это в ячейку:

%%javascript

Jupyter.keyboard_manager.command_shortcuts.add_shortcut('r', {
    help : 'run all cells',
    help_index : 'zz',
    handler : function (event) {
        IPython.notebook.execute_all_cells();
        return false;
    }}
);

Если вы запустите этот код из записной книжки iPython, вы обнаружите, что теперь у вас есть привязка клавиатуры для запуска всех ячеек (в этом случае нажмите ctrl-M, а затем r)

emunsing
источник
1
Добавьте этот код ~/.jupyter/custom/custom.jsи перезапустите записную книжку, и ярлык будет всегда доступен для всех записных книжек.
stason
Есть ли способ бежать «от этой клетки и дальше»?
Минь Нгха,
34

Самое простое решение:

Esc, Ctrl- A, Shift- Enter.

Витор Абелла
источник
1
Простое и понятное решение без проблем с jupyter.
sagarr
1
на Mac: Esc, Command-A, Shift-Enter. Работает в JupyterLab, а не в блокноте Jupyter.
Джозеф Шиди,
6

Я пытался сделать это в Jupyter Lab, поэтому подумал, что было бы полезно опубликовать ответ здесь. Вы можете найти ярлыки в настройках, а также добавить свои собственные, где полный список возможных ярлыков можно найти здесь .

Например, я добавил свой собственный ярлык для запуска всех ячеек. В Jupyter Lab в разделе «Настройки»> «Дополнительные настройки» выберите «Сочетания клавиш», затем добавьте следующий код в «Переопределения пользователей»:

{
    "notebook:run-all-cells": {
      "command": "notebook:run-all-cells",
      "keys": [
        "Shift Backspace"
      ],
      "selector": ".jp-Notebook.jp-mod-editMode"
    }
}

Здесь Shift + Backspace запустит все ячейки в записной книжке.

lstodd
источник
Просто отметим, что, что эквивалентно, Shift-BackSpaceможно ввести в диалоговом окне пользовательского интерфейса «Редактировать сочетания клавиш» команду по вашему выбору, чтобы получить тот же результат.
Matanster
5

Jupyter Lab 1.0.4:

  1. В верхнем меню перейдите к: Settings->Advanced Settings Editor->Keyboard Shortcuts

  2. Вставьте этот код в User Preferencesокно:

{
    "shortcuts": [
        {
            "command": "runmenu:run-all",
            "keys": [
                "R",
                "R"
            ],
            "selector": "[data-jp-kernel-user]:focus"
        }
    ]
}
  1. Сохранить (вверху справа в user-preferencesокне)

Это вступит в силу немедленно. Здесь два последовательных нажатия клавиши «R» запускают все ячейки (точно так же, как два нажатия «0» для перезапуска ядра). Примечательно, что system defaultsесть пустые шаблоны для всех команд меню, включая этот код (поиск run-all). Файл selectorбыл скопирован kernelmenu:restart, чтобы разрешить печать rвнутри ячеек. Этот system defaultsкопипаст может быть обобщен для любой команды.

Ран Фельдеш
источник
4

Начиная с версии 5.5 вы можете запускать Kernel > Restart and Run All

лисп-генеральный директор
источник
Чтобы быть более точным: Kernel> Restart Run -> Run All Cells или: Run -> Restart Kernel and Run All Cells
Thomas Hubregtsen