Eine Frage
Wenn Sie ein Codebeispiel mit Zwei-Leerzeichen-Einrückung kopieren und es in eine Vier-Leerzeichen-Einrückung konvertieren möchten, was ist die *schnellste* und einfachste Option?
Matt Stauffer, Twitter
Ich habe vor ein paar Jahren darüber geschrieben, wie man das in Sublime Text macht. Ich glaube nicht, dass es in VS Code viel anders ist.
Aber hier ist eine andere Möglichkeit: Verwenden Sie CodePen.
Schritt 1: In CodePen kopieren und einfügen
Nehmen wir an, Sie haben irgendwo Code gefunden, kopieren Sie ihn einfach und fügen Sie ihn ein

Schritt 2: Einstellungen für die Code-Einrückung anpassen
Wenn Sie bereits ein CodePen-Konto haben, ist dies wahrscheinlich bereits eingerichtet, sodass die Standardeinstellung Ihren Wünschen entspricht. Wenn nicht, passen Sie sie im Bereich „Pen Settings“ an

Schritt 3: Code formatieren
Sie können dies hier manuell tun

Möglicherweise müssen Sie diese Option überhaupt nicht verwenden, wenn Sie den Pen speichern und die Option „Beim Speichern formatieren“ aktiviert haben, da dies automatisch geschieht.

Es wird schnell auf diese neue 4-Leerzeichen-Präferenz umgestellt
CodePen verwendet Prettier im Hintergrund, um dies zu tun. Sie könnten dies also überall tun, wo Sie Zugang zu einer funktionierenden Version von Prettier haben, aber es könnte auf CodePen einfacher sein, da es nichts gibt, wie das Bearbeiten von Konfigurationen oder ähnlichem, um anzupassen, wie Sie es wünschen. Prettier hat auch seinen eigenen Spielplatz, der wahrscheinlich genauso einfach ist wie CodePen, außer dass Sie auf CodePen möglicherweise bereits Ihre Präferenzen eingerichtet haben, was einen Schritt spart.
Der ultimativ bessere Weg ist, eslint zu haben und eine Regel zu erstellen, so dass egal welches Format oder welche Einrückung Sie schreiben/kopieren und einfügen, es beim Speichern wie gewünscht angepasst wird.
Hängt von Ihrer Konfiguration ab. Sie können ein sehr strenges eslint-Regelwerk haben, das das für Sie erledigt, aber ich bevorzuge die Verwendung von prettier zur Formatierung und überlasse eslint die Überprüfung der Codequalität.
Es ist seltsam, wenn Ihre IDE das nicht automatisch macht, oder?
Ich denke auch. Manchmal, wenn ich meinen eigenen Code kopiere/verschiebe, ist der gesamte Block entweder zu stark um eine konstante Anzahl von Tabs/Leerzeichen eingerückt oder nicht genug. Dann Strg+Alt+F (oder was auch immer Ihr Shortcut für „Alles formatieren“ ist) und es ist behoben. Dann gibt es noch die Option „Beim Speichern formatieren“ in den Einstellungen.
Ich bin VS Code wirklich dankbar.
PS: Erwarten Sie nicht, dass Code innerhalb von Strings (möglicherweise HereDocs) formatiert wird. Der Formatter kann nicht wissen, ob dort absichtlich Tabs anstelle von Leerzeichen verwendet wurden oder nicht.
Und… die berüchtigte Debatte Tabs vs. Leerzeichen, bei der dieses Problem nur auftritt, wenn Leute mit Leerzeichen einrücken.