LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
12
返回列表 发新帖
楼主: ilpleut

如何从 vi 中复制文本黏贴到网页上?

[复制链接]
发表于 2009-2-20 00:22:24 | 显示全部楼层
事实上,我这里也用不了那方法,没有装gvim

看看下面的
引自 http://liupingjing.blog.ubuntu.org.cn/?p=563

用vim这么久了,始终也不知道怎么在vim中使用系统粘贴板,通常要在网上复制一段代码都是先gedit打开文件,中键粘贴后关闭,然后再用 vim打开编辑,真的不爽;上次论坛上有人问到了怎么在vim中使用系统粘贴板,印象里回复很多,有好几页的回复却没有解决问题,今天实在受不了了又在网上找办法,竟意外地找到了,贴出来分享一下。

如果只是想使用系统粘贴板的话直接在输入模式按Shift+Inset就可以了,下面讲一下vim的粘贴板的基础知识,有兴趣的可以看看,应该会有所收获的。
vim帮助文档里与粘贴板有关的内容如下:

   1. vim有12个粘贴板,分别是0、1、2、...、9、a、“、+;用:reg命令可以查看各个粘贴板里的内容。在vim中简单用y只是复制到“(双引号)粘贴板里,同样用p粘贴的也是这个粘贴板里的内容;

   2. 要将vim的内容复制到某个粘贴板,需要退出编辑模式,进入正常模式后,选择要复制的内容,然后按"Ny完成复制,其中N为粘贴板号(注意是按一下双引号然后按粘贴板号最后按y),例如要把内容复制到粘贴板a,选中内容后按"ay就可以了,有两点需要说明一下:
          * “号粘贴板(临时粘贴板)比较特殊,直接按y就复制到这个粘贴板中了,直接按p就粘贴这个粘贴板中的内容;
          * +号粘贴板是系统粘贴板,用"+y将内容复制到该粘贴板后可以使用Ctrl+V将其粘贴到其他文档(如firefox、gedit)中,同理,要把在其他地方用Ctrl+C或右键复制的内容复制到vim中,需要在正常模式下按"+p;

   3. 要将vim某个粘贴板里的内容粘贴进来,需要退出编辑模式,在正常模式按"Np,其中N为粘贴板号,如上所述,可以按"5p将5号粘贴板里的内容粘贴进来,也可以按"+p将系统全局粘贴板里的内容粘贴进来。

[color="Red"]注意:在我这里,只有vim.gtk或vim.gnome才能使用系统全局粘贴板,默认的vim.basic看不到+号寄存器。
回复 支持 反对

使用道具 举报

发表于 2009-2-22 12:30:09 | 显示全部楼层
Post by kgnn;1949808
X下最简单的复制粘贴方法:
鼠标左键拖动选择文本,然后按鼠标中键粘贴文本
不过中键滚轮按得费力,可以启用左右键同时按下模拟中键


这是最简单的方法了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2009-2-26 19:25:51 | 显示全部楼层
Post by sharkke;1949896
这问题,我觉得还是楼主没有执行正确的命令
请注意,复制到剪贴板的命令是下面一行中完整的每一个字符
"+y
包括:一个双引号,一个加号,一个字符y


照做了, 没成功.
回复 支持 反对

使用道具 举报

发表于 2009-2-26 20:07:10 | 显示全部楼层
vi确实不能用,
要vim.gnome或者gvim才是可用的。
回复 支持 反对

使用道具 举报

发表于 2009-2-27 06:31:29 | 显示全部楼层
在terminal下用vim也可以。
刚测试过。
回复 支持 反对

使用道具 举报

发表于 2010-10-12 04:46:21 | 显示全部楼层

终于明白啦

Post by sharkke;1949896
这问题,我觉得还是楼主没有执行正确的命令
请注意,复制到剪贴板的命令是下面一行中完整的每一个字符
"+y
包括:一个双引号,一个加号,一个字符y


我一直都忘了按加号.以为是个连接符,我说怎么会事呢.
太谢谢你啦
回复 支持 反对

使用道具 举报

发表于 2010-10-12 13:46:06 | 显示全部楼层
成功了,确实是"+y
先按shift+’     (")
再按shift+=    (+)
再按y
回复 支持 反对

使用道具 举报

发表于 2010-10-13 16:41:13 | 显示全部楼层
Post by ilpleut;1948392
新手学了一下 vi, 知道复制方法有 yy, co 等方法。但 , 似乎这些都只能在 vi 内部使用. 我想把 vi 打开的 txt 文件的内容复制几行贴到 webmail 的输入框里面,该怎么做呢?


你的浏览器基于 X 剪贴板。所以要让 vi 支持,必须 vi 能够访问 X 剪贴板。

这里的问题是,某些 Linux 发行版的缺省 vi 没有编译进去 X 剪贴板支持。所以你没法用。

通常 gvim 的版本一定编译进了X剪贴板支持,而 命令行 的 vim,例如 debian/ubuntu 缺省就没有编译进 X 支持,所以就无法访问剪贴板。

如果你自行编译 vim 增加 x11 支持,或者你的发行版 vim 支持 x11 剪贴板,就可以使用  "+y 命令访问剪贴板。如果两者都没有,那你就只能用 gvim 访问剪贴板。
回复 支持 反对

使用道具 举报

发表于 2010-10-15 15:47:52 | 显示全部楼层
学习啦!!!!!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表