Gestern schrieb über die Python-Codierungskonvention PEP8 ..
Beim Schreiben von Python-Quellcode in Emacs wäre es noch nützlicher, wenn die PEP8-Konformität ständig überprüft und visualisiert würde.
Mit dem hier vorgestellten Emacs Lisp sind PEP8-Konformitätsverletzungen bei Emacs immer sichtbar, wie unten gezeigt.
Außerdem können Sie nur während der Bearbeitung von Python die PEP8-Prüfergebnisse im Minibuffer mit bestimmten Tastenkombinationen anzeigen.
Bereiten Sie zunächst Emacs Lisp vor, eine Voraussetzung für die Entwicklung von Python mit Emacs.
python-mode.el
Es gibt mehrere Hauptmodi in Python, aber meine Empfehlung ist python-mode.el.
python-mode.el http://www.emacswiki.org/emacs/PythonProgrammingInEmacs
Dies ist die funktionsreichste.
flymake-cursor.el
Arbeitet mit flymake zusammen, was in Emacs 23 und höher die Standardeinstellung ist, um flymake-Fehler in der aktuellen Zeile des Minibuffers anzuzeigen.
flymake-cursor.el https://github.com/illusori/emacs-flymake-cursor
In dem Artikel gestern (when (lade "python-pep8") (definiere die globale Karte "\ Cc \ p" 'python-pep8)) Dies führt jedoch dazu, dass pep8 von Cc p überprüft wird, während eine Datei bearbeitet wird. Es ist daher eine gute Idee, den Python-Modus-Hook zu verwenden und ihn nur während der Bearbeitung von Python zu aktivieren.
Schreiben Sie vor diesem Hintergrund die Einstellungen für den Python-Modus in Emacs Lisp wie folgt:
;; python-Lademodus
(when (autoload 'python-mode "python-mode" "Python editing mode." t)
;; python-Python nur im Modus-Aktivieren Sie die Tastenkombinationen für pep8
(setq python-mode-hook
(function (lambda ()
(local-set-key "\C-c\ p" 'python-pep8))))
(setq auto-mode-alist (cons '("\\.py$" . python-mode) auto-mode-alist))
(setq interpreter-mode-alist (cons '("python" . python-mode)
interpreter-mode-alist)))
;; flymake for python
(add-hook 'python-mode-hook 'flymake-find-file-hook)
(when (load "flymake" t)
(defun flymake-pyflakes-init ()
(let* ((temp-file (flymake-init-create-temp-buffer-copy
'flymake-create-temp-inplace))
(local-file (file-relative-name
temp-file
(file-name-directory buffer-file-name))))
;;Geben Sie Ihr eigenes Shell-Skript an, das gestern eingeführt wurde
;;Bitte bearbeiten Sie entsprechend jeder Umgebung
(list "/usr/local/sbin/pyck" (list local-file))))
(add-to-list 'flymake-allowed-file-name-masks
'("\\.py\\'" flymake-pyflakes-init)))
(load-library "flymake-cursor")
Dies ist der zu Beginn eingeführte Zustand. Der Fehler, den Sie ignorieren möchten, kann im von oben aufgerufenen Shell-Skript und in python-pep8 angegeben werden.
Um den Fehler in python-pep8.el zu ignorieren, bearbeiten Sie Emacs Lisp und übergeben Sie ihn wie folgt als Option für pep8:
(defcustom python-pep8-options '("--ignore=E302")
"Options to pass to pep8.py"
:type '(repeat string)
:group 'python-pep8)
Die Einstellungen von Emacs sind für jede Person unterschiedlich. Wenn Sie jedoch eine Umgebung erstellen, die für jede Person auf der Grundlage dieses Inhalts leicht zu entwickeln ist, sind Sie glücklicher.
Recommended Posts