2014-06-26 18 views
5

In Gedit kann ich ein externes Tool von "php -l" auf dem aktuellen Dokument hinzufügen, und wenn ich PHP-Befehlszeile installiert habe, wird es Syntax überprüfen das Dokument. Gibt es eine Möglichkeit, dies mit dem Sublime Text Editor zu tun? (Hinweis, ich habe einen Mac und es hat PHP CLI installiert.)PHP-Syntaxprüfung in Sublime Text-Editor

Ich stelle mir vor, ich muss ein Code-Snippet in Sublime-Plugin einfügen, oder?

+1

Eine queck Überprüfung von Google zeigt: https://sublime.wbond.net/packages/PHP%20Syntax%20Checker –

Antwort

13

Die Aktion, auf die Sie sich beziehen, heißt "linting" und es gibt eine Reihe von Plugins für Sublime, die PHP-Dateien fusseln. Als mentioned von Len_D, PHP Syntax Checker ist eins, aber ich würde stattdessen SublimeLinter for Sublime Text 2 empfehlen. (Es gibt eine andere Version von SublimeLinter für ST3, aber es ist nicht rückwärtskompatibel und hat eine völlig andere Architektur als die ST2-Version, die nicht mehr offiziell unterstützt.)

zu installieren, zuerst install Package Control wenn Sie haven‘ t bereits, dann Sublime neu starten. Öffnen Sie die Befehlspalette mit CtrlShift-P und geben pci bringen Package Control: Install Package. Hit eingeben, geben Sie dann in sublimelinter, dann treffen Geben Sie erneut zu installieren. Nach der Installation starten Sie ST2 erneut für viel Glück. Um zu konfigurieren, öffnen Sie zuerst Sublime Text 2 -> Preferences -> Package Settings -> SublimeLinter -> Settings-Default und kopieren Sie den gesamten Inhalt. Dann öffnen Sie Settings-User aus dem gleichen Untermenü und fügen Sie den Inhalt ein. Sie können jetzt schließen Settings-Default. Um eine korrekte Syntaxhervorhebung zu erhalten (um zu erkennen, wo sich die Kommentare befinden), wählen Sie JavaScript -> JSON aus der Optionsliste unten rechts im Fenster "Sublime".

Scrollen Sie bis zu Zeile 36 im "sublimelinter_executable_map" dict und fügen Sie eine Leerzeile zwischen den öffnenden { und schließenden } Klammern hinzu. Suchen Sie den vollständigen Pfad zur ausführbaren Datei php auf Ihrem System, indem Sie Terminal öffnen und which php eingeben. Kopieren Sie den Pfad und fügen Sie für die leere Zeile, die Sie gerade erstellt haben, einen Eintrag für "php" hinzu. Zum Beispiel, wenn der Pfad /opt/local/bin/php, der volle Abschnitt sollte wie folgt aussehen:

"sublimelinter_executable_map": 
{ 
    "php": "/opt/local/bin/php" 
}, 

Scroll nach unten durch den Rest der "sublimelinter_*" Optionen und ändern Sie Ihre Vorlieben anpassen. Die Optionen nach Zeile 108 sind höchstwahrscheinlich irrelevant für Sie, da sie sich mit Linters für JavaScript, CSS, Python usw. befassen. Sie können sie jedoch auch lesen, falls Sie SublimeLinter für andere Sprachen verwenden möchten. Sobald Sie fertig sind, speichern Sie die Datei und Sie sollten alle eingestellt sein. SublimeLinter zeigt seine Meldungen gemäß den Einstellungen "sublimelinter" (Zeile 13) und "sublimelinter_delay" (Zeile 67) an (erhöhen Sie den Wert, um die Verzögerung zwischen dem Beenden des Schreibens und dem Anzeigen von LINTER-Meldungen zu erhöhen). Wenn Sie dieses "Live" -Linten nicht möchten, stellen Sie "sublimelinter" auf load-save,oder false, je nach Ihren Vorlieben. Ich finde Live-Linting eher ärgerlich ...

Und das war's. Die vollständige Dokumentation ist in der README verfügbar.Bitte beachten Sie, dass wenn Sie auf Sublime Text 3 aktualisieren (was ich übrigens sehr empfehlen kann), müssen Sie SublimeLinter3 installieren und konfigurieren, was ein vollständiges Umschreiben des Plugins in eine modularere Architektur ist. Daher muss das Basispaket SublimeLinter durch ein sprachspezifisches Linter-Plugin wie SublimeLinter-php ergänzt werden. Bitte stellen Sie sicher, dass Sie die full documentation lesen (ja, es gibt eine Menge, aber es ist es wert), um alles reibungslos laufen zu lassen.

Viel Glück!

+0

Ich installierte dies auf Sublime Text 2 auf Windows 7 und ich musste keine Einstellungen ändern. Nett. – Liam