Scoping the code

Natürlich benutzt man in einer idealen Welt im gesamten Code identischen CodeStyle. In der Realität kann es Situationen geben (z.B.: Migration von Legacy-Code in neue Struktur), in denen man in einem Projekt mehrere CodeStyles nutzt. Leider ist es in PhpStorm nicht möglich, verschiedene Bereiche des Codes unterschiedlich zu formatieren. Aber wenigstens kann man in unterschiedlichen Bereichen die Inspections gesondert schalten.

Mein Usecase hierfür sieht so aus: Allgemein importieren wir natürlich unsere Klassen, wer möchte schon \Some\Long\Namespace\with\bells\and\whistles\MyClass im Code stehen haben, wenn MyClass genügt? Eine Ausnahme machen wir in Konfigurationsdateien, z.B. in der ServiceManager-Config. Dort haben wir dann so was:

Das ist nicht schön so!

Um das zu beheben erzeuge ich zuerst mal einen Scope, der alle Config-Dateien beinhaltet:

Also: Alles was irgendwie in einem config-File liegt, soll in den Scope „Config“

Dann will ich die Inspection, die in meinem Code meckert für Config-Files muten. Um die nicht in der langen Inspection-Liste suchen zu müssen, drücke ich Alt-Enter auf angemeckertem Code. Mit Pfeil-Rechts öffne ich die Options zur Inspection und dann Enter auf „Edit inspection profile setting

Hier stelle ich „In All Scopes“ um auf „Config“.

Jetzt kann ich die „Severity“ je nach Scope anders konfigurieren.

Ich könnte die Inspection ganz ausschalten („Enable in file scope“ aus), habe mich aber für „No highlighting, only fix“ entschieden. So wird kein Fehler angezeigt, ich könnte den Quick-Fix aber immer noch mit Alt-Enter aufrufen. Just in case.

Da der CodeSniffer zusätzlich über zu lange Zeilen meckert schalte ich den in Config-Files die Warnings auf die Severity „Typo“ runter.

Hier muss man die Einstellung doppelt machen. UI Magic!

Das funktioniert so semi-gut – er zeigt gar nichts mehr an. In Config-Dateien bin ich damit fein. Resultat: Grüner Haken an der File!

About the author

IT-Teamleiter bei CHECK24.
Hasst es, Dinge selber zu tun, die auch automatisch gehen.
Will nie wieder Code von Hand formatieren müssen.
Will schon beim Schreiben merken, wenn er Blödsinn macht, nicht erst im Fehlerlog nach dem Deployment.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Durch die weitere Nutzung der Seite stimmst du der Verwendung von Cookies zu. Weitere Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen" eingestellt, um das beste Surferlebnis zu ermöglichen. Wenn du diese Website ohne Änderung der Cookie-Einstellungen verwendest oder auf "Akzeptieren" klickst, erklärst du sich damit einverstanden.

Schließen