我的.vimrc中有这个功能,我得到了here
function! SetExecutableBit()
let fname = expand("%:p")
checktime
execute "au FileChangedShell " . fname . " :echo"
silent !chmod a+x %
checktime
execute "au! FileChangedShell " . fname
endfunction
command! Xbit call SetExecutableBit()
当我运行:call SetExecutableBit()
时,它按预期工作。但是当我运行:Xbit
时,所有字符都会从我的术语中消失(但不会在Gvim中消失)。我在gnome-terminal和urxvt上都重现了这个。如果我尝试用鼠标或ggVG
突出显示某些文字,该文字将重新出现。
“之前”截图:
运行:Xbit
后的术语屏幕截图:
选择一些文字后的屏幕截图:
更新,因为--noplugin
发生了此错误,但<{1}} ,但它必须是我的.vimrc文件中的内容:https://gist.github.com/dbb/5373175
答案 0 :(得分:1)
这可能只是重新绘制屏幕的问题。尝试在您的函数中添加:redraw
。如果需要,将!
附加到此命令将首先清除屏幕。
function! SetExecutableBit()
let fname = expand("%:p")
...
execute "au! FileChangedShell " . fname
redraw
endfunction