[20260708]vim字符集以及寄存器问题.txt
--//最近几天总是莫名其妙的vim里面的寄存器保存内容存在问题,我自己有一个习惯把一些长的复杂按键以宏的形式记录在寄存器中,
--//里面包含一些非ascii字符,只要执行@寄存器就是可以执行,前面加数字可以重复次数。
--//仔细检查才发现问题在于最近打开一些utf-8的文本,设置:set encoding=utf-8,导致寄存器的内容发生变化。
--//假设在encoding=cp936的情况下,以寄存器z作为测试例子:
:register z
--- 寄存器 ---
"z 测试
--//如果打开utf-8文件,设置set encoding=utf-8,再次查看寄存器,内容如下:"
register z
--- 寄存器 ---
"z <b2><e2><ca><d4>
--//再打开encoding=cp936编码的文件:"
:register z
--- 寄存器 ---
"z 2aê
--//这样寄存器的内容就被破坏了."
--//我自己也没有什么好办法,仅仅将原始信息记录在文件registers.vim里面.格式就是
let @z="...."
--//出现问题时执行如下:
:source D:\tools\vim\vim80\registers.vim
--//还原寄存器信息.
--//以后采用utf-8字符集 会越来越多,包括许多新的软件,反而gbk字符集支持不好,vim9.0我安装又删除了,就是对GBK字符集不友好.
--//而我们以前的生产系统数据库采用的还是-characterSet ZHS16GBK,以前也遇到建立的存储过程的注解出现乱码的情况,反正在工作中
--//注意.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-3175593/ ,如需转载,请注明出处,否则将追究法律责任。