5
我正在尋找一個函數,我可以從地圖中調用。這個想法是調整窗口大小以適應緩衝區內容。這是不是太困難:如何調整窗口大小以適應只考慮邏輯線?
fu! ResizeWindow(vert) "{{{
if a:vert
let longest = max(map(range(1, line('$')), "virtcol([v:val, '$'])"))
exec "vertical resize " . (longest+4)
else
exec 'resize ' . line('$')
1
endif
endfu "}}}
我會,但是,像函數來計算高度時,採取合理的線路考慮(我並不過於擔心寬度)。
例如,已包裝的行(由於:set wrap
)會計爲兩行或更多行。一條37條摺疊的線路只能算作一條線路。
有沒有人知道一個方便的方法來獲得這個'邏輯行數'而不必手動計算它?如果我確實需要手動執行此操作,是否還有其他任何我錯過的情況會導致線條被表示爲可能不同數量的線條?
謝謝!這正是我所期待的。 – 2013-05-18 14:16:16