Как я могу создать и выполнить ячейку на сервере Jupyter Notebook из отдельного процесса (например, редактора, vim)? - PullRequest
2 голосов
/ 09 мая 2020

Я хочу вызвать api в работающей записной книжке jupyter, чтобы создать или отредактировать существующую ячейку и запустить ее. Когда это будет сделано, страница браузера также должна обновиться, чтобы показать как содержимое ячейки, так и выходные данные.

Предполагаемый вариант использования этого API - это плагин для редактора vim, который берет выделенные строки и выполняет их. Мотивация использования ноутбука jupyter заключается в том, что он позволит визуализировать графики и изображения с помощью matplotlib, даже если и vim, и ноутбук будут работать на удаленном сервере. У пользователя будет открыта страница браузера для записной книжки и отдельно потенциально открытый терминал, который sh передается машине и редактирует python код.

VSCode делает именно это в интерактивном режиме python, но я предпочитаю использовать редактор vim изначально, чем переключаться на vscode, просто чтобы иметь возможность это сделать.

Ответы [ 3 ]

3 голосов
/ 20 мая 2020

Для этого активно разрабатывается несколько плагинов, и без их использования кажется, что только vimpyter взаимодействует с jupyter в браузере. Другие, такие как jupyter-vim и vim-i python, открывают записную книжку внутри буфера vim.

Если вы можете жить без встроенных графиков, я нахожу удобным наличие neoterm буфер терминала, где я могу отправлять строки в и из I Python.

0 голосов
/ 22 мая 2020

Вы можете использовать встроенную в vscode поддержку jupyter notebook, чтобы преобразовать записную книжку в python файл

0 голосов
/ 10 мая 2020

это не точный ответ, но я написал пару плагинов Jupyter, которые могут быть вам полезны в этом начинании, JupyterGraffiti и JupyterTerminals . У Graffiti есть API, который вы можете вызвать для выполнения некоторых его функций, и он поддерживает встроенные терминалы, которыми вы можете управлять. JupyterTerminals предоставляет только эти встроенные терминалы, но также имеет кнопки, которые вы можете добавить для управления ими. Вы можете запускать и запускать vim внутри этих терминалов. (Если это полезно, к плагину JupyterTerminals можно добавить API, как у Graffiti.)

enter image description here

...