Format Ruby-code in Vim
Nur verschieben auf Vim im moment. In TextMate ich könnte format-code durch drücken von Cmd-Alt-[. Wie kann ich erreichen, das gleiche in Vim?
Siehe die Antwort weiter unten für den Befehl. Ich fand außerdem musste ich Folgendes in meine .vimrc
so, dass Vim wusste, wie man diesen Rubin.
if has("autocmd")
filetype indent on
endif
Du musst angemeldet sein, um einen Kommentar abzugeben.
Vimcasts hat einen nützlichen screencast zu diesem Thema, dass Sie interessiert sein könnten in
Wenn ich sehe, Fragen zu Vim und Neuformatierung und reindenting, ich in der Regel fühlen sich die Verwirrung. Aber es ist ziemlich einfach.
Reindenting, erfolgt mit = - Taste, ist ein Prozess der Verschiebung der Linie indetation ohne einfügen, die Zeile endet - kein harter Umbruch. Einfach ausgedrückt, Anfang Spalten der selektierten Zeilen können sich ändern, aber der Inhalt nicht.
Auf der anderen Seite, die Neuformatierung abgeschlossen ist, umschreiben von einem ausgewählten Stück code. Einfach gesagt, alles gelöscht und neu geschrieben nach der Sprache definierten Regeln in Vim. Einfach, nicht wahr?
Den üblichen patern für reindentation ist, gehen Sie an den Anfang der Datei (gg), wechseln Sie in die Linie-Auswahl (V), gehe zum Ende der Datei (G) und führen Sie reidentation (=).
Dass Einrücken in vim: ggVG=
Neuformatierung Muster beginnt mit den gleichen Tasten (ggVG), aber anstatt der gleichen Taste, die Sie tun gq - formatieren Vim-Befehl.
Dass Formatierung in vim: ggVGgq
Dies funktioniert out-of-box in jedem Vim-Instanz, sogar mit text. Nur, wenn Vim nicht verstehen, die Programmiersprache, die Sie brauchen, um Sie mit richtigen Formatierung-Regeln (in der Regel Bündel .vim-Dateien, die gehen, um die .vim-Verzeichnis-Struktur).
Neuformatierung für Ruby funktioniert nur, wenn vim plugin-ruby installiert ist.
Ich hatte, dies zu veröffentlichen auf meinem blog 😉 Ist nicht Vim cool? Es ist.
Versuchen:
im normalen Modus.
Wenn Sie auf der Suche für mehr als nur den Einzug, haben Sie einen Blick auf ruby-verschönern.
Es kann integriert werden mit Elan durch vim-autoformat.
ggVGgq wird, formatieren Sie die gesamte Datei nach den aktuellen Dateityp
Ich veröffentlicht ein VIM-plugin, das tun einige mehr umfassende Formatierung für die Ruby-Dateien. Neben Einrücken, es tut Dinge wie remove trailing whitespace, und Räume konsequent aus Methodendeklarationen:
vim-autoformat-Schienen
Für kleine Einbuchtung, versuchen:
=}
,=)