Emacs EIN vs IPython shell

10

Estou tentando fazer o EIN funcionar no Emacs, mas agora (com o IPython 2) parece que não é possível. Estes erros surgem:

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

Mas, ao tentar resolver esse problema, comecei a me perguntar se há realmente alguma vantagem em usar o notebook sobre um shell IPython com toda a funcionalidade adicionada que o Emacs oferece.

Portanto, a pergunta é: quais são as vantagens do uso do EIN sobre o shell IPython no Emacs? Existe uma maneira de salvar uma sessão IPython em um arquivo?

El Diego Efe
fonte

Respostas:

9

Você está certo de que o ein no repositório do tkf no github só funciona com versões do IPython anteriores à 2.x.

Com isso dito, no entanto, se você usar esta versão , descobrirá que ela funciona com o IPython 2.xe Jupyter (ou seja, IPython 3.0).

Instalar o ein a partir do MELPA ou el-get instalará o ein mais recente, que funciona com as versões mais recentes do IPython.

John Miller
fonte
O novo repo funciona bem no Emacs 25. Consulte emacs.stackexchange.com/a/33111/8431
serv-inc
4

Eu acho que o principal valor do EIN era poder conectar buffers arbitrários ao kernel ipython que corresponde ao notebook, permitindo assim a cooperação de vários "objetos" do Emacs.

Mas como o README do EIN menciona apenas o ipython 0.12 e não há nenhuma atividade há algum tempo, é altamente provável que as alterações na API o tornem inutilizável no momento.

Sigma
fonte
1

Há uma nova versão do EIN que substituiu a antiga no MELPA.

No Emacs 25 e acima, ele funciona imediatamente. No entanto, o Emacs 24 precisa atualizar, consulte https://github.com/millejoh/emacs-ipython-notebook/issues/190 .

Quais são as vantagens de usar o EIN sobre o shell IPython no Emacs?

Uma vantagem é ler arquivos ipynb e trocá-los facilmente com usuários que não são do emacs, mesmo executando uma instância jupyter compartilhada.

serv-inc
fonte