当我尝试使用诸如^Vu2611
之类的命令在vim中输入此Unicode字符:☑(U + 2611)时(这意味着按ctrl + V然后在中输入u2611插入模式),Vim不知何故将其分为两个字符:&
( 26)和^Q
(11)。
当我尝试插入诸如□(U + a1f5)之类的其他字符时,没有任何问题。
似乎Vim在读取了26
(代表字符'&')之后立即停止了解析。
那么,如何在Vim中插入这种Unicode字符(我试图将其粘贴到Vim中,这是行不通的)?
请帮忙!!!
最佳答案
为了处理Unicode字符,Vim必须使用能够表示这些字符的'encoding'
。如果使用latin1
的值,则无法对提到的字符进行编码(此8位编码仅包括ASCII和一些西欧字符,请参见here)。
所以,你需要
:set encoding=utf-8
这样,任何新创建的文件都将使用该编码,并且您应该能够插入Unicode字符并将其写入(也可以使用其他Unicode文件编码,例如
:w ++enc=ucs-2le
;但是,如果您尝试将其保留为:w ++enc=latin1
,则会得到CONVERSION ERROR
)。
关于vim - 如何在gvim中插入Unicode字符U + 2611,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28925380/