LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 1823|回复: 12

[solved]如何将vi与vi外以复制粘帖的方式互传内容

[复制链接]
发表于 2008-11-17 10:21:02 | 显示全部楼层 |阅读模式
例如:1.我现在有4行代码,我从firefox里选择Ctrl+c,然后怎样复制到vi里呢?我试过鼠标选择要复制的内容,然后鼠标在vi处中键,但是每一行都会有好多Tab,要是代码多,Tab累加,手动消除简直是受苦。有好办法吗?

2.我vi里有一个单词"must",我想复制,在vi里只要用v选好,然后y,粘帖时p就行。而现在我需要将选择的"must"复制到系统缓冲区,然后在firefox的发表新主题出用Ctrl+v复制。这个可以用鼠标中键的方法,很好用。不用苛刻的非要Ctrl+v。

现在主要问题在第一个。
发表于 2008-11-17 10:31:12 | 显示全部楼层
1. 先后按 "+p 三个键就能把X的剪贴板中的内容粘贴到vim中了。
2. 高亮后,先后按 "+y 三个键就能把内容复制到X的剪贴板中了。
回复 支持 反对

使用道具 举报

发表于 2008-11-17 10:56:42 | 显示全部楼层
Post by acevery;1909659
1. 先后按 "+p 三个键就能把X的剪贴板中的内容粘贴到vim中了。
2. 高亮后,先后按 "+y 三个键就能把内容复制到X的剪贴板中了。


学到新东西了,呵呵,不过准确的说,好像跟复制到X clipboard有区别,在gvim里面才能用。如果只是在terminal打开vim还是不行。
回复 支持 反对

使用道具 举报

发表于 2008-11-17 11:04:36 | 显示全部楼层
粘贴代码的时候它会给你自动 tab
粘贴之前使用 :set paste ,然后鼠标中键粘贴就可以了。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-17 11:23:43 | 显示全部楼层
谢谢小猫。
我从来没有用过gvim
回复 支持 反对

使用道具 举报

发表于 2008-11-17 13:17:34 | 显示全部楼层
Post by LaoLiulaoliu;1909654
例如:1.我现在有4行代码,我从firefox里选择Ctrl+c,然后怎样复制到vi里呢?我试过鼠标选择要复制的内容,然后鼠标在vi处中键,但是每一行都会有好多Tab,要是代码多,Tab累加,手动消除简直是受苦。有好办法吗?



在firefox中复制好后, 在 vi 里先
:set noautoindent
然后再粘贴
之后再
:set autoindent
即可
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-17 13:20:21 | 显示全部楼层
Post by snoleo;1909731
在firefox中复制好后, 在 vi 里先
:set noautoindent
然后再粘贴
之后再
:set autoindent
即可


谢谢,我会试的。
回复 支持 反对

使用道具 举报

发表于 2008-11-17 13:32:40 | 显示全部楼层
楼主,4楼是正解。 :set paste 可以搞定大多数你认为的粘贴问题。

事实上就算真的没有 :set paste 也没有什么问题呀,把代码段全选然后再按等于号就可以了。用vim写代码不用等于号?
回复 支持 反对

使用道具 举报

发表于 2008-11-17 14:10:21 | 显示全部楼层
强,这个东西我找了2年了,谢谢
还有一个小Tip分享一下:
set pastetoggle=<F11>
回复 支持 反对

使用道具 举报

 楼主| 发表于 2008-11-19 12:14:31 | 显示全部楼层
1。
wd_afei:粘贴之前使用 :set paste ,然后鼠标中键粘贴就可以了。
2.
snoleo:在firefox中复制好后, 在 vi 里先
:set noautoindent
然后再粘贴
之后再
:set autoindent
即可
两种方法都可以,谢谢。
m_sunhe:set pastetoggle=<F11>
然后回车,中键不行,你这个tip是干什么的?
回复 支持 反对

使用道具 举报

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

本版积分规则

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