macos osx-mountain-lion ipython ipython-notebook

macos - Abre un cuaderno ipython haciendo doble clic en osx



osx-mountain-lion ipython-notebook (7)

He descargado un par de cuadernos ipython, y me gustaría abrirlos en las pestañas del navegador sin navegar al directorio en el que los he descargado y ejecutando ipython notebook notebook_name.ipynb .

Me doy cuenta de que esto probablemente significa que soy perezoso, pero me parece un caso de uso común. ¿Me estoy perdiendo algo obvio?


  1. pip instalar nbopen
  2. abra Automator, cree una nueva aplicación - agregue el script de ejecución de shell (/ bin / bash), cambie la entrada del pase ''como argumentos'' - use este script:

    #!/bin/sh variable="''$1''" the_script=''tell application "terminal" to do script "nbopen '' osascript -e "${the_script}${variable}/""

  3. Copia la nueva aplicación al directorio "/ Aplicaciones"

  4. Vaya a cualquier archivo ipynb y seleccione la nueva aplicación para abrir.

He encontrado una forma agradable de usar Automator (octubre de 2017; con información de here ):

  1. Abre Automator y crea una nueva aplicación.
  2. para agregar el Run Shell Script arrastre y suéltelo de la lista; podría necesitar estos ajustes Shell: /bin/bash y Pass input: as arguments
  3. inserte el código de abajo ; Si es necesario, ajustar el camino a Jupyter.

Código

#!/bin/sh variable="''$1''" the_script=''tell application "terminal" to do script "/usr/local/bin/jupyter notebook '' osascript -e "${the_script}${variable}/""

  1. guardar el script como una aplicación (!)
  2. intente abrir un archivo .ipynb y cambie la aplicación predeterminada a esta recién creada.

Nota

Esto abrirá un terminal y ejecutará el comando jupyter notebook , de modo que puede interrumpir y detener el notebook-server desde allí. También tenga en cuenta que no puede probar la aplicación de esa manera en Automator, pero necesita agregar los Get Specified Finder Items e insertar un cuaderno de prueba allí ( solo para fines de prueba ).


He utilizado la aplicación de línea de comandos ''nbopen'' y la puse en un envoltorio Platypus para obtener arrastrar y soltar y hacer doble clic en Macos. ''nbopen'' se puede descargar con ''pip'' Funciona bien cuando se usa como se describe anteriormente por DanHickstein. El único problema con mi código es que requiere la ruta completa al comando nbopen. Sé que debería poder usar ''which nbopen'' de alguna manera pero no puedo hacer que funcione. Heres mi código 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


La aplicación publicada aquí funcionó bastante bien para mí: http://bioequity.org/2013/11/16/ipynbviewer/ También debe descargar iTerm2, como se describe en esa página.

Tenga en cuenta que esto no funciona si hay espacios en el nombre de archivo, pero puede modificarlo para que funcione con espacios en el nombre de archivo. Presione la tecla Control y haga clic en iPyNbViewer.app y seleccione "Mostrar contenido del paquete". Edite el archivo Contents / Resources / Scripts / main.scpt. Cambie tres instancias de "ruta POSIX" a "forma citada de ruta POSIX". Ahora trabajará con espacios en el nombre del archivo.

Para configurar todos los archivos .ipynb para que se abran con la aplicación, deberá Obtener información (comando-I) en uno de los archivos y seleccionar la aplicación iPyNbViewer para abrir todos los archivos .ipynb.

Sería fantástico si este fuera el comportamiento predeterminado de hacer doble clic en un archivo de cuaderno iPython ...


Mira este enlace . Coloque una secuencia de comandos de bash en la carpeta donde guarda sus cuadernos ipython y simplemente haga doble clic para abrir una instancia de cuaderno. Desde el enlace de arriba, el script de bash acaba de:

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

Finalmente, necesita hacer chmod u+x la secuencia de comandos para hacerla ejecutable y listo.


Se me ocurrió una forma de hacerlo en Ubuntu. (Funciona para mí pero no puedo asumir ninguna responsabilidad). Se explica here . En pocas palabras, necesita crear un nuevo tipo MIME , luego escribir un script que funcione como la aplicación que los inicia:

#!/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

Esto siempre abre el servidor de notebook en el puerto 8902, pero primero verifica si ya hay un servidor en ejecución y, si es así, lo usa. Luego, puede usar ubuntu tweak para seleccionar su script como aplicación predeterminada para el tipo MIME "IPython Notebook" que acaba de crear. No muy elegante, pero vale la pena, en mi opinión.


Use la aplicación Pineapple para abrir y trabajar en sus notebooks IPython / Jupyter. Es muy bueno

Actualizar:

Ahora hay nteract , que es una nueva aplicación de escritorio tipo jupyter. Después de instalarlo, .ipynb aplicación predeterminada para abrir archivos .ipynb . Luego simplemente haga doble clic en cualquier cuaderno para comenzar de inmediato.