vim设置’map:!python%’在终端执行后自动返回vim
发布时间:2020-12-15 20:58:35 所属栏目:安全 来源:网络整理
导读:我添加了地图 F12 :! python% cr到?/ .vimrc.但是,当我按下键 F12时,它会在执行此命令后自动退出.在正常情况下,它应该停在一行按ENTER或键入命令继续,但在我的情况下,它只是跳过此行并返回到vim.看起来有人按ENTER键偷偷.最令人惊讶的是它只发生在终端.当
我添加了地图< F12> :!
python%< cr>到?/ .vimrc.但是,当我按下键< F12>时,它会在执行此命令后自动退出.在正常情况下,它应该停在一行按ENTER或键入命令继续,但在我的情况下,它只是跳过此行并返回到vim.看起来有人按ENTER键偷偷.最令人惊讶的是它只发生在终端.当我手动键入`:!python%’或使用gvim时,一切正常.我不知道如何解决这个问题.
解决方法
在您能够阅读消息之前,终端版本可能会重新绘制屏幕.您可以尝试设置’lazyredraw’来延迟重绘.
解决方法是设置’lazyredraw’并向映射添加对函数getchar()的调用: function! RunPython() let s:save_lz = &lazyredraw " save 'lazyredraw' setting set lazyredraw !python % call getchar() " stop waiting pressing a key let &lazyredraw = s:save_lz " restore 'lazyredraw' endfunction map <F12> :call RunPython()<CR> 编辑: 您也可以考虑使用插件执行此任务,如“SingleCompile : Make it more convenient to compile or run a single source file”. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |