我有一台笔记本电脑,屏幕是1440p的,根据我使用的屏幕,我发现自己经常调整gvim的字体大小,当我这样做时,窗口中的行数保持不变,我还使用了平铺窗口管理器。因此GVIM总是在固定大小的窗口中运行。这样做的结果是,增加字体会将状态行推出可见窗口,而减少字体会给我留下死区。到目前为止,我找到的解决方法是打开和关闭一个终端。调整gvim的大小会迫使它重新计算它需要绘制多少空间窗口。有没有办法在不产生另一个窗口的情况下触发这个效果?
62lalag41#
好吧,我有一个愚蠢的破解方法可以解决这个问题,我不会接受我自己的答案,因为这是一个关于gvim的问题,但是如果有人在得到一个合法的答案之前遇到这个问题,这是我的破解方法。
silent !xterm -e sleep .1;exit
我只是在我的字体大小调整命令,这是绑定到+和-转储。
o4tp2gmn2#
我想出了一些变通办法:
set guioptions+=k
set lines=999 columns=9999
set go+=m go-=m
'lines'
set go+=r go-=r
'columns'
go-k
set go+=k go+=mr go-=mr go-=k
2条答案
按热度按时间62lalag41#
好吧,我有一个愚蠢的破解方法可以解决这个问题,我不会接受我自己的答案,因为这是一个关于gvim的问题,但是如果有人在得到一个合法的答案之前遇到这个问题,这是我的破解方法。
我只是在我的字体大小调整命令,这是绑定到+和-转储。
o4tp2gmn2#
我想出了一些变通办法:
set guioptions+=k
:不完全是我们所需要的,但是这告诉Vim当字体大小改变时窗口大小不会改变(这就是这里发生的事情,所以没有问题)。set lines=999 columns=9999
:根据Vim文档,这将把它设置为可能的最大值(虽然它对我来说并不真正起作用,行数/列数是基于整个屏幕大小计算的,而不仅仅是窗口部分)set go+=m go-=m
:这似乎迫使vim重新计算'lines'
。不幸的是,模拟set go+=r go-=r
不会使它重新计算'columns'
...set go+=r go-=r
确实在设置go-k
时使vim重新计算'columns'
,所以如果你不需要set guioptions+=k
,一个完整的解决方案是set go+=k go+=mr go-=mr go-=k
(或者类似的东西)。