vimタブを垂直分割に変換するには?

vimタブを垂直分割に変換するには?

私はVSコードを使用しましたが、ウィンドウを右にドラッグしてドロップして垂直分割を作成する方法が気に入りました。

時にはvimでたくさんのファイルを開くことがあります。( vim -p *py)。タブを閲覧しながら、この特定のタブを縦に分割する必要があると感じました。

ドラッグアンドドロップ部分を忘れた場合、現在のタブを垂直に分割するにはどうすればよいですか? (私はすでにsplitright決めた)

編集する:

提案通りスズメ1029:vs sb#動作しますが、古いバッファをそのままにします。何とか削除できますか?たぶん、いくつかの機能がキーストロークにバインドされていますか?

答え1

読んだらこの記事buffers、これはvimで、とwindowsの違いを理解するのに役立ちます。tabs

この回答スーパーユーザーに対する解決策があります:

vs垂直分割モードでファイルを開くのと同様に、コマンドはvsplitファイル名を引数として使用します。:vs somefile

既存のバッファをペインに配置するには、このsb#コマンドを使用します(ここで#はバッファ番号です)。 VIMの分割は基本的に水平分割で行われます。これを変更するには、コマンドの前に vert プレフィックスを追加すると、次の分割コマンドが垂直方向に分割されます。

:vert sb#

#現在のウィンドウで分割されて表示されるバッファの数はどこにありますか?

:ls!現在アクティブなバッファを表示するには、またはを使用できます:buffers

ソリューション#1vimウィンドウ/タブ/バッファについて以前にリンクされた記事が提案したようにエアホース他のエディタで「タブ」が機能すると予想されるように、現在開いているバッファを表示するためのvimプラグインです。

答え2

重要な要約:Vimでは、タブの代わりにバッファを使用してください。

私が正しく理解した場合、問題はファイルをペインに保存したいことですしかし、他のファイルが引き続き表示されるように、もう一方のファイルを変更します。

Vimのタブは実際にはこのように機能しないことがわかりました。タブはウィンドウのコレクションなので、タブを変更するたびにすべてのウィンドウを同時に切り替えます。これは、同時に複数のウィンドウセットで作業する場合に便利です。

しかし、一度に1つのウィンドウでファイルを変更しようとしているので、これは望むものではないようです。

これを行うには、以下を使用する必要があります。バッファーVimではタブではありません。バッファは、他のエディタ(VS Codeなど)のタブに最もよく似たVim機能です。

ファイルを開くときに使用し(タブでファイルを開くvim *.pyオプションはありません)、および/またはを使用してナビゲートします。その後、またはを使用して分割し、Ctrl-Wコマンドを使用してウィンドウを切り替えて再設定できます。-p:n:prev:N:vs:sp

別のウィンドウセットが必要な場合、または以前のウィンドウ設定を維持しながらいつでも戻ることができるように、一時的に単一のファイルにフルスクリーンを表示したい場合は、タブを使用します。

読みたいかもしれません:help buffers(ここリンク)では、これらすべての概念を詳しく説明しています。

答え3

理論的な答えは素晴らしいと思いますが、実際にワークフローを扱う答えはありません。

分割画面を使用するには、

vim file1 (or just vim)

一度

ctrl+w v --> vertical split
ctrl+w h --> horizontal split

新しいファイルを開く

:n file3

または親ディレクトリにあります。

:n ../file4 

または複数のファイルを開く

:n file1 file2 file3 ../file4

それらを切り替える

:n

以前の答えですでに指摘したように、buffersここではvimを使用します。

関連情報