删除字节顺序标记 (BOM)

Dav*_*vis 7 text-editing gvim

背景

使用pgsql在 Windows 上用 gVim 编辑过的SQL 文件运行。

问题

BOM 字符会导致语法错误pgsql。我想使用 gVim 编辑文件,保存后不再有 BOM 字符。如果文件具有 BOM 字符,则保存它会保留 BOM 字符,这是不需要的。

想法

更改设置(编辑»启动设置)如下:

set nocompatible
source $VIMRUNTIME/vimrc_example.vim
source $VIMRUNTIME/mswin.vim
behave mswin
au BufReadPre set nobomb
au BufReadPre setlocal nobomb
au BufReadPre setglobal nobomb
au BufReadPost set nobomb 
au BufReadPost setlocal nobomb 
au BufReadPost setglobal nobomb 
au BufWritePre set nobomb
au BufWritePre setlocal nobomb
au BufWritePre setglobal nobomb
au BufWritePost set nobomb
au BufWritePost setlocal nobomb
au BufWritePost setglobal nobomb
set encoding=utf-8 nobomb    " BOM often causes trouble
setlocal nobomb
setglobal nobomb
Run Code Online (Sandbox Code Playgroud)

没用。我仍然必须键入:set nobomb以明确删除 BOM。

你如何配置 gVim 以便在加载文件时立即剥离 BOM,而不必记住:set nobomb每次输入?(我想设置它并忘记它。)

谢谢!

Den*_*son 8

尝试这个:

au BufWritePre set nobomb
Run Code Online (Sandbox Code Playgroud)