用python3.0 和vim配合检查文件中文的编码
周海汉
/文 2009.2.3
打开一个中文文件,不清楚其中文编码到底是什么格式。python源程序文件头可能指定是utf8,而实际编码却是gbk。不一致的编码在python源码中,可能在执行时得到错误的结果。一种解决办法是查看二进制,但汉字的二进制到底对应什么编码呢?
python3.0内部缺省编码为utf-8。
vim的vimrc里面增加两行:
set fenc=utf-8
set fileencodings=utf-8,cp936,big5,euc-jp,euc-kr,latin1,ucs-bom
这样,文件保存缺省的为utf-8编码。
在.vimrc中设置fenc以处理中文文件名。设置fileencoding=utf-8,gbk,...等让vim 7.0以上自动判别文件内码。如果不设置的话,在linux下打开gb2312内码的文件会显示乱码。设置后系统会自动判断内码。
set enc=cp936 这是gvim界面显示的编码,windows下用cp936,linux下用utf8,最好不要设,系统自己判断。
对新打开的已经存在的文件,如果不确定一个文件是否是utf8还是gbk,用vim打开文件,看到中文,再在命令模式下执行
:%!xxd
看到相应的二进制。假如文本中有“你好”,会在左边对应位置看到你好的十六进制表示。
打开python3.0,在命令行下将文本中的特定字“你好”进行二进制转码。
可以看到,对中文“你好”的二进制,utf8是
0xe4ba0 0xe5a5bd
而对gbk,gb2312,cp936,gb18030,则二进制是:
0xc4e3 0xbac3
与vim中二进制一比较,就看出文本中是什么编码了。
知道编码后,再用
:%!xxd -r
命令将十六进制转为普通的文本,保存。
对已经存在的文本,linux下可以用iconv将其转码。
分享到:
相关推荐
Python-mode是针对Vim文本编辑器的一个强大插件,它将Vim转换为一个功能丰富的Python集成开发环境(IDE)。这个插件集成了多种实用功能,以提高Python开发者在Vim中的工作效率。以下是对该插件及其功能的详细说明: ...
Python-Syntastic不仅可以与pylint、flake8等工具配合,还可以与其他语言的语法检查器一起使用,实现多语言的语法检查。这对于处理包含多种语言的项目非常有用。 ### 6. 注意事项 - 要确保你的系统中已经安装了所...
在实际应用中,我们还可以结合其他Vim插件,如NERDTree(用于文件管理),Tagbar(显示代码标签),Ale(实时代码检查)等,构建出一个完整的Python开发环境。这些插件与配色方案配合使用,可以进一步提高生产力和...
在这样的环境下,你可以在Vim中直接编写Python代码,利用内置的补全功能和错误检查提高效率。同时,Pythonwin可以让你通过图形化界面来调试和运行Python程序,这对于处理复杂的窗口交互或系统级别的任务非常方便。...
Mac 下 Vim 之 Python 配置步骤 Vim 是一款功能强大且灵活的文本编辑器,广泛应用于编程、文档编辑等领域。Python 是一种广泛使用的编程语言,广泛应用于人工智能、数据分析、Web 开发等领域。下面我们将介绍如何在...
Python写vim script之山寨版dbext,这个主题主要围绕如何使用Python语言来编写Vim插件,特别是构建一个类似于dbext的功能。dbext是Vim中一个非常实用的数据库扩展,它允许用户在Vim环境下直接操作数据库,执行SQL...
`vimrc`文件是Vim的配置文件,它包含了用户自定义的设置和快捷键,使得Vim更加符合个人的使用习惯。`vimrc-master`文件很可能就是一个基础的Vim配置模板,用于快速搭建适合Python开发的环境。这个配置文件通常会包含...
综上所述,vim-vint是一个用Python编写的,针对Vim编辑器的静态代码分析工具,主要用于检查和维护Vim插件的编码风格和最佳实践。它适用于Linux环境,同时也支持其他支持Vim的平台。对于那些使用Vim进行开发的程序员...
本文将深入探讨与"Python库 | vim-packadd-0.3.10.tar.gz"相关的知识点,包括Vim编辑器、Python库、以及如何在Linux环境中安装和使用`vim-packadd`。 首先,Vim编辑器是一个基于命令行的文本编辑器,起源于早期的Vi...
针对python的VIM配置文件,包含如何配置YCM过程,具体不懂欢迎咨询。
对于Python开发者来说,Vim是一个备受推崇的文本编辑器,尤其当它被优化和配置得高效时。本文将深入探讨如何利用Vim提升Python开发的效率。 首先,让我们理解为什么Vim是Python开发者的选择。Vim拥有强大的插件系统...
本话题将深入探讨一篇关于如何为Python和Golang开发者优化VIM配置的文章,这份配置被称为"Python-一份对Golang和Python友好的VIM配置"。 首先,让我们了解VIM的基本概念。VIM(Vi IMproved)是Vi编辑器的增强版,...
Python作为广泛使用的编程语言,与Vim的结合可以让编程体验更加高效。本教程将详细介绍如何为Vim配置Python相关的自动化功能,包括Python自动补全、Tab缩进自动转换为空格等,让你的Python开发工作流程更加顺畅。 ...
vim配置文件 vimrc vim配置文件 vimrc vim配置文件 vimrc
安装完vim插件(使用vi时会报错-由于自己技术能力有限暂时未解决) 使用vim不会报错,可自动缩进以及补全 需要sh或bash安装
Python.vim是一个专门为Python开发设计的Vim编辑器插件,它增强了Vim对Python代码的支持,提供了诸如语法高亮、自动完成、代码折叠、跳转到定义等实用功能,极大地提高了Python程序员在Vim环境中的开发效率。...
将vim配置为python的开发平台,本文件自带插件,其中 .vim文件夹下的目录直接拷贝到<vim安装路径>\<vim版本号>下,例如在我的电脑上,就将.vim下的所有目录拷贝至:C:\Program Files\Vim\vim73 即可。 .vimrc文件...
总结来说,虽然Vim本身是一个简单的文本编辑器,但通过安装和配置适当的插件,可以将其转变为一个强大的Python开发环境,提供代码高亮、自动补全、实时错误检查、调试工具以及项目管理功能。这不仅能满足专业开发者...
总的来说,Jedi-vim是Vim用户在Python开发中的得力助手,它的智能补全和代码导航功能显著提升了编程体验。通过合理配置和熟练使用,你将能够更加高效地编写和维护Python代码。如果你是Vim的忠实用户,并且经常从事...