Emacs EIN vs shell IPython

10

J'essaie de faire fonctionner EIN dans Emacs, mais pour le moment (avec IPython 2), il semble que ce ne soit pas possible. Ces erreurs surviennent:

REQUEST [error] Error from parser ein:json-read: (json-readtable-error)
ein: [error] Error (parse-error) while opening notebook list at the server 8888.

Mais en essayant de résoudre ce problème, j'ai commencé à me demander s'il y avait vraiment un avantage à utiliser le portable sur un shell IPython avec toutes les fonctionnalités supplémentaires qu'Emacs offre.

La question est donc: quels sont les avantages de l'utilisation d'EIN par rapport au shell IPython dans Emacs? Existe-t-il un moyen d'enregistrer une session IPython dans un fichier?

El Diego Efe
la source

Réponses:

9

Vous avez raison de dire qu'ein dans le référentiel de tkf sur github ne fonctionne qu'avec les versions d'IPython antérieures à 2.x.

Cela dit, cependant, si vous utilisez cette version, vous constaterez qu'elle fonctionne avec IPython 2.x et Jupyter (c'est-à-dire IPython 3.0).

L'installation d'ein à partir de MELPA ou el-get installera la dernière ein qui fonctionne avec les dernières versions d'IPython.

John Miller
la source
Le nouveau dépôt fonctionne correctement
serv-inc
4

Je pense que la principale valeur d'EIN était de pouvoir connecter des tampons arbitraires au noyau ipython qui correspond au portable, permettant ainsi la coopération de plusieurs "objets" Emacs.

Mais comme le fichier README d'EIN ne mentionne que ipython 0.12 et qu'il n'y a pas eu d'activité depuis un certain temps, il est fort probable que les changements d'API le rendent actuellement inutilisable.

Sigma
la source
1

Il y a une nouvelle version d'EIN qui a remplacé l'ancienne sur MELPA.

Sur Emacs 25 et plus, cela fonctionne hors de la boîte. Emacs 24 doit cependant être mis à niveau, voir https://github.com/millejoh/emacs-ipython-notebook/issues/190 .

quels sont les avantages de l'utilisation d'EIN par rapport au shell IPython dans Emacs?

Un avantage est de lire des fichiers ipynb et de les échanger facilement avec des utilisateurs non emacs, même en exécutant une instance jupyter partagée.

serv-inc
la source