我的终端仿真器配置为Unicode字符编码,我的.vimrc包含该行
set encoding=utf-8
但是当我尝试将“café”这个词粘贴到vim中时,它就像“cafÔ一样。
我可以通过键入Ctrl-vu然后输入4个字符的代码点(00e9)在vim中创建一个“é”,但我希望能够粘贴它。
我的终端仿真器配置为Unicode字符编码,我的.vimrc包含该行
set encoding=utf-8
但是当我尝试将“café”这个词粘贴到vim中时,它就像“cafÔ一样。
我可以通过键入Ctrl-vu然后输入4个字符的代码点(00e9)在vim中创建一个“é”,但我希望能够粘贴它。
解决方案是取消选中Terminal.app设置的“高级”选项卡中的“Escape non-ASCII input”复选框。
xclip -o|xclip -i
解决方法(添加 -sel clip
用于剪贴板)。您可以使用vim的有向图功能将其添加到文件中,而不是从剪贴板复制字符并将其粘贴到文本编辑器中。
因此,使用默认设置,使用您的示例,您可以进入插入模式,然后按Control-k,然后键入e'。结果将是é。
您可以通过运行查看已定义的有向图列表
:有向图
并通过运行一般帮助
:帮助有向图
这也解释了如何自定义映射。
如果你真的设置粘贴字符,Shift-Insert一直对我有用。
如何在vi中键入非ASCII代码
您必须知道输入正确代码的编码是什么,我假设您将VI保留为默认值。
在VI中,进入插入模式,在插入模式下,按
Ctrl-v 172
那应该插入这里定义的逻辑非(侧向和反向L)字符: