So öffnen Sie Dateien in vertikal / horizontal geteilten Fenstern in Vim über die Befehlszeile

400

Es muss einen Weg geben, der ungefähr so ​​aussieht:

vim -[option] <file-list>

Öffnen von Dateien über die Eingabeaufforderung und nicht über Vim.

  • Fenster vertikal oder / und horizontal teilen
  • in separaten Registerkarten
Andrei Chikatilo
quelle

Antworten:

389

Ich nehme an, Sie meinen von der Kommandozeile. Von vim --help:

-o[N]                Open N windows (default: one for each file)
-O[N]                Like -o but split vertically

Geben Sie dies ein, um horizontal aufgeteilte Dateien zu öffnen, zum Beispiel:

vim -o file1.txt file2.txt file3.txt
Laurence Gonsalves
quelle
14
"Ja wirklich?" Ich musste noch nie ein N.
Cascabel
3
In der Tat scheint es etwas in meinem .vimrc zu sein, das die Probleme verursacht. Wenn ich es beiseite lege, funktioniert -o ohne N wie dokumentiert.
Laurence Gonsalves
22
-oist wie :split, -Oist wie:vsplit
Evgeni Sergeev
@Cascabel -whatever[N]bedeutet, dass dies Noptional ist und weggelassen werden kann. Ich glaube, es leitet sich von der Standard- ebnf-Syntax ab
user3338098
@ user3338098 Ich denke, hier wurde möglicherweise ein Kommentar gelöscht. Laurences Kommentar "In der Tat ..." impliziert, dass es Probleme verursachte, wenn es weggelassen wurde.
Cascabel
441

Ctrl+ W, S(Großbuchstaben) für horizontales Teilen

Ctrl+ W, v(Kleinbuchstaben) für vertikales Teilen

Ctrl+ W, Qum einen zu schließen

Ctrl+ W, Ctrl+ Wum zwischen den Fenstern zu wechseln

Ctrl+ W, J(Xor K, H, L) auf benachbarte Fenster zu wechseln (intuitiv oben, unten, links, rechts)

LB40
quelle
10
So wechseln Sie zwischen Bildschirmen: Drücken Sie Ctrl-wund dann up arrowoder down arrow, um zwischen Bildschirmen zu wechseln.
Eric Leschinski
7
@EricLeschinski, ich ziehe es vor ctrl+w ctrl+w, durch Fenster zu radeln, da sich die Pfeiltasten ein wenig anti-vi
Lucas
6
Ah, aber Sie können regelmäßige vim-Bewegungen verwenden, um z. B. ctrl+w jzum Puffer unter dem aktuellen zu springen.
Mitjak
4
:qschließt auch Fenster
Alexandre Bourlier
1
Strg + w zum Wechseln des Fensters scheint auf dem Mac-Terminal nicht zu funktionieren. Ctrl + w, w aber
Slashdottir
325

Während der Ausführung von vim:

  1. :sp filename für eine horizontale Teilung
  2. :vsp filenameoder :vs filenamefür eine vertikale Teilung
Taylor Leese
quelle
61
Dies beantwortet die aufgeworfene Frage nicht ... aber es hat mir SICHER geholfen: D Danke!
Abel
1
Vielen Dank dafür. Genau das brauche ich!
Mapcuk
7
Danke, genau das, wonach ich gesucht habe. Ich auch:set splitright
zack
4
ctrl-ww zum Umschalten zwischen Teilungen
Nerrve
:vsplit filenameist das gleiche wie :vsp filenameund :vs filename, aber vielleicht ein bisschen leichter zu merken für manche Leute
b_dev
21

Ein weiterer interessanter Trick ist das Argument CLI -p, das sie in separaten Registerkarten für aktuelle Versionen von vim und gvim öffnet.

gvim -p file1.txt file2.txt
dls
quelle
1

Ein weiterer nützlicher Trick, den ich gerade herausgefunden habe, ist, dass Sie Platzhalter in der Dateiliste verwenden können, um mehrere Dateien zu öffnen. Angenommen, Sie möchten die Dateien file1.txt, file2.txt und file3.txt in separaten Registerkarten öffnen, möchten jedoch nicht alles eingeben, was Sie tun können:

vim -p file*

Ich muss häufig viele Dateien mit einem ähnlichen Präfix öffnen, was sehr hilfreich war

Brent
quelle
12
Das hat nicht mit Vim selbst zu tun, sondern mit der Shell, die Sie verwenden. Es ist die Schale, die die Klumpen erweitert.
Kazark