我在GNU/Linux机器上运行gVim 7.3.我想知道是否有办法根据窗口的大小自动更改字体.我对Vim比较陌生,所以我对它并不熟悉.
我的情况是这样的:我使用DejaVu Sans Mono 12作为我的默认字体,但有时我想切换到终端9,当我想缩小Vim窗口以查看屏幕上的内容时我输入.(你知道,对于我们这些有小笔记本电脑屏幕而不想在工作空间之间切换的人......!)
所以我想知道如果我将.vimrc文件中的命令缩小,如果我将默认窗口大小缩小到足够小以便Vim会自动调整字体,这种行为是否会自动发生.
有任何想法吗?
VimResized当窗口大小改变时,Vim会触发事件.您可以编写一个适应font('guifont')的autocmd .这是一个只考虑'columns'(不是' lines')并且具有硬编码字体名称的示例:
function! FontChangeOnResize()
if &columns > 80
set guifont=Lucida_Console:h14
elseif &columns > 60
set guifont=Lucida_Console:h12
elseif &columns > 40
set guifont=Lucida_Console:h10
elseif &columns > 20
set guifont=Lucida_Console:h8
else
set guifont=Lucida_Console:h6
endif
endfunction
autocmd VimResized * call FontChangeOnResize()
Run Code Online (Sandbox Code Playgroud)