如何禁用Vim中的W11警告?
如何禁用Vim的W11警告?
针对频繁切换Git分支导致Vim反复弹出W11警告(W11: Warning: File "path/to/file.c" has changed since editing started)的场景,以下是直接解决该警告的实用方案:
方案1:自动加载外部修改,静默跳过警告
在你的~/.vimrc(Neovim用户为~/.config/nvim/init.vim)中添加以下配置:
set autoread autocmd FocusGained,BufEnter,CursorHold,CursorHoldI * if getcmdwintype() == '' | checktime | endif autocmd FileChangedShellPost * echohl WarningMsg | echo "File changed on disk. Buffer reloaded." | echohl None
这段配置会让Vim在窗口获得焦点、切换缓冲区或光标停留时,自动检查并加载外部修改的文件,仅在底部显示一条轻量提示(不需要提示可删除第二行),完全不会弹出W11警告窗口。
方案2:忽略外部修改,直接跳过警告
如果你不需要加载外部修改的内容,只想彻底屏蔽警告,可添加:
autocmd FileChangedShell * let v:fcs_choice = 'o'
该配置会让Vim自动选择W11提示中的[O]K选项,不加载外部修改,也不会弹出任何警告。
临时生效方式
若仅需单次会话禁用,可在Vim命令行直接执行:
- 要自动加载:
set autoread - 要忽略修改:
:let v:fcs_choice = 'o'
内容的提问来源于stack exchange,提问作者user2465116
相关产品推荐
相关产品推荐

