2016-04-08 6 views
0

新しいウィンドウの幅が合計列数から90を引いた値に等しい、vsplitで新しいウィンドウを開くvimスクリプトを書きたいと思っています。VimL:全幅の関数として指定された幅を持つVSPLIT

結果は、現在のウィンドウは90列の幅(80列のコード+ガターを表示する)であり、新しいvsplitは画面のどの部分を残しても占有されます。

私がvsplitを正しく理解している場合、vsplit 90は作成されるウィンドウが90列であることを指定します。ウィンドウ内の現在の列数を変数に代入する方法はありますか?

let cur_cols = [insert magic here] 
let win_width = cur_cols - 90 
execute "vsplit ". win_width 
+0

'winwidth'は、現在の分割の幅(列)を提供します。試してみてください:echo winwidth(0) ' –

+0

これを送信したい場合は正解です。確認します。 –

答えて

1

ウィンドウの幅を見つけるにはwinwidthを使用してください。 winwidthは、幅をnoとして返します。の文字ウィンドウを収容することができます。あなたの場合、使用

let cur_cols = winwidth(0) 

ここでパラメータ0は、現在のウィジェットを参照しています。詳細については、

:help winwidth 
:help :vsplilt 
関連する問題