Ich drücke ⌥ + ⇧ + F In Visual Studio Code für macOS die Verknüpfung zu Dokument formatieren , um eine Datei mit dem Namen foo.rb
oder foo.html.erb
zu formatieren.
Anstatt das Dokument zu formatieren, wird der folgende Brief gedruckt: Ï
Wie kann ich das Dokument formatieren?
Sie können Formatzuordnungen in VSCode festlegen, sodass .erb-Dateien wie .html behandelt werden.
Gehen Sie zu Datei-> Einstellungen-> Einstellungen-> Klicken Sie oben rechts auf ... und dann auf Einstellungen.json
Dann fügen Sie diesen Code in Ihre settings.json ein
"files.associations": {
"*.html.erb": "html"
}
So habe ich dieses Problem gelöst. Einige Code-Highlights werden entfernt, HTML-Vorlagen werden jedoch wie ein HTML-Dokument automatisch formatiert.
Heutzutage (März 2019) halte ich hübscher mit hübscherem Ruby für die besten Optionen: Es kann Ruby, ERB (als HTML), JS und vieles mehr verarbeiten.
prettier script.rb # will show you the formatted script
prettier --write script.rb # will overwrite the file with the formatted script
Sie können das Prettier VS Code-Plugin verwenden, um dies automatisch zu tun: https://marketplace.visualstudio.com/items?itemName=esbenp.prettier-vscode
All diese Einstellungen benötigen Sie in VS Codes settings.json
Datei:
"Ruby.rubocop.onSave": true,
"editor.formatOnSaveTimeout": 5000,
"editor.formatOnSave": true,
"files.associations": {
"*.erb": "erb"
},
Speichern Sie die Einstellungsdatei. Installieren Sie die Erweiterungen "Ruby-rubocop" und "ERB Formatter/Beautify" auf VS Code. Befolgen Sie die Dokumentation zu diesen beiden Erweiterungen, um ihre gem
Abhängigkeiten zu installieren. Starten Sie VS Code neu.
Die Funktion zum Formatieren beim Speichern wird nur ausgelöst, wenn die Datei tatsächlich gespeichert wird (was nur geschieht, wenn Sie die Datei ändern). Das Speichern einer Datei, die keine Änderungen enthält, löst beim Speichern kein Formatieren aus.
gem install htmlbeautifier
durchsuchen Sie die Suchfunktion im Editor mit Strg + Umschalt + P (oder Befehl + Umschalt + P auf dem Mac) und suchen Sie dann nach Dokument formatieren.
Sie können Rufo verwenden, um Ihren Ruby-Code zu formatieren. Es ist ein meinungsfähiger Formatierer (wie Prettier ist für JS, wenn Sie damit vertraut sind).
Sie können die Erweiterung vscode-rufo verwenden, um sie in VSCode zu integrieren.