Windows 将功能从系统剪贴板粘贴到gVIM

Windows 将功能从系统剪贴板粘贴到gVIM,windows,vim,clipboard,Windows,Vim,Clipboard,以下是Windows系统剪贴板的内容 :函数CurrentLineLength :len=strlen(getline(“.”) :返回len :endfunction 我击中结肠,然后控制r 然后我按shift 8粘贴系统剪贴板的内容 我按了回车键,维姆带着 E488:尾随字符 我在那里看到一些^M字符,删除它们没有帮助。我确实知道我可以将函数粘贴到一个.vim文件中,并以这种方式读取它们,这样就不会造成严重后果,但当我通过一些vim脚本示例进行工作时,这将是一个很好的选择 函数的输入方式

以下是Windows系统剪贴板的内容

  • :函数CurrentLineLength
  • :len=strlen(getline(“.”)
  • :返回len
  • :endfunction
我击中结肠,然后控制r 然后我按shift 8粘贴系统剪贴板的内容

我按了回车键,维姆带着 E488:尾随字符

我在那里看到一些^M字符,删除它们没有帮助。我确实知道我可以将函数粘贴到一个.vim文件中,并以这种方式读取它们,这样就不会造成严重后果,但当我通过一些vim脚本示例进行工作时,这将是一个很好的选择

函数的输入方式是否有特殊之处,或者是否可以从系统剪贴板粘贴它们


谢谢

Vim在命令模式下的回车应该没有任何问题(这就是^M字符)。我猜您粘贴的代码中还有一些其他字符-如果您是从网页粘贴,这很可能是问题所在。尝试将剪贴板的内容放入一个文件中,看看它是否真的是您期望的内容(包括所有空白字符)。

Vim在命令模式下的回车应该不会有任何问题(这就是^M字符)。我猜您粘贴的代码中还有一些其他字符-如果您是从网页粘贴,这很可能是问题所在。尝试将剪贴板的内容放入一个文件中,看看它是否真的符合您的期望(包括所有空白字符)。

我不确定是否要将多行粘贴到命令模式,但您只需将函数放入寄存器并执行寄存器(与宏相同),就可以实现同样的效果

另外,Vim似乎不喜欢您粘贴的函数,我在下面做了一些更改。如果您将以下内容复制到系统剪贴板,然后在正常模式下按
@*
,则该操作正常

:function CurrentLineLength()
: let len = strlen(getline("."))
: return len
:endfunction

我不确定是否要将多行粘贴到命令模式,但只需将函数放入寄存器并执行寄存器(与宏相同),就可以实现同样的效果

另外,Vim似乎不喜欢您粘贴的函数,我在下面做了一些更改。如果您将以下内容复制到系统剪贴板,然后在正常模式下按
@*
,则该操作正常

:function CurrentLineLength()
: let len = strlen(getline("."))
: return len
:endfunction

我对剪贴板上的内容有一些基本问题。。。我最近感觉很紧张…我对剪贴板上的内容有一些基本的问题。。。我最近感觉很郁闷…是的,的确如此。。。可能是windows剪贴板中的某个问题进入了putty窗口。。。谢谢你,真的。。。可能是windows剪贴板中的某个问题进入了putty窗口。。。非常感谢