SublimeText2 und SublimeLinter - Syntax prüfen auf Python3--

1. Definieren Sie einen neuen Linter

SublimeLinter/sublimelinter/modules/python3.py

python3.py


import re
from base_linter import BaseLinter, INPUT_METHOD_FILE


CONFIG = {
    'language': 'Python3',
    'executable': 'flake8',
    'test_existence_args': ['--version'],
    'lint_args': '{filename}',
    'input_method': INPUT_METHOD_FILE #Nur beim Speichern. EINGABE, wenn Sie in Echtzeit einchecken möchten_METHOD_TEMP_Mach es DATEI
}


class Linter(BaseLinter):
    def parse_errors(self, view, errors, lines, errorUnderlines, violationUnderlines, warningUnderlines, errorMessages, violationMessages, warningMessages):
        for line in errors.splitlines():
            match = re.match(r'^.+:(?P<line>\d+):(?P<offset>\d*):?\s+(?P<error>.+)', line)
            if match:
                error, line, offset = match.group('error'), match.group('line'), match.group('offset')
                if not error.startswith('E501'):
                    self.add_message(int(line), lines, '[{0}: {1}]'.format(offset, error), errorMessages)

E501 ist ausgeschlossen, wenn Sie möchten.

2. Erstellen Sie eine Syntax namens Python3

cd ~/Library/Application Support/Sublime Text 2/Packages/Python
cp Python.tmLanguage Python3.tmLanguage

Ich bin mir nicht sicher, deshalb habe ich nur name und scopeName in Python3 und source.python3 geändert OK, wenn Python 3 in Set Syntax angezeigt wird

3. Sublime Linter-Konfigurationsdatei

{
    "sublimelinter_executable_map": {
        "python3": "Pfad zu flake8 für python3"
    }
}
  1. fleke8

Die utf-8-Datei stirbt, wenn sie nicht ASCII ist

Die Problemumgehung besteht darin, die Umgebungsvariable PYTHONIOENCODING auf utf-8 und LC_CTYPE auf en_US.utf-8 zu setzen. Schreiben Sie für Mac-Benutzer in /etc/launchd.conf. Wenn Ihnen die Auswirkungen nicht gefallen, können Sie Ihr eigenes Startskript schreiben (entspricht dem Befehl flake8) und die Codierungseinstellungen darin schreiben. Stellen Sie die interne Umgebung so ein, dass sys.getdefaultencoding () == 'utf-8', locale.getpreferredencoding (False) == 'utf-8'.

Stirb mit Bytes

Dies sieht aus wie ein Fehler in flake8. flake8 / pyflakes.py: per 319

NUM = STR =	ELLIPSIS = ignore

Ich habe BYTES hinzugefügt und es hat funktioniert.

Recommended Posts

SublimeText2 und SublimeLinter - Syntax prüfen auf Python3--
Ruby- und Python-Syntax ~ branch ~
Python # So überprüfen Sie Typ und Typ für Super-Anfänger
Überprüfen Sie Python auf Speicherlecks
Suchen Sie mit Python nach externen Befehlen
Überprüfen und verschieben Sie das Verzeichnis in Python
Unterschiede zwischen Python- und Java-Syntax
Überprüfen und empfangen Sie die serielle Schnittstelle in Python (Portprüfung)
6 Python-Bibliotheken für schnellere Entwicklung und Debugging
Suchen und überprüfen Sie die inverse Matrix in Python
Unterschied zwischen Ruby und Python (grundlegende Syntax)
[Python of Hikari-] Kapitel 05-09 Steuerungssyntax (Verwendung von for-Anweisung und while-Anweisung ordnungsgemäß)
2016-10-30 sonst für Python3> für:
Python [für mich]
[Erklärung für Anfänger] Grundlegende Syntax und Konzept von TensorFlow
Sofortige Methodengrammatik für Python und Ruby (Lernen)
Kausales Denken und kausale Suche von Python (für Anfänger)
Python-Grammatikprüfung
(Windows) Ursachen und Problemumgehungen für UnicodeEncodeError in Python 3
[Aktualisierung] Python Syntax Spickzettel für Java Shop
mit Syntax (Python)
[Hikari-Python] Kapitel 09-02 Klassen (Erstellen und Instanziieren von Klassen)
[Python / Chrome] Grundeinstellungen und Operationen zum Scraping
PDF-Dateien und Websites zum Erlernen von Python 3
Syntax zur Steuerung der Python-Syntax
Installieren Sie Python und Bibliotheken für Python unter MacOS Catalina
Überprüfen Sie die Verarbeitungszeit und die Anzahl der Aufrufe für jeden Prozess mit Python (cProfile).
Janken Poi in Python für Anfänger (Antworten und Erklärungen)
Grundeinstellungen für die Verwendung von Python3.8 und pip unter CentOS8
[Python of Hikari-] Kapitel 06-04 Funktionen (Argumente und Rückgabewerte 3)
Durchsuchen von Pixiv-Tags und Speichern von Illustrationen mit Python
Erweiterbare Skelette für Vim mit Python, Click und Jinja2
Python-Textlesung für mehrere Zeilen und eine Zeile
Ich habe pipenv und asdf für die Python-Versionskontrolle ausprobiert
Liste der Python-Bibliotheken für Datenwissenschaftler und Dateningenieure
Erstellen einer R- und Python Docker-Arbeitsumgebung
[Python] Misst und zeigt die für die Verarbeitung erforderliche Zeit an
C-Sprache, Java, Python-Benchmarks mit Primfaktorisierung
Python netCDF4 Lesegeschwindigkeit und Verschachtelung von for-Anweisungen
[Hikari-Python] Kapitel 07-01 Ausnahmebehandlung (Fehler und Ausnahmen)
[Python] Schlachten und Kombinationen ausgeben (Verschachtelung für Anweisungen und if-Anweisungen)
Einstellungen für das Spielen von Wave in Python PyAudio und PortAudio
Python-Lernnotiz für maschinelles Lernen von Chainer Kapitel 1 und 2
Probleme und Gegenmaßnahmen zum Überlaufen der Binärisierung von Otsu in Python
Schreiben Sie Tests in Python, um die Abdeckung zu profilieren und zu überprüfen
Englisch-Englisch Wörterbuch Konfrontation für Python und AI bezogenes Englisch
[Hikari-Python] Kapitel 06-01 Funktionen (integrierte Funktionen und Funktionsdefinitionen)
Kompilieren und installieren Sie MySQL-Python für Python2.7 unter Amazon Linux
Informationen zum Erstellen und Ändern von benutzerdefinierten Designs für Python IDLE
[Python of Hikari-] Kapitel 06-03 Funktionen (Argumente und Rückgabewerte 2)
Suchen Sie rekursiv nach Dateien und Verzeichnissen in Python und geben Sie sie aus
[Python] Kapitel 05-01 Steuerungssyntax (Vergleichsoperator und bedingte Verzweigung)
[Python of Hikari-] Kapitel 05-05 Steuerungssyntax (für Anweisungs-Mehrfachschleifen-)
[Python] Komprimieren und dekomprimieren
Über Python für Schleife
Python- und Numpy-Tipps
[Python] Pip und Wheel
Python-Grundlagen ② für Anweisung