2011-08-21 103 views
9

我該如何獲取Vim中當前窗口的寬度和高度?檢測拆分窗口的尺寸

我想根據當前窗口的尺寸創建一個垂直或水平分割的熱鍵,但我不知道要檢查的變量或方法。

謝謝!

編輯:

這是我現在使用的命令,以防萬一有人感興趣。

command! SplitWindow call s:SplitWindow() 
function! s:SplitWindow()     
    let l:height=winheight(0) * 2  
    let l:width=winwidth(0)   
    if (l:height > l:width)     
    :split        
    else         
    :vsplit        
    endif         
endfunction 
+1

對'winnr()'的調用在這裏是多餘的。只需使用'winwidth(0)'和'winheight(0)'。 –

+0

啊,謝謝!固定在上面。 – suderman

回答

10

請參閱winwidth()winheight()的功能。它們都以一個窗口的數量爲 作爲單個參數,並分別返回用該數字標識的窗口的寬度(以字符計) 和高度(以直線表示)。對於當前窗口,零代表 。請注意,當沒有對應於給定數字的 窗口時,返回值等於-1。

+0

謝謝你的幫助! – suderman