接上文,跨平台的开源软件 Vim 和 wxMEdit 是我用过的两个最擅长处理编码问题的文本编辑器。
上文说了 wxMEdit
http://wxmedit.github.io/zh_CN/
接下来再看 Vim
Vim 是什么
Vim是世界上公认的第二大文本编辑器(第一大是 GNU Emacs;似有“Emacs 是神的编辑器、Vim 是编辑器之神”之说)。很多人会觉得 vim 很不易用,这其中也有一定的误解。
首先需要弄清楚的是 vim 不是 vi。如今的 vim 是 Vi IMproved 的缩写,相对原始 vi 做了相当多的改善,原本 vi 的功能只占它现有功能很少的一部分。
Vim 易用性
Vim 并不像想象中的那么难用,不习惯用“h、j、k、l”移动光标,完全可以用上下左右,甚至 home、end、page up、page down。
如果在 Windows 上安装 vim,按照默认设置,它会生成一个“gVim Easy”,它看起来更像是功能加强版的记事本,可以使用 Ctrl-C、Ctrl-V、Ctrl-Z、Ctrl-A 这些快捷键,也会有菜单、右键菜单、工具栏。 Windows 版 gVim 默认配置也支持这些,差别是默认是普通模式而不是插入模式。
当然要想用到 vim 更多强大功能就需要了解它的普通模式、命令模式乃至可视模式和选择模式了。这样就的确需要了解一定量的命令技巧才行。
Vim 编码识别
Vim 的编码识别是基于配置的,未配置或者按照默认配置可能效果很差,这就是我们用 vim 打开一个常看到一堆乱码的原因之一(另外的原因是上面部分 linux 系统安装的是精简版的 vim,不支持相关特性)。
如果针对特定环境配置得当,它的编码识别准确率甚至高于 universal-chardet(firefox 的编码识别部分,MadEdit 也用它识别编码的,wxMEdit 改用 ICU)、enca(一个自动编码识别工具)。例如用下列设置:
set fencs=us-ascii,ucs-bom,utf-8,gbk,gb18030,big5,latin1
去识别简体中文为主有少量繁体中文代码的编码比 universal-chardet、enca 都要精准。这里 fencs 设置只是为了说明编码识别举例,一般很少会单独识别 us-ascii,参见我的 vimrc。
如果仍然识别错了,还可以手动指定编码,例如
echo "0: 32 30 30 30 96 32 30 34 39" | xxd -g1 -r > test.txt vim test.txt
如果 fencs 用上面的设定,这时 vim 会识别编码为 latin1(即 ISO-8859-1),查询 vim 识别到的编码用
:set fenc?
问号可以省略。
但是其中字符 '\x96' 在 ISO-8859-1 中未定义(未定义字符 vim 会用蓝色显示其编码值),可以人为判断它是 windows-1252 编码(可显字符是 latin1 的超集)的。可通过下面命令手动指定为 windows-1252 编码。
:e ++enc=cp1252
相关推荐
普通人的编辑利器——VIM_(for_windows)
程序员的编辑器——VIM(zz) - 饮水思源
文本编辑器Vim 文本编辑器Vim 文本编辑器Vim 文本编辑器Vim 文本编辑器Vim 文本编辑器Vim 文本编辑器Vim 文本编辑器Vim
05.1 文本编辑器Vim-Vim常用操作.mp4 05.2 文本编辑器Vim-Vim使用技巧.mp4
Vim的操作,实例讲解,操作文本的详细介绍
windows下的vi编辑器,不需要其他dll之类,单文件就可以在windows下面执行,喜欢在linux下用vi的有福了,这个是我找了很久才找到的,现在新版的vim在Windows下面都需要其它文件才能运行
vim配置文件——vim配置教程
让我们熟悉VIM的基本操作,同时用助于深入学习VIM。
[最优秀的文本编辑器.Vim.(绿化版)].Vim
NULL 博文链接:https://oycn0755.iteye.com/blog/479991
你想以最快的速度学习人类史上最好的文本编辑器VIM吗?你先得懂得如何在VIM幸存下来,然后一点一点地学习各种戏法。 Vim the Six Billion Dollar editor Better, Stronger, Faster. 学习 vim 并且其会成为你最后一个...
vim——最强大的一款文本编辑器,这里提供它的基础手册。
算法工程师的效率神器——vim篇.pdf
一个仿vim的文本编辑器,使用与修改都很简单 本人新手一枚,求php的工作啊。。。
windows下的vim文本编辑器,本人已将vim程序和vim运行时环境整合到了一起,下载解压后,点击install即可安装。然后添加环境变量到path。位置为当前解压的路径如:d:\vim732\vim。然后再ms_dos下敲入vim即可使用,比...
Vim是一个类似于Vi的文本编辑器,不过在Vi的基础上增加了很多新的特性,Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Emacs的不同变体。1999 年Emacs被选为Linuxworld文本编辑分类的优胜者,Vim屈居...
Vim文本编辑器,最好用的文本编辑器之一。
算法工程师的效率神器——vim篇.pdf.rar
# 基于C/C++语言的简易vim编辑器 仿vim编辑器 1. 编辑器下有normal和insert两种模式。默认为normal模式,按i键进入insert模式,按esc退出insert模式。 2. normal模式下按 h j k l键向左上下右移动光标。 3. normal...