仗剑走天涯

Just Do It!
随笔 - 61, 文章 - 0, 评论 - 0, 阅读 - 69865
  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

vim编辑器中文乱码修复

Posted on   三颗油  阅读(1013)  评论(0编辑  收藏  举报

Vim是老式UNIX编辑器Vi的大幅改进版本。 新增功能:多级撤消、语法高亮、命令行历史记录、在线帮助、拼写检查、文件名补全、块操作、脚本语言等。 还有一个图形用户界面 (GUI)可用。 尽管如此,Vi 兼容性仍然保持,那些“在手指”中拥有 Vi 的人会感到宾至如归。 请参阅“runtime/doc/vi_diff.txt”以了解与Vi的区别。

此编辑器对于编辑程序和其他纯文本文件非常有用。所有命令都以普通键盘字符给出,因此可以用十根手指打字的人可以非常快速地工作。 此外,功能键可以由用户映射到命令,鼠标可以使用.

Vim在MS-Windows(NT,2000,XP,Vista,7,8,10),Macintosh,VMS和几乎所有版本的UNIX下运行。 移植到其他系统不应该非常困难。 旧版本的 Vim 可在 MS-DOS、MS-WINDOWS 95/98/Me、AmigaDOS、Atari MiNT、BeOS、RISC OS 和 OS/2 上运行。 这些不再维护。

官网 https://www.vim.org/, vim编辑器下载链接 https://www.vim.org/download.php

 

测试环境 Windows10

当我们安装好Vim编辑器工具后,在编辑文本输入中文时显示乱码,如何修复呢?

需要将下面代码添加到 _vimrc文件中(该文件位于vim安装路径下的根目录里)

set encoding=utf-8
set termencoding=utf-8
 
set fileencodings=ucs-bom,utf-8,cp936,gb18030,big5,euc-jp,euc-kr
set fileencoding=utf-8

说明

1)encoding是设置vim内部的编码方式,大概就是vim内部的缓存 寄存器 脚本什么的,这个用户大可不必关系,除非你在意性能,最好把这三个都设成一致的。

2)termencoding是vim用于屏幕显示的编码,如果其值与encoding值不一致的话,vim会把encoding编码转换为termencoding编码再输出到屏幕。

3)fileencodings是vim读取文件时所需要用到的编码方式,vim读取文件时会按先后顺序依次按设置的编码方式来尝试解码文件中的内容,如果符合就用此编码来解码该文件,并会把fileencoding值设置为该编码。上面的编码顺序是从网上找来的,应该没满足大部分需求。(按编码要求的严格顺序来排序)

如果vim从列表中找不到匹配编码的话它就会用系统默认的编码来读取。

4)fileencoding是保存文件时所用的编码,vim 会把文件内容转换为该格式保存。

中文乱码的原因就是因为这几个编码设置的不同,所以会产生编码转换的错误,如果有条件的话最好把这几个编码统一用utf-8编码就ok了。

 

方法一:

1. 在Vim编辑器中查看设置 编辑-启动项设置

 

 

 

 如果受系统保护,无法保存,请使用方法二

1. 在Vim安装路径下找到_vimrc文件

 

 2. 将该文件先复制到桌面上,再将上面的代码复制到文件内容的最前面,保存后将该文件再拷贝回原路径,替换原始文件重启启动Vim编辑工具即可。

 

 

 

文章参考:https://blog.csdn.net/shujianhenu/article/details/46537651

 

相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示