如何将非ASCII字符粘贴到vim中?

时间:2010-11-15 15:11:14

标签: vim unicode encoding utf-8 character-encoding

我的终端模拟器配置为Unicode字符编码,而我的.vimrc包含行

set encoding=utf-8

但是当我尝试将“café”这个词粘贴到vim中时,它就像“café”一样。

我可以通过输入Ctrl-vu后跟4个字符的代码点(00e9)在vim中创建一个“é”,但我希望能够将其粘贴进去。

4 个答案:

答案 0 :(得分:12)

解决方案是取消选中Terminal.app设置的Advanced选项卡中的“Escape non-ASCII input”复选框。

答案 1 :(得分:1)

  1. 你想从哪里粘贴它?如果它是opera,那么因为opera-10.5 * paste在两个方向都被打破了。在粘贴任何内容之前,您需要使用xclip -o|xclip -i解决方法(为剪贴板添加-sel clip)。
  2. 您使用什么命令?

答案 2 :(得分:1)

您可以使用vim的有向图功能将其添加到文件中,而不是从剪贴板复制字符并将其粘贴到文本编辑器中。

因此,使用默认设置,使用您的示例,您可以进入插入模式,然后点击Control-k,然后输入e'。结果将是é。

您可以通过运行

查看已定义的有向图列表

:有向图

和运行

的一般帮助

:帮助digraph

还解释了如何自定义映射。

如果你真的设置粘贴字符,Shift-Insert一直对我有效。

答案 3 :(得分:1)

如何在vi中输入非ASCII代码

您必须知道输入正确代码的编码是什么,我假设您将VI保留为默认值。

在VI中,进入插入模式,在插入模式下,按

Ctrl-v 172

应插入此处定义的Logical Not(侧向和反向L)字符:

http://www.htmlhelp.com/reference/charset/iso160-191.html