[PYTHON] Stellen Sie Elpy Emacs vor

Table of Contents

  1. [Einführung](# orgc6070a6)
  2. [Ich hasse Emacs](# org85eb6ff)
  3. [Was ist Elpy](# org95f68a5)
  4. [Einführung von elpy](# org4db3c00)
  5. Melpa Repository hinzufügen (# orgd8a887d)
  6. Paket laden (# org4d233fb)
  7. [Paket aktivieren](# orga71c8b8)
  8. [Bringen Sie ein Paket mit, um es mit pip zu installieren](# orgfddbff4)
  9. [Bestätigen](# org68d0e96)
  10. [Am Ende](# org1905831)

Einführung

Ich konnte elpy zuvor nicht bereitstellen. elpy ist ein Paket, das Emacs zu einer integrierten Umgebung (IDE) für Python macht.

Ich kenne die Ursache nicht, aber es hat nicht funktioniert, egal wie sehr ich es versucht habe. Ich gab nach Versuch und Irrtum für ca. 3 Tage auf. Es gibt eine Geschichte, dass es schlecht ist, Emacs zu verwenden, obwohl ich keine Fähigkeiten habe, aber ich kann mich nicht in eine andere Umgebung bewegen, weil meine Finger daran gewöhnt sind.

Seit ich Python kürzlich wieder eingeführt habe, schreibe ich Python-Code mit Emacs als regulärem Editor. Ich war immer neidisch, wenn ich einen Kollegen von der Seite ansah, der die Funktion zur automatischen Vervollständigung der IDE verwendete. Also ergriff ich die Initiative und versuchte erneut, Elpy vorzustellen.

Dieser Artikel ist eine vollständige Kopie </ del>, die auf Real Python Introductory Article verweist.

Dieser Artikel wurde auch in meinem Blog https://achiwa912.github.io/ veröffentlicht.

Was ich an Emacs hasse

Plötzlich mag ich keine Emacs mehr. Es gibt viele fortgeschrittene Benutzer von Emacs in vielerlei Hinsicht. Es gibt nicht viele Einführungsartikel für Anfänger, oder selbst wenn dies der Fall ist, sind sie oft zu fortgeschritten, um sie zu verstehen.

Ich bin immer nervös, wenn ich die Konfigurationsdatei .emacs.d / init.el neu schreibe. Ich hätte es wie im einleitenden Artikel empfohlen schreiben sollen, aber es wirft viele unverständliche Fehler auf und Emacs werden nutzlos.

Ich bin sicher, Emacs-Benutzer mögen mazo </ del> scharfe Dinge.

Deshalb hasse ich die Tatsache, dass Emacs nicht verschiedene Abenteuer machen können. Ich spüre den Druck, den Status Quo beizubehalten. Apropos Abenteuer in den letzten 10 Jahren, ich habe angefangen, den Org-Modus zu verwenden und diesmal Elpy eingeführt.

Was ist Elpy

Kommen wir zurück zu Elpy. elpy steht für Emacs Python Development Environment, das die folgenden Python IDE-Funktionen bietet:

Wenn Sie ein Paket einschließen, das mit elpy funktioniert, werden Ihre Emacs in eine gute IDE umgewandelt, die mit dieser anderen IDE vergleichbar ist.

Einführung von Elpy

Melpa-Repository hinzufügen

Bearbeiten Sie sofort das Beispiel init.el. Da elpy aus einem Emacs-Paket-Repository namens melpa stammt, müssen wir Emacs dazu bringen, Melpa zu sehen. Meine Einstellungen für diesen Teil sind wie folgt.

(require 'package)
(setq package-archives
       '(("gnu" . "http://elpa.gnu.org/packages/")
	("melpa" . "http://melpa.org/packages/")
	("org" . "http://orgmode.org/elpa/")))
(package-initialize)
(when (not package-archive-contents)
  (package-refresh-contents))

Dies ist der Teil, der wichtig ist.

("melpa" . "http://melpa.org/packages/")

Laden Sie das Paket

Als nächstes bringen Sie die erforderlichen Pakete von Melpa und anderen. Ich habe diese Methode von Real Python bekommen, aber sie ist ziemlich gut. Zunächst werden die erforderlichen Pakete als myPackages definiert. Wenn sie danach nicht installiert werden, werden sie automatisch installiert.

(defvar myPackages
  '(better-defaults
    elpy
    flycheck          ;; On the fly syntax checking
    py-autopep8       ;; Run autopep8 on save
    blacken           ;; Black formatting on save
    material-theme
    )
  )
(mapc #'(lambda (package)
	  (unless (package-installed-p package)
	    (package-install package)))
      myPackages)

Ich habe neben elpy verschiedene Pakete gelesen, aber ich werde sie kurz erklären.

--better-defaults - Es scheint, dass die Standardeinstellungen von Emacs die schlechten Punkte verbessern. Im Moment weiß ich nicht, was sich geändert hat, aber ich werde es irgendwie einfügen. --flycheck --Die Grammatikprüfung erfolgt im laufenden Betrieb. --py-autopep8 - Beim Speichern wird die pep8-Konformität überprüft und ohne Erlaubnis korrigiert. --blacken - Beim Speichern wird das Format von Schwarz überprüft und ohne Erlaubnis korrigiert. ――Material-Thema ――Dieses Thema war ziemlich gut, also habe ich von dem gewechselt, das ich bisher verwendet habe.

Aktivieren Sie das Paket

Aktivieren Sie dann das Paket. Dies wurde auch nur wie ein Nembutsu aus Real Python kopiert, aber es scheint gut funktioniert zu haben. Außerdem habe ich hier alles auf einmal eingegeben, aber wenn ein Fehler auftritt, weiß ich nicht, was falsch ist. Ich denke, es ist besser, ihn hinzuzufügen, während Sie ihn nach und nach verschieben.

(load-theme 'material t)

;; elpy
(elpy-enable)
(setq elpy-rpc-virtualenv-path 'current)

;; Flycheck
(when (require 'flycheck nil t)
  (setq elpy-modules (delq 'elpy-module-flymake elpy-modules))
  (add-hook 'elpy-mode-hook 'flycheck-mode))

;; autopep8
(require 'py-autopep8)
(add-hook 'elpy-mode-hook 'py-autopep8-enable-on-save)

Es gibt eine Einschränkung. Ich verwende venv anstelle des beliebten virtualenv, daher habe ich die anfängliche Fehlermeldung befolgt und Folgendes ausgeführt: Es tut mir leid, wenn es irgendwelche Nebenwirkungen gibt.

(setq elpy-rpc-virtualenv-path 'current)

Auf diese Weise wurde mir gesagt, dass ich ~ / .local / bin in die Umgebungsvariable PATH einfügen soll, also habe ich ~ / .zshrc (macOS) geändert.

export PATH="$HOME/.local/bin:$PYENV_ROOT/bin:$PATH"

Bringen Sie das Paket zur Installation mit pip

Verwenden Sie pip, um Pakete zu bringen, die nicht von melpa gebracht werden können.

pip3 install jedi flake8 autopep8 yapf black

Ich denke es war so. Eigentlich habe ich sie einzeln installiert, also habe ich geschrieben, indem ich mir die Geschichte angesehen habe.

Bestätigen

Öffnen Sie die Python-Py-Datei, geben Sie M-x elpy-config ein und drücken Sie die Eingabetaste. elpy-config.png

Diesmal hat es funktioniert. Die Pakete, die ich mitgebracht habe, wurden alle anerkannt.

Am Ende

Der oben erwähnte Real Python-Einführungsartikel beginnt mit der Erklärung von Emacs, daher habe ich ihn versehentlich übersehen, aber bei vielen Suchanfragen Es war der nützlichste Artikel. Ich bin dankbar, dass es nur wenige Emacs-Artikel für Anfänger gibt. Vielen Dank, Real Python.

Recommended Posts

Stellen Sie Elpy Emacs vor
Führen Sie serverspec in Linux ein
Ich habe versucht, Pylint vorzustellen
Versuchen Sie, das Thema Pelican vorzustellen
Führen Sie die Echtzeitübersetzung zwangsweise in Zoom ein
emacs + elpy + pyenv-virtualenv verwendet Systempython
Der Arbeitsbereich von Emacs perspektive.el ist einfacher zu verwenden
[Rails] Einführung in Google Analytics [Easy]
Einführung der Python-Bibliothek TRML2PDF in MacOSX (10.11.xx)
[Python] Führen Sie UIKit3 in das Django-Projekt ein