Откройте ipython ноутбук с помощью двойного щелчка по osx
Я загрузил несколько ноутбуков ipython, и я хотел бы открыть их в вкладках браузера, не перейдя в каталог, в который я загрузил их и запустил ipython notebook notebook_name.ipynb
.
Я понимаю, это, вероятно, означает, что я ленив, но для меня это похоже на общий прецедент. Мне что-то не хватает?
Ответы
Ответ 1
Используйте Pineapple приложение для открытия и работы с вашими ноутбуками IPython/Jupyter. Это довольно круто.
Update:
Теперь есть nteract, который является новым приложением для рабочего стола, подобным jupyter. После его установки сделайте это приложение по умолчанию для открытия файлов .ipynb
. Затем просто дважды щелкните любой ноутбук, чтобы сразу запустить его.
![nteract geojson]()
Ответ 2
Я нашел хороший способ использования Automator (октябрь 2017 года, с информацией отсюда):
- открыть Automator и создать новое приложение
![menu]()
- для добавления
Run Shell Script
перетащите его из списка; могут потребоваться эти параметры. Shell: /bin/bash
и Pass input: as arguments
![run shell script]()
- вставьте код ниже; при необходимости отрегулируйте путь до jupyter
Код
#!/bin/sh
variable="'$1'"
the_script='tell application "terminal" to do script "/usr/local/bin/jupyter notebook '
osascript -e "${the_script}${variable}\""
- сохранить сценарий как приложение (!)
- попытайтесь открыть файл
.ipynb
и измените приложение по умолчанию на это вновь созданное.
нота
Это откроет терминал и запустит команду jupyter notebook
, чтобы вы могли прерывать и останавливать ноутбук-сервер оттуда. Также обратите внимание, что вы не можете протестировать приложение, подобное этому в Automator, но вам нужно добавить Get Specified Finder Items
и вставить там тестовый блок (только для целей тестирования).
Ответ 3
Я придумал способ сделать это на Ubuntu. (Он работает для меня, но я не могу нести никакой ответственности). Он объяснил здесь. В двух словах вам нужно создать новый тип MIME, а затем написать script, который работает как приложение, которое их запускает:
#!/bin/bash
netstat -tln |grep "8902"
# if not found - equals to 1, start it
if [ $? -eq 1 ]
then
ipython notebook / --no-browser --port=8902 &
sleep .5
fi
xdg-open http://localhost:8902/notebooks$1
Это всегда открывает сервер ноутбука на порту 8902, но сначала проверяет, работает ли уже сервер, и, если это так, использует его.
Затем вы можете использовать ubuntu tweak, чтобы выбрать свой script в качестве приложения по умолчанию для типа MIME "Ноутбук IPython", который вы только что создали.
Не очень элегантно, но стоит того, на мой взгляд.
Ответ 4
Приложение, опубликованное здесь, работало довольно хорошо для меня: http://bioequity.org/2013/11/16/ipynbviewer/
Вам также необходимо загрузить iTerm2, как описано на этой странице.
Обратите внимание, что это не работает, если в имени файла есть пробелы, но вы можете изменить его так, чтобы он работал с пробелами в имени файла. Щелкните правой кнопкой мыши на iPyNbViewer.app и выберите "Показать содержимое пакета". Отредактируйте файл Содержание/Ресурсы/Сценарии/main.scpt. Измените три экземпляра "путь POSIX" на "цитированный вид пути POSIX". Теперь он будет работать с пробелами в имени файла.
Чтобы установить все ваши файлы .ipynb для открытия с помощью приложения, вам нужно получить информацию (command-I) в одном из файлов и выбрать приложение iPyNbViewer, чтобы открыть все файлы .ipynb.
Было бы здорово, если бы это было поведение по умолчанию двойного щелчка на файле ноутбука iPython...
Ответ 5
Посмотрите эту ссылку.
Поместите bash script в папку, где вы держите свои ноутбуки ipython, и просто дважды щелкните его, чтобы открыть экземпляр ноутбука. Из приведенной выше ссылки bash script имеет только:
path=$0 # path is path to this file
cd ${path%/*.*} # clip off the file name to get directory path and cd
ipython notebook --pylab inline
Наконец, вам нужно chmod u+x
script сделать его исполняемым, и все готово.
Ответ 6
Я использовал приложение командной строки 'nbopen' и поместил его в оболочку Platypus, чтобы получить перетаскивание drag'n и двойное нажатие на Macos. 'nbopen' можно загрузить с помощью 'pip'
Он хорошо работает при использовании, как описано выше DanHickstein.
Только проблема с моим кодом заключается в том, что для этого требуется полный путь к команде nbopen. Я знаю, что могу как-то использовать "какой nbopen", но не могу заставить его работать.
Heres мой код Platypus:
#!/bin/bash
# Opens ipynb files in a Jupyter Notebook
# echo $1
# $1 is the path of the dropped file
/Users/robw/anaconda/bin/nbopen $1
# Based on an idea from
# https://www.quora.com/Is-there-a-straightforward-way-to-open-an-IPython-Notebook-in-Windows-by-double-clicking
Ответ 7
Я создал приложение Mac под названием JupyterLauncher с Automator, основанное на ответах на вопрос, который вы можете скачать здесь:
https://drive.google.com/file/d/1OjyUT6iUJToyKgyd63cC3V8Of7EVdpB5/view?usp=sharing
Чтобы связать его со всеми Jupyter Notebooks, щелкните правой кнопкой мыши на файле.ipynb, затем "Get Info", выберите, чтобы открыть файл с помощью "JupyterLauncher", затем нажмите кнопку под названием "Изменить все".
Ответ 8
- pip install nbopen
-
откройте Automator, создайте новое приложение - добавьте сценарий запуска оболочки (/bin/bash), измените пароль ввода "в качестве аргументов" - используйте этот сценарий:
#!/bin/sh variable="'$1'" the_script='tell application "terminal" to do script "nbopen ' osascript -e "${the_script}${variable}\""
-
скопировать новое приложение в каталог "/Applications"
- перейдите к любому файлу ipynb и выберите новое приложение для открытия.