2012-11-16 18 views
7

Sono confuso circa l'integrazione di IPython con Emacs. A partire da Emacs 24, Emacs viene fornito con il proprio python.el. Questo file ha il supporto per IPython o solo per Python?Supporto IPython su Emacs 24.x

Inoltre, lo Emacswiki parla di un file denominato IPython.el (sebbene il collegamento fornito: http://ipython.scipy.org/dist/ipython.el restituisca un errore 404). Questo file è compatibile con Emacs 24 'python.el o funziona solo con python-model.el?

risposta

7

Il nuovo python.el (fornito con la versione 24.3 di Emacs) supporta IPython. È necessario aggiungere le seguenti righe al file init.el (istruzioni copiati da python.el):

(require 'python) 
(setq 
    python-shell-interpreter "ipython" 
    python-shell-interpreter-args "--pylab" 
    python-shell-prompt-regexp "In \\[[0-9]+\\]: " 
    python-shell-prompt-output-regexp "Out\\[[0-9]+\\]: " 
    python-shell-completion-setup-code 
    "from IPython.core.completerlib import module_completion" 
    python-shell-completion-module-string-code 
    "';'.join(module_completion('''%s'''))\n" 
    python-shell-completion-string-code 
    "';'.join(get_ipython().Completer.all_completions('''%s'''))\n") 

Questo funziona su Linux (sto correndo Ubuntu 12.04), potrebbero essere necessarie alcune modifiche aggiuntive su Windows (per i dettagli, controllare la fonte init.el).

Tuttavia, si dovrebbe non uso ipython.el (che viene distribuito con il pacchetto IPython), in quanto dipende esplicitamente python-mode.el (almeno questo è il caso di IPython 0.12.1 che è installato sul mio sistema).

1

Non sono sicuro del file python.el poiché sto eseguendo python-mode.el, che ha il supporto per ipython. Ma ho dato una sbirciatina alle fonti python.el che sono state installate con il mio Emacs 24 e contiene alcuni riferimenti a ipython al suo interno, quindi sembra che supporti ipython.

1

Emacs viene fornito con python.el fin da emacs 22. Questo è quello che sto usando e mi affido per creare il resto delle funzionalità di editing di Python che mi servono.

Sfortunatamente qualcuno ha scritto un nuovo python.el e i manutentori (nessuno dei due usa pesantemente la modalità python) OK la sua sostituzione del python.el esistente e funzionante nel prossimo 24.3. Lo avrebbero fatto in un modo compatibile con le versioni precedenti che, purtroppo, cadde dalla parte opposta.

python.el da prima 24,3 supporta l'esecuzione di ipython.