如何在vimrc中配置nobomb?配置不生效问题求助
解决Vimrc中
set nobomb不生效的问题 问题原因
set nobomb是缓冲区局部设置,vimrc里直接写的全局设置仅对Vim启动时的默认空缓冲区生效。当你打开已有文件时,Vim会读取文件本身的BOM标记并覆盖全局设置,所以全局的set nobomb无法作用于后续打开的文件。而在已打开的窗口执行该命令时,是直接针对当前缓冲区修改,因此生效。
解决方案
在vimrc中添加自动命令,让每个文件读取完成后自动应用nobomb设置:
autocmd BufReadPost * set nobomb
如果需要确保新建文件默认也无BOM(Vim默认已为nobomb,可作为冗余保障),再添加:
autocmd BufNewFile * set nobomb
验证方法
打开一个带BOM的文件后,执行:set bomb?查看状态,应该显示nobomb。
内容的提问来源于stack exchange,提问作者Fabian G.
相关产品推荐
相关产品推荐

