我想编写一个vim脚本,用vsplit打开一个新窗口,其中新窗口的宽度等于列总数减去90.
结果是,当前窗口宽90列(查看80列代码+ gutter),新的vsplit会占用屏幕的任何部分。
如果我正确理解vsplit,则:vsplit 90指定正在创建的窗口应为90列。有没有办法将窗口中的当前列数变为变量?
let cur_cols = [insert magic here]
let win_width = cur_cols - 90
execute "vsplit ". win_width
答案 0 :(得分:1)
使用winwidth
查找窗口宽度。 winwidth
返回宽度为no。字符窗口可以容纳。在您的情况下,请使用
let cur_cols = winwidth(0)
这里参数0
指的是当前的寡妇。有关更多信息,
:help winwidth
:help :vsplilt