字符集(charset)
代码点(code point)
以ASCII为例,它为每一个字符分配一个数字序号,比如A的编码点是65,所有代码点的集合就叫字符集
字符编码(char encoding)
字符编码是代码点的二进制存储格式。一个字符集会有多种存储格式,比如UNICODE有UTF-8、UCS-16、UCS-32 UTF-8:网络传输和本地存储 UCS-16:内存存储 UCS-32:
VIM涉及到编码的设置
fileencoding
存放在磁盘上的文件文件本身的编码格式
encoding
VIM本身运行时的菜单、标签、缓冲区等的编码格式
termencoding
各种终端配置的编码格式,同一时刻只能使用一种编码格式,并按照格式从收到的二进制字节流中解码出字符
解决VIM乱码的最佳配置
echo 'set fileencoding=utf-8 set encoding=utif-8 set termencoding=utf-8,gbk,latin1' >> ~/.vimrc
参考资料: https://blog.csdn.net/smstong/article/details/51279810