Горячие клавиши Jupyter Lab: повышаем производительность – актуально и для Jupyter Notebook

Вы начинающий пользователь Jupyter Notebook или Jupyter Lab? Или вы просто хотите ускорить свою работу и реже использовать мышь? В таком случае перечисленные ниже комбинации клавиш – именно то, что вам нужно. При желании можете перейти прямо к горячим клавишам, но сначала мы хотим дать вам немного полезных знаний.

Что такое Jupyter Notebook?

С одной стороны, Jupyter Notebook является форматом файлов с расширением ipynb, предназначенных для форматированного текста, кода и вставленных в код визуальных представлений вроде графиков, таблиц и т. д. По своей сути, это просто файл JSON. Изначально формат создавался для языков Julia, Python и R (отсюда и название Jupyter) с основным акцентом на Python, однако в таких файлах может содержаться любой язык программирования на ваш выбор. Правда, есть смысл использовать только те, которые также поддерживаются в программах Jupyter Notebook или Jupyter Lab. В настоящее так называемое ядро для Jupyter есть примерно у пятидесяти языков программирования.

Файлы Jupyter Notebook широко распространены в сфере науки о данных. Например, на Kaggle можно найти много таких ноутбуков как для Python, так и для R. Кстати, Github тоже поддерживает формат, поэтому ноутбуки правильно там отображаются. Благодаря этому книга Python Data Science Handbook в полном объёме доступна в виде ноутбуков на Github.

Программа под названием Jupyter Notebook представляет собой веб-интерфейс для создания файлов ipynb. Называть её полноценной средой разработки было бы сильным преувеличением. Однако Jupyter Notebook идеально подходит для исследовательского анализа или для оперативного анализа данных с визуализацией результатов, а также для обучения. Готовые ноутбуки также можно экспортировать в форматах HTML или PDF.

Программа Jupyter Notebook входит в дистрибутив Anaconda, но её также можно установить через pip или conda. Если вам нужно больше информации об Anaconda, у нас в блоге есть статья об этом дистрибутиве. Jupyter Lab – более продвинутая программа с большим количеством функций.

Jupyter Notebook или Jupyter Lab? Что лучше?

Ясное дело, лучше использовать Jupyer Lab! Это официальный преемник Jupyter Notebook, который в конце концов должен полностью заменить его. Среди преимуществ, Jupyter Lab позволяет открыть несколько вкладок в одном окне браузера. Кроме того, вы можете открыть консоль, а также установить множество различных расширений. Формат файла не изменился – это по-прежнему ipynb, однако редактор стал намного более удобным.

Создание ноутбука ipynb

Ноутбук состоит из ячеек, которые являются чем-то вроде разделов или глав. В каждой ячейке содержится либо отформатированный текст в формате Markdown, либо код. В ячейках Markdown могут находиться заголовки, ссылки, графики, математические формулы (Latex) или даже таблицы. Если вы нажмёте кнопку запуска кодовой ячейки, под ней появится вывод либо в виде текста из консоли, либо в виде шикарных графиков.

Режим навигации и режим редактирования

Предположим, вам надо что-то записать в ячейку. Для этого используется режим редактирования. Чтобы перейти в него из режима навигации, нажмите клавишу ENTER.

Если же вы хотите перемещаться между ячейками взад и вперёд, вставлять новые ячейки, удалять их и так далее, вам нужен режим навигации (его ещё называют командным режимом). Чтобы переключиться в него, нажмите клавишу ESC.

Основные горячие клавиши в Jupyter Lab

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

Комбинация клавиш Режим Описание
ENTER Навигация Переключение в режим редактирования
ESC Редактирование Переключение в режим навигации
B Навигация Вставить новую ячейку ниже (B значит below)
A Навигация Вставить новую ячейку выше (A значит above)
D, D Навигация Удалить ячейку (двойное нажатие клавиши D)
CTRL + ENTER Оба режима Выполнить код и остаться в ячейке
SHIFT + ENTER Оба режима Выполнить код и перейти в следующую ячейку или создать новую
y Навигация Переключить тип ячейки на ““Code””
m Навигация Переключить тип ячейки на ““Markdown””
CTRL + SHIFT + C Оба режима Открыть командную консоль (внимание: данная комбинация отличается от той, что используется в Jupyter Notebook, там это CTRL + SHIFT + P)
TAB Редактирование Автодополнение (дополнение команды, которую вы начали вводить)
X Навигация Вырезать ячейку
C Навигация Скопировать ячейку
V Навигация Вставить ячейку
SHIFT + TAB Редактирование Справка по команде из DocString
CTRL + SHIFT + – Редактирование Разделить ячейку по месту расположения курсора
SHIFT + M Навигация Объединить выбранные ячейки в одну
CTRL + B оба режима Скрыть/показать боковую панель слева. Можно сделать так, что у вас будет больше места для кода
CTRL + POS1 Редактирование Перейти к началу активной ячейки
CTRL + END Редактирование Перейти к концу активной ячейки

При желании вы также можете определить свои собственные горячие клавиши. Это делается в меню в разделе Settings -> Advanced Settings Editor -> Keyboard Shortcuts. Однако интерфейс не отличается удобством, вам придётся скопировать файл JSON и вносить изменения в него. Слева показаны предустановленные настройки от системы, справа можно вписать собственные значения. Для этого вам нужно знать названия команд, хотя их можно посмотреть с помощью командной консоли (CTRL + SHIFT + C). Кроме того, вы должны знать названия селекторов. Так что проще будет изучить системные комбинации или поискать в интернете. Вот пример того, как могут выглядеть настройки:

{
 "shortcuts": [
   {
    "command": "application:activate-next-tab",
    "keys": ["Ctrl Shift ]"],
    "selector": "body"
   },
   {
    "command": "application:activate-previous-tab",
    "keys": ["Ctrl Shift ["],
    "selector": "body"
   }
  ]
}

Кроме того хорошей отправной точкой может стать документация Jupyter Lab, если вы хотите разобраться в чём-то. Удачи в работе с Jupyter Lab!

https://databraineo.com/ki-training-resources/python/jupyter-lab-shortcuts-steigere-deine-produktivitaet-auch-fuer-jupyter-notebook/

Written on December 24, 2022