Notebooki Jupyter / IPython: Skrót do „uruchom wszystko”?

119

Czy istnieje skrót do uruchamiania wszystkich komórek w notebooku IPython?

A jeśli nie, czy ma to określony powód?

user3017048
źródło
Daj mi znać, jeśli znalazłeś sposób, aby to zrobić - byłoby to niezwykle przydatne !!!
makansij
8
Najbliższą rzeczą, jaką mogłem znaleźć, było wejście w tryb poleceń przez command+ shift+, Pa następnie wpisanie run all cellsi naciśnięcie enter?
makansij
Nie. Naciśnij esc+, Haby wyświetlić skróty klawiaturowe. Skróty są oszczędne ze względu na ograniczone opcje, które nie kolidują z istniejącymi skrótami przeglądarki.
pylang
Ctrl+ shift+ potwiera dla mnie okno przeglądania prywatnego w przeglądarce Firefox!
Färid Alijani
2
Doskonale współpracuje z Anacondą. Kliknąłem Pomoc> Edytuj skróty klawiaturowe> Uruchom wszystkie komórki i dodałem Shift-R (mój wybór).
Davidson Lima

Odpowiedzi:

78

W przypadku najnowszego notatnika jupyter (wersja 5) możesz przejść do zakładki „pomoc” w górnej części notatnika, a następnie wybrać opcję „edytuj skróty klawiaturowe” i dodać własny, dostosowany skrót do funkcji „uruchom wszystko”.

Arindam
źródło
8
To jest odpowiedź! Wielkie dzięki! Może jeden mały komentarz dla tych, którzy są trochę „niewidomi” jak ja: Musisz kliknąć „dodaj skrót” (wydaje się wyszarzone), a następnie dosłownie wpisać skrót, którego chcesz użyć.
user3017048
Od Jupyter 5.5 możesz przejść do Kernel -> Restart and Run All. Spowoduje to uruchomienie wszystkich komórek od góry do dołu.
Chinmoy
5
Jak właściwie wpisujesz skrót? Nic nie działa dla mnie, kiedy piszę.
mathtick
@mathtick, to jest sprzed jakiegoś czasu, ale w oknie edycji zobaczysz link „szczegóły definiowania skrótów klawiaturowych”, który zawiera szczegółowe informacje o wpisywaniu nowych skrótów. Zasadniczo musisz wpisać „Cmd” dla polecenia, zamiast naciskać „Cmd”.
exlo
1
@exlo Brak niebieskiego linku w przeglądarce operowej .... tylko ramka z tytułem „edytuj skróty trybu poleceń”, przycisk OK i nic więcej .....
adiro
51

W menu Komórka> „Uruchom wszystko” znajduje się skrót do uruchamiania wszystkich komórek. Nie jest to domyślnie powiązane ze skrótem klawiaturowym - musisz zdefiniować własne niestandardowe powiązanie z notatnika, jak opisano tutaj .

Na przykład, aby dodać powiązanie klawiatury, które umożliwia uruchamianie wszystkich komórek w notatniku, możesz wstawić to w komórce:

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

Jeśli uruchomisz ten kod z notatnika iPython, powinieneś zauważyć, że masz teraz powiązanie klawiatury, aby uruchomić wszystkie komórki (w tym przypadku naciśnij ctrl-M, a następnie r)

emunsing
źródło
1
Dodaj ten kod do ~/.jupyter/custom/custom.jsnotebooka i uruchom go ponownie, a skrót będzie zawsze dostępny dla wszystkich notebooków.
stason
Czy jest sposób na ucieczkę „od tej komórki dalej”?
Minh Nghĩa
34

Najłatwiejsze rozwiązanie:

Esc, Ctrl- A, Shift- Enter.

Vitor Abella
źródło
1
Proste i nieskomplikowane rozwiązanie bez problemów z jupyter.
sagarr
1
na Macu: Esc, Command-A, Shift-Enter. Działa w JupyterLab, a nie w notatniku Jupyter.
Joseph Sheedy,
6

Próbowałem to zrobić w Jupyter Lab, więc pomyślałem, że warto zamieścić tutaj odpowiedź. Możesz znaleźć skróty w ustawieniach, a także dodać własne, gdzie pełną listę możliwych skrótów znajdziesz tutaj .

Na przykład dodałem własny skrót do uruchamiania wszystkich komórek. W Jupyter Lab, w sekcji Ustawienia> Ustawienia zaawansowane, wybierz Skróty klawiaturowe, a następnie dodaj następujący kod do „Zastąpień użytkownika”:

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

Tutaj Shift + Backspace uruchomi wszystkie komórki w notatniku.

lstodd
źródło
Wystarczy zauważyć, że analogicznie, Shift-BackSpacemożna je wprowadzić w oknie dialogowym „Edytuj skróty klawiaturowe” dla wybranego polecenia, aby uzyskać ten sam wynik.
matanster
5

Jupyter Lab 1.0.4:

  1. W górnym menu przejdź do: Settings->Advanced Settings Editor->Keyboard Shortcuts

  2. Wklej ten kod w User Preferencesoknie:

{
    "shortcuts": [
        {
            "command": "runmenu:run-all",
            "keys": [
                "R",
                "R"
            ],
            "selector": "[data-jp-kernel-user]:focus"
        }
    ]
}
  1. Zapisz (w prawym górnym rogu user-preferencesokna)

Będzie to skuteczne natychmiast. Tutaj dwa kolejne naciśnięcia „R” uruchamiają wszystkie komórki (tak jak dwa „0” przy ponownym uruchomieniu jądra). W szczególności system defaultsma puste szablony dla wszystkich poleceń menu, w tym tego kodu (szukaj run-all). selectorZostała skopiowana z kernelmenu:restart, aby umożliwić drukowanie rw komórkach. To system defaultskopiowanie i wklejanie można uogólnić na dowolne polecenie.

Ran Feldesh
źródło
4

Od 5.5 możesz uruchomić Kernel > Restart and Run All

lisp-ceo
źródło
Aby być bardziej precyzyjnym: Kernel> Restart Run -> Run All Cells or: Run -> Restart Kernel and Run All Cells
Thomas Hubregtsen