参考链接:
https://www.cnblogs.com/xkfz007/archive/2011/11/17/2252019.html
https://www.douban.com/note/164292515/
我在用vi 编辑python的时候,注释行不识别中文,大概是/x67之类的样子,然后查看文件编码方式
file *.py
显示:*.py: ASCII Java program text
我也不知道为什么显示为java程序文件,我系统都没有java环境
下面改编码方式主要来自于别人的博客,详情见上面的链接。
vi ~/.vimrc
set fileencodings=utf-8,gbk
set termencoding=utf-8
set encoding=utf-8
然后说一下注意事项或者说我的收获
当文件中有中文字符的时候,文件编码方式才会是utf8
vi test.txt
写入 abc 之类的英文
然后你会发现编码方式还是没有改变,当你输入中文后编码方式才改为utf8。
原因可能是表示ASCII字符的UNICODE字符,将会编码成1个字节,并且UTF-8表示与ASCII字符表示是一样的。所以只有ASCII字符时,file命令显示是ASCII text。
当然你一心只想写中文进入,就不会看到这个现象了。
关于编码哪些东西可以看一下知乎于洋的回答,讲得很详细
https://www.zhihu.com/question/23374078
这让我知道了
为什么utf8的ascii字符占一位?
为什么要采用变长的编码方式?
如果你能回答这两个问题,我想你对utf8有了一定的认识