【问题标题】:Jupyter/IPython Notebooks: Shortcut for "run all"?Jupyter/IPython Notebooks:“全部运行”的快捷方式?
【发布时间】:2016-01-13 15:05:48
【问题描述】:

是否有在 IPython 笔记本中运行 所有 个单元的快捷方式?

如果没有,这是否有特定原因?

【问题讨论】:

  • 如果你找到了办法,请告诉我——这将非常有用!!!
  • 我能找到的最接近的方法是通过command + shift + P 进入命令模式,然后输入run all cells 并回车?
  • 没有。按esc + H 显示键盘快捷键。由于不干扰现有浏​​览器快捷方式的有限选项,快捷方式很少使用。
  • Ctrl + shift + p 在 Firefox 中为我打开一个隐私浏览窗口!
  • 与 Anaconda 完美配合。我点击了帮助 > 编辑键盘快捷键 > 运行所有单元格并添加了 Shift-R(我的选择)。

标签: keyboard-shortcuts jupyter-notebook


【解决方案1】:

对于最新的 jupyter notebook(第 5 版),您可以转到 notebook 顶部的“帮助”选项卡,然后选择“编辑键盘快捷键”选项并添加您自己自定义的“全部运行”快捷方式'函数。

【讨论】:

  • 这就是答案!非常感谢!对于像我这样有点“盲”的人来说,也许有一条小评论:您必须单击“添加快捷方式”(似乎是灰色的),然后逐字输入您要使用的快捷方式。
  • 从 Jupyter 5.5 开始,您可以转到 Kernel -> Restart and Run All。这将从上到下运行所有​​单元格。
  • 您是如何实际键入快捷方式的?当我输入时,没有任何东西对我有用。
  • @mathtick,这是不久前的,但您在编辑窗口中会看到“定义键盘快捷键的详细信息”链接,其中详细说明了如何输入新的快捷键。本质上,您必须为命令键入“Cmd”,而不是按“Cmd”。
  • @exlo Opera 浏览器中没有蓝色链接......只是一个标题为“编辑命令模式快捷方式”的框,一个确定按钮,没有别的......
【解决方案2】:

最简单的解决方案:

Win/Linux:

  1. Esc(取消选择潜在的单元格或编辑模式)

  2. CtrlA(选择所有单元格)

  3. ShiftEnter(运行所有选择)

苹果机:

  1. Esc(取消选择潜在的单元格或编辑模式)

  2. A(选择所有单元格)

  3. ShiftEnter(运行所有选择)

【讨论】:

  • 简单直接的解决方案,不会弄乱 jupyter。
  • 在 Mac 上:Esc、command-A、Shift-Enter。在 JupyterLab 中工作,而不是在 Jupyter notebook 中工作。
【解决方案3】:

在“单元格”>“全部运行”下有一个菜单快捷方式可以运行所有单元格。默认情况下,这不会绑定到键盘快捷键 - 您必须在笔记本中定义自己的自定义绑定,as described here

例如,要添加一个键盘绑定,让您可以运行笔记本中的所有单元格,您可以将其插入到一个单元格中:

%%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)

【讨论】:

  • 将此代码添加到~/.jupyter/custom/custom.js并重新启动笔记本,所有笔记本都可以使用快捷方式。
  • 有没有办法“从这个单元格开始”运行?
【解决方案4】:

Jupyter 实验室 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 复制粘贴可以推广到任何命令。

【讨论】:

    【解决方案5】:

    我一直在 Jupyter Lab 中尝试这样做,所以认为在这里发布答案可能很有用。您可以在设置中找到快捷方式,也可以添加自己的快捷方式,可以在here 找到可能的快捷方式的完整列表。

    例如,我添加了自己的快捷方式来运行所有单元格。在 Jupyter Lab 中,在 Settings > Advanced Settings 下,选择 Keyboard Shortcuts,然后将以下代码添加到“User Overrides”:

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

    在这里,Shift + Backspace 将运行笔记本中的所有单元格。

    【讨论】:

    • 请注意,等效地,Shift-BackSpace 可以在“编辑键盘快捷方式”UI 对话框中输入,对于您选择的命令,产生相同的结果。
    【解决方案6】:

    从 5.5 开始,您可以运行 Kernel > Restart and Run All

    【讨论】:

    • 更准确地说:内核>重新启动运行->运行所有单元或:运行->重新启动内核并运行所有单元
    【解决方案7】:

    在 windows/linux 中:

    Ctrl + A (全选)

    Ctrl + Enter (运行选定的单元格)

    【讨论】:

      【解决方案8】:

      使用 IPython 在 Visual Studio Code 中为我工作的一个非常简单的方法是添加以下内容:

      {
          "key": "ctrl+space",
          "command": "jupyter.runallcells"
        }
      

      到您可以通过键入 F1 和“打开键盘快捷键”访问的 keybindings.json。

      【讨论】:

        猜你喜欢
        • 2019-08-12
        • 2012-06-14
        • 1970-01-01
        • 2017-07-11
        • 1970-01-01
        • 2018-08-23
        • 2016-11-06
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多