Soweit ich weiß, ist der einzige eingebaute Weg, dies zu tun:
:args *.vim
:tab all
Zunächst :args
wird die Argumentliste durch die ersetzt. In der Argumentliste werden die Dateien aufgelistet, mit denen Sie Vim geöffnet haben. Das vim file1 file2
bedeutet, dass die Argumentliste file1
und enthält file2
.
Wir können dies zur Laufzeit ändern und Vim öffnet einen Puffer für jeden neuen Eintrag in der Argumentliste.
Siehe :help argument-list
für weitere Informationen.
Der :all
Befehl öffnet ein Fenster für jeden Eintrag in der Argumentliste, der :tab
Befehl führt einen Befehl aus und öffnet eine neue Registerkarte, wenn der angegebene Befehl ein neues Fenster öffnen würde.
Vorbehalte
Diese Methode weist einige Einschränkungen auf.
Erstens gibt es keine Überprüfung auf Duplikate, sodass Sie zwei oder mehr Registerkarten für denselben Puffer haben können.
Das größte Problem ist jedoch, dass alle Tabs durch die Argumentliste ersetzt werden. so dass Sie verloren alle vorhandenen Tabs.
Sie können diese leicht umgehen , indem Sie :argadd *.vim
auf hinzufügen zu der Liste der Argumente, anstatt sie zu ersetzen; Befehle wie :edit
oder ändern :tabedit
jedoch nicht die Argumentliste, und Sie verlieren diese Registerkarten, wenn Sie sie nicht zur Argumentliste hinzufügen (Sie haben sie jedoch immer noch in der Pufferliste). Möglicherweise möchten Sie auch nicht alle Elemente in Ihrer Argumentliste auf einer Registerkarte öffnen. Vielleicht möchten Sie nur zwei Dateien als zusätzliche Registerkarte öffnen.
Sie könnten dies vielleicht etwas verbessern, indem Sie zuerst alle derzeit geöffneten Tabs zur Argumentliste hinzufügen (was ich nicht wirklich zur Arbeit bringen kann), aber das ist noch lange nicht perfekt. Wenn eine Registerkarte zwei oder mehr Fenster enthält, werden diese trotzdem geändert ...