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

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

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)


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

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

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


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
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.