Ich glaube mich zu erinner, dass ich in meinen Anfängen bestimmte Effekte mit Leerzeichen erreichen wollte, die dann aber nicht eintraten.
Ich habe deine Änderung schon übernommen.
whitespace
sehe ich genauso wie meine Kollegen.composer.json
bei den Einrückungen mal Tabs, mal Leerzeichen verwendet werden. Irritiert hat mich das dies auch bei offiziellen Extensions unterschiedlich gehandhabt wird. Deshalb habe ich ein bisschen recherchiert..editorconfig
vorzuschlagen war dieser.Code: Alles auswählen
[*.{json,yml}]
indent_style = space
Da kann ich die Erklärung liefern, da ich vor paar Jahren bei einer Ext (LFWWH) auch über diesen Punkt gestolpert bin. Des Rätsels Lösung ist Titania (das CDB System). Beim hochladen in die CDB wird dieIMC hat geschrieben: 26.07.2023 00:34 Mir war aufgefallen das in dercomposer.json
bei den Einrückungen mal Tabs, mal Leerzeichen verwendet werden. Irritiert hat mich das dies auch bei offiziellen Extensions unterschiedlich gehandhabt wird.
composer.json
bei Bedarf automatisch neu erstellt, zum Beispiel um die Versionsprüfung hinzuzufügen. Und bei diesem Schritt werden zwangsläufig Einrückungen per Tabs durch Einrückungen per Spaces ersetzt. Wenn du also Exts findest, bei denen noch Tabs vorhanden sind, dann wurde bei denen die composer.json
durch Titania nicht neu erstellt.composer.json
durchgängig Tabs verwendet werden. Leider kommt uns da die Technik in die Quere:Rein technisch gesehen ist es für PHP irrelevant, ob mit Spaces oder Tabs eingerückt wurde. Der JSON Parser ignoriert sowieso jegliche "unnötigen" Whitespaces und dazu gehören die optischen Einrückungen, denn das ist ein künstliches Konstrukt für Menschen, damit diese eine solche Datenstruktur leichter lesen können. Für die Maschine, in dem Fall Software und in diesem spezifischen Fall PHP, ist das aber komplett bedeutungslos.Nach dem Überfliegen von einigen Seiten im Netz habe ich festgestellt das es eigentlich egal ist. Man aber aus kompatibilitäts Gründen zu PHP, 4 Leerzeichen nutzen sollte.
Ja, wobei es in der Umfrage primär darum ging, einen vierten Parameter fürDer entscheide Beitrag für meine Entscheidung eine Änderung für die.editorconfig
vorzuschlagen war dieser.
https://wiki.php.net/rfc/json_encode_indentation
json_encode
hinzuzufügen, mit dem Coder die Einrückungsbreite festlegen können. Nur am Rande: Wenn ich mich so bei den Coder Kollegen umschaue, Hobby wie Beruflich, dann liegen die Standpunkte bezüglich Einrückungen (Tabs oder Spaces) sowie Einrückungsbreite auch sehr weit auseinander. Ein grosser Teil favorisiert inzwischen eine Breite von 4 Spaces, für andere ist selbst das schon "Verschwendung" und sie nutzen nur 2 Spaces, das sind aber nur wenige. Dann gibts auch noch Hardliner die die Meinung vertreten, das ein Tab eine gottgegebene Breite von 8 Spaces hat und alles andere Ketzerei ist. composer.json
sowieso fallweise von Titania mit Spaces neu erstellt wird, könnten wir auch gleich den Standard auf Spaces ändern.Wegen diese unterschiedlichen Befindlichkeiten ist der 4te Parameter inLukeWCS hat geschrieben: 26.07.2023 11:58... dann liegen die Standpunkte bezüglich Einrückungen (Tabs oder Spaces) sowie Einrückungsbreite auch sehr weit auseinander. Ein grosser Teil favorisiert inzwischen eine Breite von 4 Spaces, für andere ist selbst das schon "Verschwendung" und sie nutzen nur 2 Spaces, das sind aber nur wenige. Dann gibts auch noch Hardliner die die Meinung vertreten, das ein Tab eine gottgegebene Breite von 8 Spaces hat und alles andere Ketzerei ist.Das sind aber auch nur wenige und die werden auch immer weniger. ^^
json_encode()
auch eingeführt worden. Vorher waren 4 Spaces mit dem setzen des pretty flags fix gesetzt. Ich finde Tabs auch flexibler da jeder durch seine Einstellungen im Editor seine bevorzugte Einrücktiefe konfigurieren kann ohne Änderungen im Code vorzunehmen.LukeWCS hat geschrieben: 26.07.2023 11:58 Mir wären Tabs generell lieber, da flexibler und kompakter.
Meine Motivation für die Anpassung derLukeWCS hat geschrieben: 26.07.2023 11:58 Wenn man allerdings die Tatsache heranzieht, dass spätestens beim Hochladen einer Ext diecomposer.json
sowieso fallweise von Titania mit Spaces neu erstellt wird, könnten wir auch gleich den Standard auf Spaces ändern.
.editorconfig
war letztendlich dass mit dem 4ten Parameter die Möglichkeit besteht die Anzahl der Leerzeichen vorzugeben, jedoch kein Tab ausgewählt werden kann. Deshalb sehe ich die Leerzeichen als den PHP Standart für JSON-Dateien.