有没有办法在vim中处理ISO-8859-16 / latin10编码文件?

时间:2013-12-03 10:58:26

标签: vim character-encoding

从帮助页面部分encoding-values

Supported 'encoding' values are:            *encoding-values*
1   latin1  8-bit characters (ISO 8859-1, also used for cp1252)
1   iso-8859-n  ISO_8859 variant (n = 2 to 15)
[...]

不知何故,似乎ISO-8859-16 / latin10被遗漏了?我无法正确读取具有该编码的文件。我忽略了什么吗?如果没有,我可以以某种方式添加对这个字符编码的支持,以通过一个插件vim?

2 个答案:

答案 0 :(得分:1)

在Windows上,我的Vim版本使用+ iconv / dyn编译。根据Vim文档:

  

在MS-Windows上,可以使用+ iconv / dyn功能编译Vim。这个   意味着Vim将搜索“iconv.dll”和“libiconv.dll”   库。当他们两个都找不到时,Vim仍然有效   有些转换是不可能的。

来自这里的http://sourceforge.net/projects/gettext/files/libiconv-win32/ DLL的最新版本似乎对我有用。没有它我无法转换除iso-8859-1以外的大多数iso-8859编码。安装了iconv.dll后,我可以轻松地加载文件:

:e ++enc=iso-8859-16 file.txt

答案 1 :(得分:0)

如果Vim无法处理,您可以使用iconv工具转换为(例如)UTF-8:

$ iconv --from-code ISO-8859-16 --to-code UTF-8 -o outputfile inputfile