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