如何在vim中将\u7f51更改为公共字符?

如何在vim中将\u7f51更改为公共字符?,vim,encoding,utf-8,Vim,Encoding,Utf 8,在ruby中,因为它是在系统范围内进行utf-8编码的。所以这很简单: string=“\u7f51\u5740\u4e0d\u80fd\u4e3a\u7a7a” =>网址不能为空 有人能告诉我如何在vim中执行此操作吗?如果要插入Unicode字符,请参阅utf-8-typing帮助 例如,Ctrl-Vu7f51将插入网. 如果您希望在Vim脚本中使用它,可以使用与Ruby中相同的Unicode转义;命令echo“\u7f51\u5740\u4e0d\u80fd\u4e3a\u7a7a”将回显

在ruby中,因为它是在系统范围内进行utf-8编码的。所以这很简单:

string=“\u7f51\u5740\u4e0d\u80fd\u4e3a\u7a7a”

=>网址不能为空


有人能告诉我如何在vim中执行此操作吗?

如果要插入Unicode字符,请参阅
utf-8-typing
帮助

例如,Ctrl-V
u7f51
将插入网.

如果您希望在Vim脚本中使用它,可以使用与Ruby中相同的Unicode转义;命令
echo“\u7f51\u5740\u4e0d\u80fd\u4e3a\u7a7a”
将回显您在问题中提供的字符串

意识到这一点,Ctrl-R开始发挥作用,使用
=
寄存器;有关更多信息,请参阅
i\u Ctrl-R
i\u Ctrl-R=
的文档

给定以下条件,光标位于双引号字符串内:

string = "\u7f51\u5740\u4e0d\u80fd\u4e3a\u7a7a"
应用以下按键:ci“Ctrl-R=”Ctrl-R“entereESC

这将转变为以下内容:

string = "网址不能为空"

试着自己弄清楚它是如何工作的,但如果你弄不明白,我会解释更多。

谢谢!ctrl-v对我不起作用,echo命令可以!但我不知道如何从文件内容本身获取输入?并将编码字符输出到文件中。所以,你想在该格式的现有文本文件中转换它吗?哈您是否在Vim中设置了Ruby以便执行
:Ruby
?当然有,但我更喜欢Vim本机解决方案或Vim插件support@yozloy:okey dokey,中的正版解决方案。另请参见: