texto repl python macos configuration emacs ipython

repl - ¿Cómo uso IPython como mi intérprete de Emacs Python?



emacs python repl (3)

también ipython no se cargará con el python.el oficial que se usa con emacs 23.1.1

Estoy ejecutando Emacs 22.1.1 e IPython 0.9.1 en OS X y me gustaría poder ejecutar líneas / métodos / fragmentos de código Python desde mi búfer actual bajo demanda dentro de un intérprete de IPython.

¿Qué debo hacer para que esto funcione?


Esta versión de emacs para mac:

http://emacsformacosx.com

viene con package.el preinstalado. Esto le permite instalar automáticamente paquetes de emacs. Hay un paquete llamado ein:

http://tkf.github.io/emacs-ipython-notebook/

lo que facilita la interacción con ipython desde emacs (incluidos los portátiles).

Sin embargo, a partir de la versión 24.3 de los emacs anteriores, ein no se encuentra en el repositorio de paquetes predeterminado. Si agrega más repositorios, según:

http://www.emacswiki.org/emacs/ELPA

es decir, agregue esto a su archivo ~ / .emacs:

(setq package-archives ''(("gnu" . "http://elpa.gnu.org/packages/") ("marmalade" . "http://marmalade-repo.org/packages/") ("melpa" . "http://melpa.milkbox.net/packages/")))

luego llame

M-x package-refresh-contents

Ahora podrá agregar ein con:

M-x package-install <ret> ein

por desgracia, la versión MELPA de ein no funciona con ipython> 1.x así que si está utilizando ipython 2.x, necesita una nueva versión de ein:

https://github.com/tkf/emacs-ipython-notebook/issues/137

así que clona eso

git clone https://github.com/millejoh/emacs-ipython-notebook.git

copia el directorio secundario de lisp en algún lugar sensato:

cp -r emacs-ipython-notebook/lisp ~/.emacs.d/einv2

luego agréguelo a la ruta de carga de emacs y cárguelo añadiéndolo a su ~ / .emacs:

(add-to-list ''load-path "~/.emacs.d/einv2") (require ''ein)

finalmente, deshazte del viejo ein, que dejará las dependencias en su lugar:

M-x package-list-packages

desplácese a ein en la lista de paquetes, luego:

M-x package-menu-mark-delete M-x package-menu-execute

Reinicie emacs y puede conectarse a su servidor portátil ipython:

M-x ein:notebooklist-open


python-mode.el admite IPython de forma nativa.

Solo asegúrate de que shebang no apunte a otro intérprete.

En este caso:

  • cualquiera llama a un comando con la terminación "-ipython", que anulará shebang
  • personalice "ipython" como intérprete predeterminado y establezca `py-force-py-shell-name-p ''. Esto podría hacerse también a través del menú Python /.../ Switches