分页: 1 / 1

vim中2行文本互换怎么做?

发表于 : 2009-07-06 16:18
www1862
如题,vim中2行文本互换怎么做?

Re: vim中2行文本互换怎么做?

发表于 : 2009-07-06 16:41
iblicf
dd p

Re: vim中2行文本互换怎么做?

发表于 : 2009-07-06 21:57
www1862
iblicf 写了:dd p
不能吧?
我是说有没有命令直接实现。比如先在某行打个标记,再到某行打个标记,最后1个命令就交换。

Re: vim中2行文本互换怎么做?

发表于 : 2009-07-06 22:21
sarrow
move +1 下移一行
move -1 上移一行
move 1 移动到行1

Re: vim中2行文本互换怎么做?

发表于 : 2009-07-09 12:42
hjjdebug
www1862 写了: 我是说有没有命令直接实现。比如先在某行打个标记,再到某行打个标记,最后1个命令就交换。
好像没有,除非自己写script 命令。
否则只能用命令序列,用寄存器拷贝,粘贴吧。

Re: vim中2行文本互换怎么做?

发表于 : 2009-07-10 7:17
HuaChong
难道你觉得dd p都烦了,那你可以自己map阿,
map <F3> ddp
这样一个键就搞定,lz够挑剔

Re: vim中2行文本互换怎么做?

发表于 : 2009-07-10 8:53
hjjdebug
lz 显然不是想交换相邻的两行,而是想交换不相邻的,例如由mark a, mark b标记的两行内容。
我也给一个map 吧, 假如你的要交换的内容用mark a, mark b 已经标记好
map <F3> 'addma'bpkdd'aP :em02

l

Re: vim中2行文本互换怎么做?

发表于 : 2009-07-10 8:56
eexpress
这样的事情,不可能通用的。只能自己写函数。

强制使用mark,也会冲掉其他信息的。