Ubuntu Gvim中的文本消失
我在Ubuntu上使用GVim有一段时间的字体渲染问题。在选项卡之间切换时,我经常注意到这个问题。在选项卡之间切换后,有时不会渲染线。如果我按ctrl+l,选项卡中的内容将被重新绘制,缺少的行将正确呈现。我想我可以在我的.vimrc中编写一个函数,在切换选项卡后自动运行ctrl+l,但我觉得我只是在避免问题,而不是解决根本问题Ubuntu Gvim中的文本消失,ubuntu,vim,Ubuntu,Vim,我在Ubuntu上使用GVim有一段时间的字体渲染问题。在选项卡之间切换时,我经常注意到这个问题。在选项卡之间切换后,有时不会渲染线。如果我按ctrl+l,选项卡中的内容将被重新绘制,缺少的行将正确呈现。我想我可以在我的.vimrc中编写一个函数,在切换选项卡后自动运行ctrl+l,但我觉得我只是在避免问题,而不是解决根本问题 Ubuntu 11.10 GVim 7.3 .vimrc:set guifont=incolata\12 长期以来,我一直在使用不同版本的Ubuntu和不同的gui字
- Ubuntu 11.10
- GVim 7.3
- .vimrc:
set guifont=incolata\12
function TabLeft()
let tab_number = tabpagenr() - 1
if tab_number == 0
execute "tabm" tabpagenr('$') - 1
else
execute "tabm" tab_number - 1
endif
endfunction
function TabRight()
let tab_number = tabpagenr() - 1
let last_tab_number = tabpagenr('$') - 1
if tab_number == last_tab_number
execute "tabm" 0
else
execute "tabm" tab_number + 1
endif
endfunction
map <silent><C-S-PageUp> :execute TabRight()<CR>
map <silent><C-S-PageDown> :execute TabLeft()<CR>
函数TabLeft()
设tab_number=tabpagenr()-1
如果tab_number==0
执行“tabm”tabpagenr(“$”)-1
其他的
执行“tabm”选项卡编号-1
恩迪夫
端功能
函数TabRight()
设tab_number=tabpagenr()-1
让最后一个\u tab_number=tabpagenr(“$”)-1
如果制表符编号==最后一个制表符编号
执行“tabm”0
其他的
执行“tabm”选项卡编号+1
恩迪夫
端功能
映射:执行TabRight()
映射:执行TabLeft()
我从未见过:execute
被用来调用函数(我认为它是Vim版本的eval()
,来自其他脚本语言)。尝试将:execute TabRight()
更改为:call TabRight()
,看看这是否有帮助。我在Ubuntu上看到字体渲染的小故障。我的解决方法是使用“textmode”样式的选项卡标题,请参见GUI选项
以下是我喜欢的设置:
:se guioptions=agim
注意
- 我可能在想象,但它似乎也更敏捷
- 这将为编辑带来更多屏幕空间
- 上述设置也会删除所有滚动条(谁需要滚动条?)
:se guioptions-=e
通过在每个
执行“tabm”
命令之后添加execute
。我的标签切换现在强制屏幕重新绘制。这感觉像是一个临时的修复,直到我能找出根本的问题是什么。我添加了se-guioptions=agim
。如果有什么我真的更喜欢干净的外观。我讨厌GVim添加到编辑器中的所有额外垃圾。自从做了这个更改之后,我没有发现任何文本呈现的问题。经过一段时间的测试后,我会将这个答案标记为已接受的答案。谢谢。我也遇到了同样的问题,删除-e选项似乎对我起到了作用。我将execute
更改为call
,选项卡切换功能的行为与此相同。我认为你是对的,在这种情况下使用“call”比“execute”更正确。