Vim和Neovim设置文件编码自动识别 发表于 2024-04-15 更新于 2024-10-26 今天在打开同学的论文时发现乱码,这显然是由于他的LaTeX文件是在Windows下编辑的,默认编码为GBK编码,于是需要配置vim和neovim来自动转换编码到UTF-8才行。处理方法为: vim encodingsneovim encodings~/.vimrc12345678" 设置编码为utf-8set encoding=utf-8" 如下设置,则无论所打开的文件是否为utf-8编码,保存时都强制保存为utf-8"set fenc=utf-8" 设置多编码文件set fileencodings=utf-8,gbk,cp936,gb18030,big5,euc-jp,euc-kr,latin1,ucs-bom,ucs" 设置终端显示编码为utf-8set termencoding=utf-8~/.config/nvim/lua/lsp/base.lua123456-- 设置编码为UTF-8vim.o.encoding = "utf-8"-- 如下设置,则无论所打开的文件是否为utf-8编码,保存时都强制保存为utf-8-- vim.o.fenc=UTF-8-- 设置多编码文件vim.o.fileencodings = "utf-8,gbk,big5,cp936,gb18030,euc-jp,euc-kr,latin1,ucs-bom,ucs " 由于neovim取消了对termencoding的支持,所以在neovim的配置中去除了这一项。详情参考commit-abaabd1d0