VIM设置快捷键运行Python脚本时输出格式异常问题求助
解决VIM一键保存运行Python脚本输出错乱问题
问题根源在你映射里的&——这个符号会让Python脚本后台运行,脚本的输出会直接打到终端缓冲区,和VIM自身的保存提示混在一起,自然格式错乱。而手动执行:!python3 file.py是前台运行,VIM会暂停界面,等脚本跑完显示完整输出,按回车才回到编辑界面,所以格式正常。
给你几个解决方法:
最直接的修正:去掉
&,让脚本前台运行
把command.vim里的映射改成:noremap <leader><leader> :w<cr>:!python3 %<cr>执行快捷键后,VIM会先保存文件,然后暂停显示脚本输出,等你按回车就回到编辑界面,输出完全正常。
优化体验:自动刷新界面,去掉多余提示
如果不想每次按回车,用silent和redraw!优化:noremap <leader><leader> :w<cr>:silent !python3 %<cr>:redraw!<cr>silent会隐藏“按回车继续”的提示,redraw!强制刷新VIM界面,避免脚本输出残留。特殊需求:后台运行且不干扰界面
如果你的脚本是长时间运行的进程,需要后台执行,就把输出重定向到文件:noremap <leader><leader> :w<cr>:!python3 % > output.log 2>&1 &<cr>脚本输出会写到当前目录的
output.log里,不会干扰VIM界面,之后可以用:e output.log查看结果。
内容的提问来源于stack exchange,提问作者alpastor
相关产品推荐
相关产品推荐

