在命令行查看git的diff,碰到GBK编码的文件时,中文显示会是乱码。
原因:git diff的输出使用less,而less不支持gbk编码
解决方案:通过将git diff的输出放到一个支持gbk的编辑器中就可以了
以下是使用不通的编辑器查看
git diff
的办法。
git diff | vim -R -
MacVim
git diff | mvim -R -
Sublime
git diff | subl
TextMate
git diff | mate
vim中使用gbk编码
用vim打开文件后,如果vim无法正确识别文件的编码,通过下面命令可以通知vim使用指定编码重新加载文件:
:e ++enc=<encoding>
fileencoding配置项
vim的这个配置项的值是一个编码列表。
当vim打开一个文件时,会按照顺序尝试使用这个列表中的编码来显示文件,并使用第一个能够正确显示文件的编码来打开文件,更多细节内容参考vim文档。
在.vim/vimrc中设置fileencodings,自动识别gbk编码
set fileencodings=ucs-bom,utf-8,utf-16,gbk,latin1