1. ホーム
  2. vim

[解決済み] VIMでバッファを垂直分割で開く

2022-04-14 09:07:24

質問

VIMでファイルを編集しているときに、既存のバッファを開く必要がある場合(例えば、バッファリストから)。 :buffers ) 縦に分割して開くにはどうしたらいいのでしょうか?

で開けるのは既に知っています。 通常の のように分割します。

:sbuffer N

ここで N は欲しいバッファ番号ですが、上記で開いているのは N バッファを縦方向ではなく横方向に表示します。

また、開いた後にウィンドウの配置を変更し、このようにVertical Splitができることも承知しています。

Ctrl-W H
Ctrl-W L

ウィンドウを右または左に縦に分割します。

がある場合、そのようなことはないようです。 sbuffer があるはずです。 vsbuffer が、それは存在しません(私が知る限りではありません)。

また、この質問を解決するためのプラグインを探しているわけではないことに注意してください。私はこれを可能にする豊富なプラグインについて知っています。

すでにあるものを見逃している可能性もあると思うのですが。

編集 この問題に遭遇し、プラグインをインストールしたくない人のために、最高のコラボレーション精神で、マッピングを備えた簡単な関数を作成しました。

関数です。

" Vertical Split Buffer Function
function VerticalSplitBuffer(buffer)
    execute "vert belowright sb" a:buffer 
endfunction

マッピングを行います。

" Vertical Split Buffer Mapping
command -nargs=1 Vbuffer call VerticalSplitBuffer(<f-args>)

これは、バッファを右分割で開くという作業を実現するもので、バッファ1に対しては、次のように呼び出すことになります。

:Vbuffer 1

解決方法は?

試してみてください。

:vert sb N

を実行すると、左の垂直方向に分割されます (デフォルトでは、いくつかのオプションを変更していない限り)。

一方、右への分割を開くには。

:vert belowright sb N