python 3 in emacs
Wechselte ich vor zwei Tagen, Emacs 23, die in letzter Zeit gab mir eine Menge Kopfschmerzen, vor allem, als ich zwei Python-Versionen installiert, die älteren 2.7 und 3. Wie ich generell anfangen wollen, die python-3-interpreter, es wäre schön, wenn ich sagen könnte, Emacs in irgendeiner Weise zu verwenden python 3 statt 2,7.
Außerdem konnte ich nicht finden, ein Modul, das hilft, highlight syntax Python ist3. Ich bin derzeit mit python-mode.el für die Hervorhebung.
Auch, wenn jemand einen guten Tipp für welches Modul wäre am besten, um zu zeigen, das pydoc, wäre ich sehr dankbar.
Vielen Dank im Voraus!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wenn Sie
python-mode.el
können Sie die binäre ausgeführt werden, wie ein minderwertiges Verfahren durch Einstellung derpy-python-command
variable, d.h.:Natürlich, Sie müssen den Namen der binären wie es vorhanden ist auf Ihrem system an Stelle der
"python3"
, wenn es abweicht. Inpython.el
die Analog-variable set istpython-python-command
.Soweit mit
pydoc
gibt es ein paar Möglichkeiten. Erstens können Sie einfach ausführenhelp()
im Python-schlechter als Prozess. Wenn Sie dies tun, wählen Sie diese option, könnten Sie es nützlich finden, fügen Sie den folgenden code auf Ihre.emacs
Datei:Dies ist notwendig, da interaktive Pager (z.B.
less
,more
,most
usw.) funktioniert nicht besonders gut im inneren schlechter als Prozess-Puffer. Zweite, Sie können eine Texinfo-Paket enthält die Dokumentation und die Verwendung von Emacs istinfo
browser (siehe, Python Programming in Emacs). Schließlich, wenn Sie entscheiden, zu verwendenpython.el
es beinhaltet eine interaktive Funktion namenspython-describe-symbol
können lookuppydoc
helfen auf Nachfrage (und ich vermutepython-mode.el
sollte etwas ähnliches). Wenn Sie suchen, um noch ein bisschen, ich bin sicher, Sie finden andere Methoden und/oder third-party-Pakete.python3
binäre ist in Ihrem system$PATH
sollten Sie nicht brauchen, um geben Sie den vollständigen, expliziten directory-Pfad. Versuchen Sie, das Kommando innerhalb derpython-mode-hook
in Ihrem.emacs
- Datei, d.h.:(add-hook 'python-mode-hook #'(lambda () (setq py-python-command "python3")))
.python.el
haben, so kann es etwas sein, was ich bin vergessen, w/r/t zupython-mode.el
. Möglicherweise müssen Sie auch um diepy-which-shell
variable in eine ähnliche Mode als auch, obwohl ich nicht daran erinnern zu müssen, dass, wenn ich arbeitete mitpython-mode.el
.Nachdem ich die folgende Sache, ich habe das Verhalten, das: beim Bearbeiten von Python-Datei in emacs mit C-c C-p erzeugt einen neuen Puffer mit einem interpreter Python ist3.
Hinzufügen, um Ihre .emacs-Datei Folgendes:
Der Grund, warum ich dies versuchte, war, weil ich fand
in python.el. Und ich stellte die Hypothese (i), dass die "python" könnte ersetzt werden durch "Python ist3" und (ii) dass diese hätte Vorrang vor der definition in python.el.
Ist es wahrscheinlich, dass es gibt Gründe, warum dies ist unelegant oder heavy-handed oder anderweitig schlecht. Ich bin ein emacs-newb.
starten Sie eine python-interpreter
M-x-python-RET
(die Standard-interpreter)
M-x pythonVERSION
VERSION bedeutet jede installierte version
Hinweis python-Modus.el kennt eine Hierarchie zu erkennen, wie die benötigte version
einer UMMANTELUNG vor Einstellung der py-shell-Namen
während py-ausführen-DING-PYTHONVERSION
vorausgehen würde auch shebang für den Befehl wird
siehe Menü PyExec
Für die faulen:
eingestellt
python3
. Automatisierung @Andrew ' s Antwort.