Vim";美国佬",;似乎不起作用

Vim";美国佬",;似乎不起作用,vim,yank,Vim,Yank,我对维姆还是个新手。今晚,我学习了“yank”命令,但当我尝试在MacVim中使用它时,它没有任何作用。无论是Y还是Y{motion}都不做任何事情。我尝试使用默认的.vimrc来排除任何奇怪的配置问题 谷歌fu让我失望了。这感觉像是个棘手的问题。我是否遗漏了一些明显的内容?它没有任何可见的功能—就像其他编辑器中的Ctrl-C(编辑/复制)一样。尝试在它之后使用p(粘贴)命令(这相当于Ctrl-V),将拖动的内容放入文档。拖动命令将文本拉入剪贴板。例如,yy简单地将当前行拖动到公共剪贴板中。您可

我对维姆还是个新手。今晚,我学习了“yank”命令,但当我尝试在MacVim中使用它时,它没有任何作用。无论是
Y
还是
Y{motion}
都不做任何事情。我尝试使用默认的
.vimrc
来排除任何奇怪的配置问题


谷歌fu让我失望了。这感觉像是个棘手的问题。我是否遗漏了一些明显的内容?

它没有任何可见的功能—就像其他编辑器中的Ctrl-C(编辑/复制)一样。尝试在它之后使用
p
(粘贴)命令(这相当于Ctrl-V),将拖动的内容放入文档。

拖动命令将文本拉入剪贴板。例如,
yy
简单地将当前行拖动到公共剪贴板中。您可以使用
p
“粘贴”剪贴板的内容。您还可以使用类似于
“ayw
的方法将文本从当前位置拉到单词末尾,然后拉入名为
a
的缓冲区。相应的put为
”ap

y
ank本身仅将该行复制到剪贴板-您需要将其粘贴到下一行或后退一行才能使用复制的行。如果你使用Ubuntu或Mint,那么也可以使用
d
elete.

,唯一对我有效的解决方案就是卸载vim并安装“vim gnome”软件包。然后添加行:

设置剪贴板=未命名加号


到my.vimrc的设置按预期工作。

如果在
.vimrc
中设置了
set clipboard=unnameplus
,则此设置将不起作用

对于OSX,您必须使用
set clipboard=unnamed

对于Linux,您可能需要使用
set clipboard=unnameplus

这是我个人
.vimrc

if system('uname -s') == "Darwin\n"
  set clipboard=unnamed "OSX
else
  set clipboard=unnamedplus "Linux
endif

是的,这就是我期望它能做的,但是当我尝试使用它时,它什么也做不了。我试图在正常模式下使用它。
Y
做什么?你是说
y
?@icedwater:
y
yy
的同义词。啊,谢谢@Amadan-我从来没有用过它,因为
yy
对我来说比按shift键快得多。很高兴知道。谢谢你问这个问题!这也快把我逼疯了。我一直试图从系统剪贴板粘贴哇,我是个白痴。我认为“yank”实际上删除了这条线并复制了它。真不敢相信我在这上面浪费了一个小时。谢谢@icedwater!没问题,在这种情况下,您将寻找
d
elete.@AdamRubin-如果您想剪切和粘贴而不是复制和粘贴,您可以跳过yank…
unnameplus
仅适用于Linux。OSX使用
unnamed
谢谢,在这里运行OSX,您的提示解决了这个问题。我想在Mac和Linux之间共享相同的
。vimrc
-是否可以在配置中添加一些
?好的,我找到了@VitalyZdanevich,是的,谢谢你的询问。我已经用我个人配置中的一个片段更新了答案。+1我正在使用i3和Vim,已经寻找了几个小时的解决方案,这解决了我的问题。我能够将过去从应用程序复制到Vim,并从Vim复制到其他Vim实例和终端,但不能从Vim复制到例如Chromium和其他应用程序。设置
clipboard=unnameplus
解决了此问题。幸运的是,我偶然发现了这个答案。尽管这是一个相对古老的答案:谢谢你,先生!现在我终于可以继续用键盘做所有的事情了,把鼠标放在一边:)谢谢你的回答。它解决了我的问题。我的
.vimrc
设置剪贴板=unnamedplus